Main Content

データ型の変換の概要

デジタル ハードウェア内では、数値は固定小数点または浮動小数点データ型として表します。これら両方のデータ型では、ワード サイズは特定のビット数に固定されています。固定小数点表現は、最終製品の電力消費、サイズ、メモリ使用量、速度、コストの面でメリットをもたらすことがよくあります。ただし、固定小数点値のダイナミック レンジは、同等のワード サイズの浮動小数点値よりはるかに小さくなります。したがって、オーバーフローまたは無効な量子化誤差を避けるためには、固定小数点値をスケーリングしなければなりません。

以下では、浮動小数点から固定小数点へのシステムでのデータ型の変換プロセスの概要を説明します。モデルでデータ型を組み込み効率の良い表現に変換すると、対象のハードウェアの設計をさらに最適化し、コードを生成して、コードをターゲットに展開できます。

  1. システム要件を特定する。

  2. 理想的なシステムをモデル化する。

  3. システムのデータ型を対象のハードウェアで効率的なデータ型に変換する。

  4. 変換されたシステムの数値動作を検証する。

  5. 変換されたシステムのパフォーマンスを検証する。対象のハードウェアに基づいてシステムのパフォーマンスを最適化します。

  6. コードを生成します。

  7. コードをハードウェアに展開する。

システムを固定小数点に変換する方法

Fixed-Point Designer™ ソフトウェアには、モデルでシステムの固定小数点データ型を自動的に指定する方法が 3 つあります。次の表は、浮動小数点システムを固定小数点データ型に変換する際に使用可能な方法についてまとめています。

方法説明
固定小数点ツール

固定小数点ツールはモデルにおける固定小数点データ型の指定を自動化するユーザー インターフェイスです。

  • 固定小数点の反復的変換ワークフロー — このツールではモデル オブジェクトの範囲データを収集します。これらの値に基づいて、ツールでは精度を最大化し範囲をカバーする固定小数点データ型を推奨します。その後、推奨されたデータ型を確認し、モデル内のオブジェクトに選択的に適用することができます。

  • 固定小数点の最適化された変換 — システム動作の許容誤差が既知の場合、固定小数点ツールで fxpopt を使用して、指定した許容範囲内におけるシステムの合計ビット幅 (語長の合計) を最小化するシステムに、最適なデータ型を検出できます。

例については、浮動小数点モデルから固定小数点モデルへの変換を参照してください。

DataTypeWorkflow.Converter

DataTypeWorkflow.Converter オブジェクトおよび関連付けられているオブジェクト関数は、固定小数点ツールの代わりに使用できるコマンド ライン ツールです。これらの関数は、固定小数点ツールと同じ機能を提供します。

例については、コマンド ラインを使用したモデルの固定小数点への変換を参照してください。

fxpopt

システム動作の許容誤差が既知の場合、コマンド ラインで関数 fxpopt を使用して、指定した許容範囲内でシステムの合計ビット幅 (語長の合計) が最小になるシステムに最適なデータ型を検索できます。

例については、システムの固定小数点データ型の最適化を参照してください。

システムを固定小数点に変換してから、固定小数点システムの動作が要件に一致することを検証します。詳細については、新しい設定の確認を参照してください。

対象のハードウェアに基づいてシステムのパフォーマンスを最適化します。たとえば、三角関数を同等の CORDIC 実装に置き換えるか、ルックアップ テーブル オプティマイザー アプリを使用してモデルの一部を組み込み効率の良いルックアップ テーブル実装に置き換えます。

関連するトピック