メインコンテンツ

addTypeSpecification

クラス: coder.FixPtConfig
名前空間: coder

固定小数点変換時の変数に対する固定小数点データ型を指定

構文

addTypeSpecification(fcnName,varName,numericType)

説明

addTypeSpecification(fcnName,varName,numericType) は、関数 fcnName の変数 varName に使用するデータ型を指定します。固定小数点変換プロセスでは、この情報を使用して、生成コードで使用する固定小数点データ型を判定します。

入力引数

すべて展開する

関数名。文字列で指定します。

データ型: string | char

変数名。string として指定します。

データ型: string | char

指定した変数に割り当てるデータ型。numerictype オブジェクトとして指定します。

すべて展開する

coder.FixPtConfig オブジェクト fixptcfg を既定の設定で作成します。

fixptcfg = coder.config("fixpt");

テスト ベンチの名前を設定します。この例では、テスト ベンチ関数名は dti_test です。

fixptcfg.TestBenchName = "dti_test";

この例では、MATLAB® 設計関数の名前は dti です。固定小数点変換で設計関数の変数 y に使用する数値型を指定します。

fixptcfg.addTypeSpecification("dti","y",numerictype(0,12,5));

固定小数点コードを生成します。

fiaccel -float2fixed fixptcfg dti;

固定小数点変換時の特殊な関数に対する固定小数点データ型を指定します。関数の特殊化の詳細については、特殊化 (HDL Coder)を参照してください。

関数 testFunc を開きます。

open("testFunc.m")

tmpFunc.png

testFunc には、2 つの異なる入力型をもつサブ関数 tmpFunc の呼び出しが複数含まれています。testFunc を固定小数点に変換すると、tmpFunc の 2 つの特殊化を含む固定小数点コードが作成されます。testFunc の固定小数点コードを生成するには、固定小数点構成オブジェクトを作成します。

cfg = coder.config("fixpt");
cfg.TestBenchName = ["testFunc_tb.m"];

固定小数点コードを生成します。

fiaccel -float2fixed cfg testFunc;

ファイル testFunc_fixpt を開き、生成された固定小数点コードを確認します。testFunc_fixpt で、tmpFunc の 2 つの特殊化に tmpFunc_s1 tmpFunc_s2 という別々の名前が付けられています。最初の特殊化 tmpFunc_s1 の動作は、tmpFunc での入力の定義に基づいて変数 b と変数 c で異なります。

tmpFuncFixpt1.png

tmpFunc の 1 つの特殊化 (たとえば tmpFunc_s2) にのみ割り当てるデータ型を指定するには、addTypeSpecification を使用して固定小数点構成オブジェクトにデータ型を追加します。

cfg.addTypeSpecification("tmpFunc_s2","out",numerictype(0,16,9));

固定小数点コードを再度生成します。

fiaccel -float2fixed cfg testFunc;

testFunc_fixpt を開き、tmpFunc_s2 の出力で返される数値型を確認します。

tmpFuncFixpt2.png