優れたコードプロパティ

コード効率の向上

出力ポートブロックのオーバーフローを示すプロットウィンドウ(左)

TargetLinkは、アプリケーションのタイプ(固定小数点または浮動小数点)に関わらず、組込みシステム向けの極めて効率的な量産コードを生成します。複数のスケーリングプロパティは、実行時間の短縮、演算精度の向上、オーバーフローの防止という相反する要件を満たすように固定小数点のコードを微調整するための豊富な選択肢を提供します。オーバーフローが発生すると、TargetLinkのオーバーフロー検出機能により、ブロック線図上の正確な位置が表示されます。問題はその場で修正できます。

変数のスケーリング

自動スケーリングを実行するためのダイアログ

時間を要し、ミスが起きやすい手作業によるスケーリングプロセスを短縮するため、TargetLinkでは自動スケーリングツールが提供されています。このツールにより、適切な範囲の検出と適正なスケーリングパラメータの計算が可能になります。従来、数日から数週間かかっていたスケーリング作業が、数分から数時間で済むようになります。

TargetLinkは、スケーリング手法として組込み制御アプリケーションで幅広く使われる2係数の線形スケーリングを提供しています。TargetLinkで固定小数点スケーリングを指定するためのプロパティには、以下が存在します。

  • データタイプ
  • 2のべき乗のスケーリング係数または任意のスケーリング係数
  • オフセット値
  • 制約値
  • ビットセーフティマージン
  • 飽和オプション

固定小数点スケーリングはソフトウェアエンジニアが手作業で行うこともできますが、ほとんどの場合はTargetLinkの自動スケーリングツールで対応できます。自動スケーリングには2つの手順が利用できます。

  • シミュレーションベースの自動スケーリング – 最高の計算精度が実現します
  • ワーストケース自動スケーリング – プラントモデルが不要で、オーバーフローを自動的に防止します

また、TargetLinkはスケーリング式やタイプ定義を使用したスケーリングもサポートしています。

高度な設定が可能なコード

Gainブロックの変数クラス仕様

TargetLinkコードは可読性が高く、役立つコメントを含んでいます。総合的な設定オプションにより、変数、関数、ファイル名命名などを完全に管理でき、構造を論理的かつ管理しやすくするためにコードやファイルを分割する柔軟性も備えています。

外部コードを統合できるように、TargetLinkはデバイスドライバ、その他Cまたはアセンブラで書かれた任意のルーチンとの容易なインターフェースを可能とするブロック線図レベルの幅広い指定オプションを備えています。XML設定ファイルやXSLスタイルシートを使用するなど、TargetLinkの柔軟なコード出力フォーマットにより、企業ごとに個別のプログラミングスタイルガイドを容易に適用することができます。

強力なコード最適化

TargetLinkは、最適化された手書きのコードと同じ位効率性に優れた高度に最適化されたANSI Cコードを生成します。これは、最新のCコンパイラでも使用されている標準的な最適化技術など、さまざまな最適化技術によって実現されています。

ブロック間最適化の例

TargetLinkのブロック間最適化機能は、あたかもソフトウェアエンジニアが作成したようなコードを生成します。これは、TargetLinkによるコードの統合方法が、経験豊富なソフトウェアエンジニアのそれと非常に近いからです。

より複雑なブロックの場合、TargetLinkはコード生成プロセス中に複数行のコードを内部コードパターンライブラリから取得し、複雑なブロックのコードの効率性も高めます。

最新の技術開発動向をつかんで、イノベーションを加速。

メールマガジンの購読希望・変更/配信停止手続き

Enable form call

At this point, an input form from Click Dimensions is integrated. This enables us to process your newsletter subscription. The form is currently hidden due to your privacy settings for our website.

External input form

By activating the input form, you consent to personal data being transmitted to Click Dimensions within the EU, in the USA, Canada or Australia. More on this in our privacy policy.