主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

高密度脂蛋白ブロックプロパティ:一般

概要

ブロック実装パラメーターにより,特定のブロック実装用に生成されたコードの詳細を制御できます。GUIまたはコマンドラインからブロック実装およびパラメーターを選択する方法については,HDLモデルモデルおよびブロックパラメーターパラメーターのとを参照してください。

プロパティ名は文字ベクトルとして指定します。プロパティ値のデータ型はプロパティに固有です。この節では,各ブロック実装パラメーターの構文およびパラメーターが生成コードに与える影響について説明します。

ライブラリブロックのHDLブロックプロパティ

ライブラリブロックのHDLブロックプロパティは,マスクパラメーターと同様に扱われます。モデルでライブラリブロックをインスタンス化する場合,そのライブラリブロックの現在のHDLブロックプロパティは,モデルのそのブロックのインスタンスにコピーされます。それらのインスタンスのHDLブロックプロパティは,ライブラリブロックのHDLブロックプロパティと同期していません。つまり,ライブラリブロックのHDLブロックプロパティを変更すると,この変更は仿真软件金宝app®モデルに既に追加されているライブラリブロックのインスタンスには伝播されません。ライブラリブロックのHDLブロックプロパティをモデル内のそのインスタンスと同期させる場合、子系统を作物成しから,このブロックをその子系统ライブラリ内ブロック内にあるブロックののブロックプロパティあるブロックのブロックブロックプロパティはのと内の対応するとししの対応するとししプロパティ

高密度脂蛋白アーキテクチャが模块に设定されている子系统ブロックがライブラリに含まれているとします。このブロックをモデルでインスタンス化する場合,ブロックのインスタンスはHDLアーキテクチャとして模块を使用します。ライブラリ内の子系统ブロックのHDLアーキテクチャを黑盒子に変更しても,モデル内のその子系统ブロックの既存のインスタンスは,高密度脂蛋白アーキテクチャとして模块を引き続き使用します。モデルでライブラリから子系统ブロックのインスタンスを追加すると,新しいブロックのインスタンスは,現在のHDLブロックプロパティのコピーを取得します。したがって,高密度脂蛋白アーキテクチャとして黑盒子を使用します。ライブラリ内の子系统ブロックブロックHDLアーキテクチャをモデルののインスタンスインスタンスと同させるせるは,必要なhdlアーキテクチャこのこの子系统内内含まれる,ラッパーサブシステムを作用成し。

AdaptivePipelining

AdaptivePipeliningサブシステムパラメーターにより,モデル内のサブシステムに適応パイプラインを設定できます。

适応パイプライン设定 说明
“继承”(既定の設定)

親サブシステムの適応パイプライン設定を使用します。このサブシステムが最上位のサブシステムの場合,モデルの適応パイプライン設定を使用します。

'在'

このサブシステムに適応パイプラインを挿入します。

“关闭”

親サブシステムで適応パイプラインが有効になっている場合でも,このサブシステムに適応パイプラインを挿入しません。

モデル内のサブシステムに対して適応パイプラインを無効にするには,そのサブシステムの適用パイプラインパラメーターAdaptivePipelining“关闭”に設定します。

モデルレベルの適応パイプラインの設定方法については,適応パイプラインを参照してください。

サブシステムに対する適応パイプラインの設定

(高密度脂蛋白ブロックプロパティ]ダイアログボックスからサブシステムの適応パイプラインを設定するには,次の手順に従います。

  1. サブシステムを右クリックして(高密度脂蛋白コード](高密度脂蛋白ブロックプロパティ]を选択します。

  2. (AdaptivePipelining)で,(继承)(上)または(关闭)を选択します。

コマンドラインからサブシステムの適応パイプラインを設定するには,hdlset_paramを使用します。たとえば,サブシステムmy_dutの適応パイプラインをオフにするには,次の手順に従います。

hdlset_param (“my_dut”“AdaptivePipelining”“关闭”
hdlset_paramも参照してください。

BalanceDelays

BalanceDelaysサブシステムパラメーターにより,モデル内のサブシステムの遅延の均衡化を設定できます。

BalanceDelaysの設定 说明
“继承”(既定の設定)

親サブシステムの遅延の均衡化の設定を使用します。このサブシステムが最上位のサブシステムの場合,モデルの遅延の均衡化の設定を使用します。

'在' サブシステムの遅延を均衡化します。
“关闭” 亲ても,ても,このませんはませもんませませんませませませんしませませませませませしませ

モデル内の任意のサブシステムの遅延の均衡化を無効にするには,モデルレベルの遅延の均衡化パラメーターBalanceDelays“关闭”に設定しなければなりません。遅延の均衡化がモデルで有効になっている場合、個々のサブシステムでの遅延の均衡化の設定は無視されます。

モデルレベルの遅延の均衡化の設定方法については,遅延の均衡化を参照してください。

サブシステムの遅延の均衡化の設定

(高密度脂蛋白ブロックプロパティ]ダイアログボックスを使用してサブシステムの遅延の均衡化を設定するには,以下のようにします。

  1. サブシステムを右クリックますます。

  2. (高密度脂蛋白コード](高密度脂蛋白ブロックプロパティ]を选択します。

  3. (BalanceDelays)(继承)(上)または(关闭)を选択します。

コマンドラインからサブシステムの遅延の均衡化を設定するには,hdlset_paramを使用します。たとえば,サブシステムmy_dutの遅延の均衡化を無効にするには,次のようにします。

hdlset_param (“my_dut”“BalanceDelays”“关闭”
hdlset_paramも参照してください。

ClockRatepipelining.

ClockRatepipelining.サブシステムパラメーターにより,モデル内のサブシステムのクロックレートパイプラインを設定できます。

クロックレートパイプラインの設定 说明
“继承”(既定の設定)

親サブシステムのクロックレートパイプライン設定を使用します。このサブシステムが最上位のサブシステムの場合,モデルのクロックレートパイプライン設定を使用します。

'在'

このサブシステムにクロックレートパイプラインを挿入します。

“关闭”

親サブシステムでクロックレートパイプラインが有効になっている場合でも,このサブシステムにクロックレートパイプラインを挿入しません。

モデル内のサブシステムのクロックレートパイプラインを無効にするには,そのサブシステムのクロックレートパイプラインパラメーター,ClockRatepipelining.“关闭”に設定します。

モデルモデルレベルのクロッククロックレートパイプラインを设定方法についてについて,クロックレートパイプラインを参照してください。

サブシステムのクロックレートパイプラインの設定

(高密度脂蛋白ブロックプロパティ]ダイアログボックスを使用してサブシステムのクロックレートパイプラインを設定するには,以下のようにします。

  1. サブシステムを右クリックますます。

  2. (高密度脂蛋白コード](高密度脂蛋白ブロックプロパティ]を选択します。

  3. [ClizeRatepipelining]で,(继承)(上)(关闭)のいずれかを選択します。

コマンドラインからサブシステムのクロックレートパイプラインを設定するには,hdlset_paramを使用します。たとえば,サブシステムmy_dutのクロックレートパイプラインをオフにするには,以下のようにします。

hdlset_param (“my_dut”“ClockRatePipelining”“关闭”
hdlset_paramも参照してください。

CodingStyle

多端口交换机ブロックを使用する場合,CodingStyleパラメーターを使用して,if - elseまたは案例ステートメントを含むHDLコードを生成するかどうかを指定します。既定では,高密度脂蛋白编码器™はif - elseステートメントを生成します。モデルに複数の多端口交换机ブロックが存在する場合,各ブロックで異なるCodingStyleを指定できます。

CodingStyleの設定 说明
“ifelse_stmt”既定値) Verilogコードでif - elseステートメントを生成するか,多端口交换机ブロックの硬件描述语言(VHDL)コードで什么时候ステートメントを生成します。
'case_stmt' Verilogコードで案例ステートメントを生成するか,多端口交换机ブロックの硬件描述语言(VHDL)コードで情况ステートメントを生成します。

多端口交换机ブロックのCodingStyleの設定

(高密度脂蛋白ブロックプロパティ]ダイアログボックスを使用して多端口交换机にCodingStyleを設定するには,次のようにします。

  1. 多端口交换机ブロックを右クリックします。

  2. (高密度脂蛋白コード](高密度脂蛋白ブロックプロパティ]を选択します。

  3. (CodingStyle)で,(ifelse_stmt)または(case_stmt)を选択します。

コマンドラインからサブシステムに指定したCodingStyleを確認するには,hdlget_paramたとえば,サブシステム内たとえば多端口交换机ブロックブロックに指定しした设定を确认するに,my_dutは次のようになります。

hdlget_param (“my_dut /多端口切换”“CodingStyle”
ans = ' case_stmt '
hdlset_paramも参照してください。

ConstmulliplierOptimization.

ConstmulliplierOptimization.実装パラメーターを使用すると,生成されるコードの係数乗算器演算の最適化に,正準型符号付き桁数(CSD)または因数分解されたCSDを使用することを指定できます。

次の表は,ConstmulliplierOptimization.パラメーターの値を説明しています。

ConstmulliplierOptimizationのの. 说明
'没有任何'
既定値)
既定では,高密度脂蛋白编码器はCSDとFCSDのいずれの最適化も実行しません。获得ブロック用に生成されたコードは乗算器の演算を維持します。
“CSD” このオプションを指定すると,生成されたコードは正準型符号付き桁数(CSD)手法を使用して,クロック速度を維持または増加しながらモデルで使用される面積を減少します。CSDは乗算器の演算を加算および減算演算で置換します。CSDでは2進数を最小限のカウントでゼロ以外の桁によって表現することで,定数乗算に必要な加算演算の数を最小に抑えます。
“FCSD” このオプションは,乗算器の演算を特定のオペランドの素因数のシフトおよび加算/減算演算で置換する,因数分解されたCSD (FCSD)手法を使用します。これらの因数は一般的には素因数ですが,面積の削減にとって有利となる2のべき乗に近い数値の場合もあります。このオプションを使用するとCSDよりも大幅に面積を削減できますが,クロック速度は低下します。
'汽车'

このオプションを選択すると,高密度脂蛋白编码器によって,CSDまたはFCSDの最適化が自動的に選択されます。必要な加算器の数に基づいて,最も面積効率の高い実装を得られる最適化が選択されます。'汽车'ををすると,csdまたはfcsd最最适适适化化化化化化演算てて,本品は乘算点の除いて,本品はいる。

ConstmulliplierOptimization.パラメーターは,次のブロックで使使用できでき。

  • 获得

  • Stateflow®图表

  • 真理表

  • MATLAB函数

  • MATLAB系统

ConstrainedOutputPipeline

ConstrainedOutputPipelineパラメーターパラメーターを使,ブロックブロック力に配置レジスタ非负非负ののを指定しししし

高密度脂蛋白编码器は,制約を満たすために設計内の既存の遅延を移動します。新しいレジスタは追加されません。制約を満たすにはレジスタが不足している場合は,出力レジスタの必要な数と実際の数の差がレポートされます。設計に遅延を追加するには,入力パイプラインまたは出力パイプラインを使用します。

制約付き出力パイプラインで指定したレジスタは,分散型パイプライン方式では再分布されません。

制约制约付き力パイプラインパイプラインパイプライン方法

GUIを使用してブロックの制約付き出力パイプラインを指定するには,以下のようにします。

  1. ブロックを右クリックし,(高密度脂蛋白コード](高密度脂蛋白ブロックプロパティ]を选択します。

  2. (ConstrainedOutputPipeline)に出力端子に配置するレジスタの数を入力します。

制約付き出力パイプラインを指定するには,コマンドラインに以下を入力します。

hdlset_param (path_to_block“ConstrainedOutputPipeline”number_of_output_registers)
たとえば,モデルmymodelのサブシステム中高の出力端子でレジスタを6つに制約するには,次のように入力します。
hdlset_param ('mymodel / subsys'“ConstrainedOutputPipeline”6)

参考

DistributedPipelining

DistributedPipeliningパラメーターにより,パイプラインレジスタの分布,つまりクリティカルパスを減らしてクロック速度を高めることができる速度の最適化が可能です。

次の表はDistributedPipeliningおよびOutputPipelineパラメーターが与える影響の説明です。

DistributedPipelining OutputPipeline, nStages 結果
“关闭”(既定の設定) 指定なし(第一个の既定値は0) パイプラインレジスタを挿入しません。
第一个> 0 本製品はサブシステム,MATLAB函数ブロックまたはStateflowチャートの出力で第一个個の出力レジスタを挿入します。
'在' 指定なし(第一个の既定値は0) パイプラインレジスタを挿入しません。
DistributedPipeliningは無効になります。
第一个> 0 本製品はクリティカルパスの解析に基づいて,サブシステム,MATLAB函数ブロックまたはStateflowチャート内に第一个个のレジスタを分布します。

分散型パイプライン方式で生成されたコードをさらに最適化するには,可能な場合はRTLの合成中にリタイミングを実行します。

ヒント

パイプラインレジスタを挿入した場合,最初は出力データが無効の状態になることがあります。初期の無効なサンプルによってテストベンチでエラーが発生しないように,これらのサンプルに対して出力チェックを無効にします。詳細については,出力データのチェックを無視(サンプル数)を参照してください。

参考

Dot下载188bet金宝搏ProductStrategy

設計での行列乗算に产品ブロックを使用する場合,Dot下载188bet金宝搏ProductStrategyをを使て,行程乘算をを装配。

次の表は,Dot下载188bet金宝搏ProductStrategyオプションのリストです。

Dot下载188bet金宝搏ProductStrategyの値 说明
完全平行的(既定の設定)

行列乗算演算を乗算器と加算器に拡張します。たとえば,2つの2 行 2 列の行列を乗算する場合、結果を計算するために 8 つの乗算器と 4 つの加算器が実装に使用されます。

メモ

本地浮点モードを使用する場合,(Dot下载188bet金宝搏ProductStrategy)完全平行的に設定しなければなりません。

'串行乘法积累'

Multiply-Accumulateブロックの[シリアル]アーキテクチャを使用して,行列乗算を実装します。

このアーキテクチャでは,クロックレートは,[並列]。

'并行乘法积累'

Multiply-Accumulateブロックの[並列]アーキテクチャを使用して,行列乗算を実装します。

DSPStyle

DSPStyleを使用すると,設計内で使用されている乗算器のマッピングの合成属性を含むコードを生成できます。特定のブロックの乗算器を,ハードウェア上でDSPとロジックのどちらにマッピングするかを選択できます。

赛灵思公司®のターゲットの場合,生成されたコードではuse_dsp.属性が使用されます。阿尔特拉®のターゲットの場合,生成されたコードではmultstyle属性が使用されます。

次の表は,DSPStyleオプションのリストです。

DSPStyleの値 说明
'没有任何'(既定の設定)

DSPマッピングの合成属性は插入さません。

'在'

ハードウェア内のDSPにマッピングすることを合成ツールに指示する合成属性が挿入されます。

“关闭”

ハードウェア内のロジックにマッピングことこと合成ツールに指示合成属性が插入されれれれれ

DSPStyleパラメーターは,次のブロックで使使用できでき。

  • 获得

  • 产品

  • (架构)が[树]に設定されている产品的元素

  • 子系统

  • 原子子系统

  • 不同的子系统

  • 启用子系统

  • 触发子系统

  • 模型([架构]がModelReferenceに設定されている場合)

階層のフラット化の動作

既定户外DSPStyleが設定されているサブシステムに階層のフラット化を指定した場合,高密度脂蛋白编码器はそのDSPStyleの設定を親サブシステムまで伝播します。

フラットにしたサブシステムに获得产品または产品的元素ブロックが含まれる場合,それらがもつ既定以外のDSPStyle設定は維持され,既定のDSPStyle設定は,フラットにしたサブシステムのDSPStyle設定に置換されます。

生成されたコード内合成属性

合成属性の生成コードは次に依存します。

  • ターゲット言語

  • DSPStyle

  • 合成霉素

次の表は,生成されたコードにおける合成属性の例を示しています。

DSPStyleの値 开发の値 SynthesisToolの値
“阿尔特拉第四的二世” “Xilinx ISE”
“Xilinx Vivado”
'没有任何' “Verilog”

Wire signed [32:0] m4_out1;

Wire signed [32:0] m4_out1;

硬件描述语言(VHDL)的

m4_out1:信号;

m4_out1:信号;

'在' “Verilog”

(* Multstleyle =“DSP”*)线路签名[32:0] M4_OUT1;

(* use_dsp =“是”*)线签名[32:0] m4_out1;

硬件描述语言(VHDL)的

属性multistyle:字符串;

M4_OUT1的属性MultiStyle:信号是“DSP”;

属性use_dsp: string;

属性use_dsp的m4_out1:信号是“yes”;

“关闭” “Verilog”

(* multistyle = "logic" *) wire signed [32:0] m4_out1;

(* USE_DSP =“NO”*)电线符号[32:0] m4_out1;

硬件描述语言(VHDL)的

属性multistyle:字符串;

m4_out1的multistyle属性:信号是“逻辑”;

属性use_dsp: string;

m4_out1的use_dsp属性:信号为“no”;

合成属性の指定の要件

合成霉素プロパティを使用して,合成ツールを指定しなければなりません。

合成属性属性方法

(高密度脂蛋白ブロックプロパティ]ダイアログボックスを使用して合成属性を指定するには,次の手順に従います。

  1. ブロックを右クリックします。

  2. (高密度脂蛋白コード](高密度脂蛋白ブロックプロパティ]を选択します。

  3. (DSPStyle)[オン][オフ]または[なし]を选択します。

コマンドラインから合成属性を指定するには,hdlset_paramを使用します。たとえば,モデルmy_modelがあり,DUTサブシステムmy_dutそこ使はれししししししはしははははは,获得ブロックmy_multiplierが含まれているとします。my_multiplierをDSPにマッピングするための合成属性を挿入するには,次のように入力します。

hdlset_param (“my_model / my_dut / my_multiplier”“DSPStyle”'在'
hdlset_paramも参照してください。

合成属性の指定の制限

  • 既定户外DSPStyleブロックプロパティを指定する場合,ConstmulliplierOptimization.プロパティは,'没有任何'に設定しなければなりません。

  • 乗算器コンポーネントへの入力にのデータ型は使使ん。

  • 获得定数は2のべき乗にはできません。

FlattenHierarchy

FlattenHierarchyにより,設計から生成されたHDLコードのサブシステム階層を削除できます。

FlattenHierarchyの設定 说明
“继承”(既定の設定) 親サブシステムの階層のフラット化の設定を使用します。このサブシステムが最上位のサブシステムである場合は,フラットにしません。
'在' このサブシステムをフラットにします。
“关闭” 親サブシステムをフラットにする場合でも,このサブシステムはフラットにしません。

また,階層をフラットにするには,MaskParameterAsGenericグローバルプロパティが“关闭”に設定されていなければなりません。詳細については,マスクされたサブシステムからのパラメーター化されたHDLコードの生成を参照してください。

階層をフラット化する方法

[HDLブロックプロパティ]ダイアログダイアログを使使使しフラットのフラットフラットフラット设定するははははは,次の手顺に。

  • [アプリ]タブで,(高密度脂蛋白编码器)を选択します。(高密度脂蛋白コード]タブが表示されます。子系统を選択し,(高密度脂蛋白ブロックプロパティ]をクリックします。[扁平主机](上)(关闭)または(继承)を选択します。

  • 子系统を右クリックし,(高密度脂蛋白コード](高密度脂蛋白ブロックプロパティ]を选択します。[扁平主机](上)(关闭)または(继承)を选択します。

コマンドラインから階層のフラット化を設定するには,hdlset_paramを使用します。たとえば,サブシステムmy_dutのの阶层のフラットを有效にするは,次のコマンドコマンド使使。

hdlset_param (“my_dut”'flattenhierarchy''在'
hdlset_paramも参照してください。

階層のフラット化の制限

サブシステムが次に該当する場合は,フラットにできません。

  • 同步子系统または国家控制ブロックを同步モードで使用する場合

  • モデル参照の実装。

  • トリガー信号をクロックとして使用が有効な場合の触发子系统

  • 次次のいずれかかを含むサブサブ

    • バス。

    • 列挙データ型。

    • 查找表ブロック:一维查找表二维查找表余弦HDL优化直接LookupTable(一天)prelookup.正弦HDL优化一天的查找表

    • MATLAB系统ブロック。

    • Stateflowブロック:图表状态转换表顺序查看器

    • パススルーおよびnop実装を使用するブロック。パススルー,没有HDL,カスケード実装を参照してください。

メモ

このオプションはコード生成の前にサブシステムの境界を除去します。完全にフラットな階層をもつHDLコードが生成されるとは限りません。

InputPipeline

InputPipeline。

次のコードは,モデル内の各总和ブロックに2ステージの深さの入力パイプラインを指定します。

sblocks = find_system(gcb, 'BlockType', 'Sum'); / /指定块类型for ii=1:length(sblocks),hdlset_param(sblocks{ii},'InputPipeline', 2),结束;

メモ

InputPipelineの設定は,入力端子を持たないブロックには影響を与えません。

パイプラインレジスタのコードを生成するときに,入力または出力パイプラインレジスタの名前に接尾辞文字列が付加されます。既定の接尾辞文字列は_pipeです。接尾辞文字列をカスタマイズするには,[コンフィギュレーションパラメーター]ダイアログボックスの[HDLコード生成]ペインにある[グローバル設定]/[一般)ペインの[パイプラインの接尾辞]あるいは,makehdlプロパティのPipelinePostfix.に目的の接尾辞を文字ベクトルとして渡すこともできます。例については,パイプラインの接尾辞を参照してください。

InstantiateFunctions

MATLAB函数ブロックでは,InstantiateFunctionsパラメーターを使用して各関数用の硬件描述语言(VHDL)®实体またはVerilog®模块を生成できます。高密度脂蛋白编码器は实体または模块ごとごとにコードをを别ファイル生成します。

MATLAB函数ブロックの[实例化文件]オプションを次の表に示します。

InstantiateFunctionsの設定 说明
“关闭”(既定の設定)

関数インラインのコードを生成します。

'在'

関数ごとに硬件描述语言(VHDL)实体またはVerilog模块を生成し,各模块または实体を別のファイルに保存します。

関数のインスタンス化可能なコードの生成方法

(高密度脂蛋白ブロックプロパティ]ダイアログボックスを使用して[实例化文件]パラメーターを設定するには,以下のようにします。

  1. MATLAB函数ブロックを右クリックします。

  2. (高密度脂蛋白コード](高密度脂蛋白ブロックプロパティ]を选択します。

  3. InstantiateFunctionsには(上)を选択します。

コマンドラインから[实例化文件]パラメーターを設定するには,hdlset_paramを使用します。たとえば,DUT サブシステムmyDUT内のMATLAB函数ブロックmyMatlabFcnで関数のインスタンス化可能なコードを生成するには,次のように入力します。

hdlset_param(“my_DUT / my_MATLABFcnBlk”、“InstantiateFunctions”,“上”)

特定の関数にインラインコードを生成

特定の関数についてのみインスタンス化可能なコードを生成し,その他の関数については生成しない場合は,このオプションを有効にして関数に対してインスタンス化可能なコードを生成し,coder.inlineを使用します。詳細は,coder.inlineを参照してください。

关关についてについてインスタンスインスタンスインスタンスインスタンス能コード生成に关键词

このこのでは,次の场合成にコード生成され。

  • 関数呼び出しが条件付きコードまたはループの内部にある。

  • いずれかの関数が,非定数の塑造入力で呼び出されている。

  • 関数に永続変数などのステートがあり,複数回呼び出されている。

  • 設計関数のどこかに列挙がある。

实例主义者

[级联]アーキテクチャの場合,(InstantiateStages)パラメーターを使用して,硬件描述语言(VHDL)实体またはVerilog模块を各計算段階で生成できます。高密度脂蛋白编码器は那個別のファイルで各实体または模块を生成します。

InstantiateStagesの設定 说明
“关闭”(既定の設定)

1つの硬件描述语言(VHDL)实体またはVerilog模块ににカスケードの段をを生しししし

'在'

カスケードの段ごとに硬件描述语言(VHDL)实体またはVerilog模块を生成し,各模块または实体を個別のファイルに保存します。

LoopOptimization

LoopOptimizationを使用すると,MATLAB函数ブロックから生成されたコード内でループのストリームまたは展開が可能になります。ループストリーミングは面積を最適化し,ループ展開は速度を最適化します。

メモ

MATLAB函数ブロックのMATLAB Datapath公司アーキテクチャを指定する場合,実行できるのはループの展開のみです。ループのストリームを実行するために,(StreamingFactor)を指定することでストリーミングの最適化を使用できます。MATLAB DataPathアーキテクチャアーキテクチャ使を使た,Matlab功能ブロックブロックを越えたHDL最致を参照してください。

LoopOptimizationの设定 说明
'没有任何'(既定の設定) ループループを最适最适しませ
“展开” ループを展開します。
“流” ループをストリームします。

ループ用のMATLAB函数ブロックの最適化方法

(高密度脂蛋白ブロックプロパティ]ダイアログボックスを使用してループの最適化を選択するには,次の手順に従います。

  1. MATLAB函数ブロックを右クリックします。

  2. (高密度脂蛋白コード](高密度脂蛋白ブロックプロパティ]を选択します。

  3. (LoopOptimization)[没有任何](展开)または(流)を选択します。

コマンドラインからループの最適化を選択するには,hdlset_paramを使用します。たとえば,MATLAB函数ブロックmy_mlfnのループストリーミングを有效にするには,次をを力し。

hdlset_param (“my_mlfn”'loopoptimization'“流”
hdlset_paramも参照してください。

MATLAB函数ブロックのループ最適化の制限

以下の综合,HDL编码器ははループををストリームませませませませませませ

  • ループのインデックスがカウントダウンされる場合。ループのインデックスは,各反復で1ずつ増加しなければなりません。

  • 別のループの階層の同じレベルで複数のループが入れ子になっている場合。

  • 特定の永続変数がループの内部と外部の両方で更新される場合。

HDL编码器は,永続销量が以ののににをストリームますますます。

  • ループの内部で更新され,ループの外部で読み取られる場合。

  • ループの内部で読み取られ,ループの外部で更新される場合。

LUTRegisterResetType

LUTRegisterResetTypeブロックパラメーターを使使て,fpgaのrom构造构造lutををようにますにを制御ますます。

LUTRegisterResetTypeの値 说明
默认的

附近地区出力レジスタに既定のリセットロジックがあります。高密度脂蛋白を生成するときに附近地区がレジスタとして合成されます。

没有一个

附近地区出力レジスタにリセットロジックがありません。高密度脂蛋白を生成するときに附近地区が罗として合成されます。

LUTRegisterResetTypeは次のブロックに対して指定できます。

  • 伽马校正

  • 查找表

NCO HDL优化ブロックブロックはこのパラメーターパラメーターを无视しし

MapPersistentVarsToRAM

MapPersistentVarsToRAM実装パラメーターにより,MATLAB函数ブロックの永続配列用に,レジスタへマッピングする代わりにRAMベースのマッピングを使用できます。

mappersistentvarstoramの设定 マッピングの動作

永続配列は生成されたHDLコード内でレジスタにマッピングされます。

永続配列変数はRAMにマッピングされます。制限事項は,RAMマッピングの制限を参照してください。

RAMマッピングの制限

RAMマッピングを有象にした合书,次の条件がすべて満たさたに,永続配列配列ユーザー定义system™™ののプロパティブロックramににさブロックブロック。

  • それぞれの読み取りまたは書き込みアクセス権限が,単一の要素のみを対象としている。たとえば,部分行列のアクセスおよび配列のコピーはできません。

  • アドレスの计算ロジックない依存依存しない。たとえば,配列から読み取らたデータデータしたまたは书籍

  • 永続変数またはユーザー定義系统对象のプライベートプロパティに循環依存がある場合,0に初期化される。たとえば2つの永続変数とBがある場合,Aがに依存し,Bがに依存していれば循環依存があります。

  • アクセスが条件付きステートメント内の場合,条件付きステートメントは簡単な論理式(&&||)または関係演算子のみを使用している。たとえば,次のコードのr1はRAMにマッピングされません。

    if(mod(i,2)> 0)a = r1(u);Else r1(i) = u;结尾

    関数を呼び出す条件などの複雑な条件は,それらを一時変数へ代入し,その一時変数を条件付きステートメント内で使用するように書き換えます。たとえば,r1をramにマッピングするに,前述前述のコードを次のようにき换えき换えき换え

    temp = mod(我,2);If (temp > 0) a = r1(u);Else r1(i) = u;结尾

  • 永続配列またはユーザー定義系统对象のプライベートプロパティの値が外部入力に依存している。

    たとえば,次のコードではbigarrayに依存していないため,RAMにマッピングされません。

    函数z = foo(u) persistent CNT bigarray if isempty(CNT) CNT = fi(0,1,16,10,hdlfimath);bigarray = uint8 (0 (1024 1));End z = u + cnt;idx = uint8(问);temp = bigarray (idx + 1);Cnt (:) = Cnt + fi(1,1,16,0,hdlfimath) + temp;bigarray (idx + 1) = idx;

  • RAMSizeRAMMappingThresholdの値以上である。RAMSizeは,NumElements * WordLength * Complexityの積です。

    • NumElementsは配列内の要素数です。

    • WordLength.は,配列のデータ型を表すビット数です。

    • 复杂性は,基本データ型が複素数である配列の場合2,それ以外では1です。

上記の条件のいずれかが満たされていない場合,永続配列またはユーザー定義系统对象のプライベートプロパティは,高密度脂蛋白コード内のレジスタにマップされます。

RAMMappingThreshold

RAMMappingThreshold256年の既定値はです。このしきい値を変更するにはhdlset_paramを使用します。たとえば,次のコマンドはsfir_fixedモデルのマッピングのしきい値を128ビットに変更します。

hdlset_param (“sfir_fixed”'rammapkthreshold', 128);

Ramマッピングのしきい値は[コンフィギュレーションパラメーター]ダイアログボックスで変更することできます。RAMマッピングのパラメーターの”RAMマッピングのしきい値(ビット)“を参照してください。

MATLAB函数ブロック内で永続配列のををramににマッピング方法をを明した例については,MATLAB函数ブロックを使用したRAMマッピングを参照してください。

OutputPipeline

OutputPipelineにより,選択されたブロックに対して出力パイプラインをもつ実装を指定できます。パラメーター値は,生成されたコードの出力パイプラインステージ数(パイプラインの深さ)を指定します。

次のコードは,モデル内の各各各に2ステージの深さのパイプラインを指定します。

sblocks = find_system(gcb, 'BlockType', 'Sum'); / /指定块类型for ii=1:length(sblocks),hdlset_param(sblocks{ii},'OutputPipeline', 2),结束;

メモ

OutputPipelineの設定は,出力端子を持たないブロックには影響を与えません。

パイプラインレジスタのコードを生成するときに,入力または出力パイプラインレジスタの名前に接尾辞文字列が付加されます。既定の接尾辞文字列は_pipeです。接尾辞文字列をカスタマイズするには,[コンフィギュレーションパラメーター]ダイアログボックスの[HDLコード生成],[グローバル设定],[一道]タブの[パイプラインの接尾辞]オプションオプション使使。代わり代わり,makehdlPipelinePostfix.プロパティを使用することもできます。例については,パイプラインの接尾辞を参照してください。

MATLAB函数ブロックの分散型パイプライン挿入も参照してください。

RAMDirective

RAMDirectiveにより,金宝appSimulinkモデルのramブロックを分类ram,ブロックramまたはutraramメモリにするかどうかをできます。この设定の値选択するととますます。HDL编码器はHDLコードのramstyle属性を生成します。このこの属性,设计のramブロック推定するするに合成ツールするramメモリメモリ単位のタイプ指定しししししし

RAMDirective値 说明
没有一个(既定の設定)

高密度脂蛋白コードでramstyle属性属性生成しん。合成ツール,モデルのramブロックをマッピングためにされるramのタイプをれるれるます。

分散式

モデルのRAMブロックを分散RAMにマッピングするためにHDL属性を生成します。分散RAMは附近地区で構築されます。これらのRAMは高速ですが,FPGAの多数の附近地区スライスを占有します。

次の硬件描述语言(VHDL)コードは,ramstyle属性が分散式に設定されていることを示します。

属性ram_style:字符串;属性ram_style的ram:信号是“分布式的”;

次のVerilogコードは,ramstyle属性が分散式に設定されていることを示します。

(* ram_style =“分布式”*)

堵塞

モデルのRAMブロックをブロックRAMにマッピングするためにHDL属性を生成します。ブロックRAMは,FPGAデバイス上の専用メモリ単位です。使用可能なブロックRAMの数は,高密度脂蛋白コードの展開先であるFPGAデバイスによって異なります。ブロックRAMのサイズは,4KB.8 kb16 kbおよび32 kbです。

RAMブロックをブロックRAMにマッピングするには,次のようにします。

  • 合成ツールを指定する。ブロックRAM リソースを含む Xilinx デバイスをターゲットとしなければなりません。

    メモ

    ターゲットデバイスにブロックRAMが含まれない場合,合成ツールはこの属性を無視し,RAMを分散RAMまたは附近地区スライスとして推定する場合があります。

  • ターゲット周波数に0より大きい値を入力する。

次の硬件描述语言(VHDL)コードは,ramstyle属性が堵塞に設定されていることを示します。

属性ram_style:字符串;属性ram_style的ram:信号是“块”;

次のVerilogコードは,ramstyle属性が堵塞に設定されていることを示します。

(* ram_style = "block" *)

极端主义者

モデルのRAMブロックをUltraRAMメモリにマッピングするためにHDL属性を生成します。UltraRAMは,ターゲットFPGA上の専用メモリブロックです。使用可能なUltraRAMメモリ単位の数は,高密度脂蛋白コードの展開先であるFPGAデバイスによって異なります。UltraRAM単位はブロックRAMより大きくなければならず,500 mbと同じ大きさのサイズを指定できます。

RAMブロックブロックUltraRAMににマッピングするに,次次のようにし

  • 合成牌Xilinx Vivado®を指定する。Virtex®UltraScale +™などのUltraRAMリソースを含むXilinxデバイスをターゲットにしなければなりません。

    メモ

    ターゲットデバイスにUltraRAMメモリが含まれない場合,合成ツールはこの属性を無視し,RAMを分散RAMまたは附近地区スライスとして推定する場合があります。RAMブロックをブロックRAMに代わりにマッピングするには,[ramdirecective]堵塞に設定します。

  • ターゲット周波数に0より大きい値を入力する。

  • 設計のRAMブロックは,固定読み取り動作に従わなければならず,単一のクロックインターフェイスがなければなりません。(高密度脂蛋白公羊)ライブラリでは,双端口RAMブロックと双速率双端口RAMブロックを除く,その他すべてのRAMブロックをUltraRAMにマッピングできます。

  • RAMブロックを指定された初期値にすることはできません。单端口RAM系统などのRAM系统ブロックを使用する場合,[指定RAM初始值]0.に指定しなければません。デバイスのリセット时に,UthraM内のすべての位置はゼロににされます。

次の硬件描述语言(VHDL)コードは,ramstyle属性が极端主义者に設定されていることを示します。

属性ram_style:字符串;属性ram_style的ram:信号是"ultra";

次のVerilogコードは,ramstyle属性が极端主义者に設定されていることを示します。

(* ram_style = "ultra" *)

Ramブロックブロックramdirectiveのの

(高密度脂蛋白公羊)ライブラリでは,双速率双端口RAMを除く,その他すべてのRAMブロックにRAMDirectiveプロパティを指定できます。

[HDLブロックプロパティ]ダイアログダイアログでramブロックに対してRAMDirectiveを設定するには,次を行います。

  1. RAMブロックを右クリックします。

  2. (高密度脂蛋白コード](高密度脂蛋白ブロックプロパティ]を选択します。

  3. [ramdirecective]で,[没有任何](分布式)(块)または(超)を选択します。

    メモ

    ブロックに固定読み取り動作がないため,双端口RAMブロックには,极端主义者RAMDirectiveとして指定できません。

コマンドラインでブロックに対するRAMDirectiveを設定するには,hdlset_paramたとえば,サブシステム内たとえば单独的端口内存ブロックのRAMDirective极端主义者に設定するには,my_dutは次のようになります。

hdlset_param (“my_dut /单端口内存”“RAMDirective”'极端主义者');
hdlset_paramも参照してください。

ResetType.

ResetType.ブロックパラメーターを使用して,リセットロジックの生成を抑制します。

ResetTypeの値 说明
默认的

リセットロジックを生成します。

没有一个

リセットロジックを生成しません。

生成されたレジスタにリセットは適用されません。したがって,レジスタが完全に読み込まれていない場合、初期段階のいくつかのサンプルで Simulink と生成されたコードとの間に不一致が発生します。

初期段階におけるテストベンチのエラーを回避するには,レジスタを完全に読み込むために必要なサンプル数を確認してください。次に,(出力データのチェックを無視(サンプル数))オプションを適宜設定します。テストベンチのスティミュラスおよび出力のパラメーター(出力データのチェックを無視(サンプル数))も参照してください。

ResetType.は次のブロックに対して指定できます。

  • 图表

  • 卷积Deinterleaver

  • 卷积的分界

  • 延迟

  • 延迟(DSP系统工具箱™)

  • 一般多路复用Deinterleaver

  • 一般多路复用交织器

  • MATLAB函数

  • MATLAB系统

  • 记忆

  • 利用延迟

  • 真理表

  • 单位延迟启用

  • 单位延迟

MATLAB功能ブロックブロック内の最适最适のためのリセット

MATLAB函数ブロックの(ResetType)[没有任何]に設定すると,高密度脂蛋白编码器はMATLAB®コードにある永続変数のリセットロジックを生成しません。

しかし,このブロックに対して他の最適化を指定すると,リセットロジックを使用するレジスタが挿入される場合があります。これらのレジスタに対するリセットロジックの生成は抑制されません。したがって,(ResetType)[没有任何]に設定したうえで他のブロック最適化も加えて設定すると,生成されたコードでは最上位にリセット端子が存在する場合もあります。

リセットロジック生成の抑制方法

UIを使用してブロックのリセットロジックの生成を抑制するには,次の手順に従います。

  1. ブロックを右クリックし,(高密度脂蛋白コード](高密度脂蛋白ブロックプロパティ]を选択します。

  2. (ResetType)[没有任何]を选択します。

リセットロジックの生成を抑制するには,コマンドラインで次のように入力します。

hdlset_param(path_to_block,'resettype','none')

たとえば,サブシステムmySubsys内の单位延迟ブロックUnitDelay1のリセットロジックの生成を抑制するには,コマンドラインで次を入力します。

hdlset_param('mysubsys / unitdelay1','resettype','none');

同期リセットまたは非同期リセットの指定

同期または非同期リセットを指定するには,ResetType.のモデルレベルのパラメーターを使用します。詳細については,リセット設定とパラメーターの”リセットタイプ“を参照してください。

SerialPartition

このパラメーターを最小/最大ブロックで使用して,シリアルカスケードアーキテクチャに対してパーティションを指定します。既定の設定では最小限の数のパーティションを使用します。

生成する
アーキテクチャ
SerialPartitionのの.
明示的に指定された分割化を伴うカスケードシリアル (p1 p2 p3…pN)N個の整数のベクトル。ここでNはシリアルパーティションの数です。ベクトルの各要素は対応するパーティションの長さを指定します。ベクトルの要素の合計数は入力データベクトルの長さに等しくなければなりません。ベクトル要素の値は降順でなければなりません。ただし,最後の2つの要素が等しくなることは可能です。たとえば8つの要素の入力では,3 [5]または(4 2 2)のパーティションは有条ですが,[2 2 2 2]または(3 2 3)のパーティションはコード生成时にエラーを生长させます。
自动ににされた化 0.

このプロパティも,シリアルフィルターアーキテクチャで使用します。过滤器ブロックの構成方法の詳細は,SerialPartitionを参照してください。

SharingFactor.

SharingFactor.を使用して,単一の共有リソースにマップする,機能的に同等なリソースの数を指定します。既定値は0です。リソース共有を参照してください。

SOFTRESET.

SOFTRESET.ブロックパラメーターを使用して,ハードウェア親和型の同期リセットロジックを生成するか,仿真金宝app软件のシミュレーション動作に一致するローカルリセットロジックを生成するかを指定します。このプロパティは,单位延迟可重调ブロックまたは单位延迟启用可复位ブロックで使用できます。

SoftResetの値 说明
(既定の設定)

金宝app仿真软件のシミュレーション動作に一致するローカルリセットロジックを生成します。

ブロックの同期リセットロジックを生成します。このオプションを選択すると,効率よく合成できるコードが生成されますが,金宝app仿真软件のシミュレーション動作とは一致しません。

SOFTRESET.“关闭”に設定すると,单位延迟可重调ブロックに次のコードが生成されます。

always @(posedge clk或posedge reset) begin: Unit_Delay_Resettable_process if (reset == 1'b1) begin Unit_Delay_Resettable_zero_delay <= 1'b1;Unit_Delay_Resettable_switch_delay < = 2 'b00;end else begin if (enb) begin Unit_Delay_Resettable_zero_delay <= 1'b0;if (UDR_reset == 1'b1) begin Unit_Delay_Resettable_switch_delay <= 2'b00;end else begin Unit_Delay_Resettable_switch_delay <= In1;Unit_Delay_Resettable_1 = (UDR_reset || Unit_Delay_Resettable_zero_delay ?1 'b1: 1 'b0);assign out0 = (Unit_Delay_Resettable_1 == 1'b1 ?2 'b00: Unit_Delay_Resettable_switch_delay);

SOFTRESET.'在'に設定すると,单位延迟可重调ブロックに次のコードが生成されます。

always @(posedge clk或posedge reset) begin: Unit_Delay_Resettable_process if (reset == 1'b1) begin Unit_Delay_Resettable_reg <= 2'b00;end else begin if (enb) begin if (UDR_reset != 1'b0) begin Unit_Delay_Resettable_reg <= 2'b00;end else begin Unit_Delay_Resettable_reg <= In1;分配out0 = Unit_Delay_Resettable_reg;

StreamingFactor

シリアルデータパスの時間多重化およびハードウェアリソースの共有により,シリアルのスカラーデータパスに変換するパラレルデータパス,つまりベクトルの数を指定します。既定値は0であり,パラレルデータパスがそのまま実装されます。ストリーミングも参照してください。

UsePipelines

このモードは,モードと互惠モードの产品ブロックで使用できます。ブロックのHDL アーキテクチャをShiftAddに設定すると,このプロパティが使用できるようになります。このアーキテクチャは,商を計算するために複数のシフト演算および加算演算を実行する,非回復除算アルゴリズムを使用します。ShiftAddアーキテクチャでは,ニュートン・ラフソンの近似法と比較して精度が向上しています。

ShiftAddアーキテクチャアーキテクチャ使用する合成,UsePipelines実装パラメーターを使用して,非回復除算のパイプライン化実装または非パイプライン化実装を使用するかどうかを指定できます。

UsePipelines設定 マッピングの動作

(既定の設定)

ブロックと互惠�の数は,アルゴリズムが商またはまたはに必要とする反复反复ににししししし。

ブロックと互惠ブロックの非回復シフト演算および加算演算の非パイプライン化実装を使用します。この設定により,遅延が設計に追加されることはありません。除算および逆数はリソース集約的な演算であるため,ターゲットFPGAでクロック周波数をさらに高くするには(UsePipelines)に設定します。

除ブロックと互惠ブロックのUsePipelinesの設定

(高密度脂蛋白ブロックプロパティ]ダイアログボックスからサブシステムのUsePipelinesを设定するには,次の手顺に従い。

  1. サブシステムを右クリックますます。

  2. (高密度脂蛋白コード](高密度脂蛋白ブロックプロパティ]を选択します。

  3. (UsePipelines)で,(上)または(关闭)を选択します。

コマンドラインでブロックに対するUsePipelinesを設定するには,hdlset_paramたとえば,サブシステム内たとえばブロックのUsePipelinesをオフにするには,my_dutは次のようになります。

hdlset_param (“my_dut /鸿沟”“UsePipelines”“关闭”);
hdlset_paramも参照してください。

UseRAM

UseRAM包装パラメーターにより,ブロックブロックをシフトレジスタにマッピングする代わりにににににににをををでき

UseRAMの設定 マッピングの動作

遅延は,一例を除いて,生成されたHDLコード内のシフトレジスタにマッピングされます。詳細は,ストリーミングおよび分散型パイプライン方式の影響を参照してください。

以以の条件真真の合书,遅延はデュアルポートramブロックにマッピングさます。

  • 遅延の初期値がゼロである。

  • 延迟ブロックの外部リセットもしくはイネーブル子を持たない。

  • [遅延の長さ]が4より大きい。

  • 遅延がが下の数码とデータ型属性セットのか​​かをもつ。

    • (一)浮動小数点ではないデータ型(符号付きの整数,符号なしの整数,固定小数点または布尔など)をもつ実数スカラー

    • (b)浮動小数点ではないデータ型を使用する実数部および虚数部をもつ複素数スカラー

    • (c)各要素が上记(a)または(b)ののかのベクトル

  • RAMSizeRAMMappingThresholdの値以上である。RAMSizeは,DelayLength * WordLength * ComplexLengthの積です。

    • DelayLengthは,延迟ブロックで指定される遅延数です。

    • WordLength.は,遅延のデータ型を表す表す数号。

    • ComplexLengthは,复素信号では2,それそれ外では1です。

いずれかの条件が偽の場合,遅延は他の遅延とマージして単一RAMにマッピングされない限り,高密度脂蛋白コード内のシフトレジスタにマッピングされます。詳細は,复数の遅延のramへのマッピングを参照してください。

この実装パラメーターは模金宝app型离散ライブラリの延迟ブロックおよびDSP系统工具箱信号操作ライブラリの延迟(DSP系统工具箱)ブロックで利用できます。

复数の遅延のramへのマッピング

高密度脂蛋白编码器では,同じ長さの複数の遅延を1つの遅延にマージしてから,単一のRAMにマップすることもできます。この最適化により以下の利点が得られます。

  • 単一RAM上の占有領域の増加

  • 同一HDLコードのの重复を小にする,アドレス生成ロジックの共有

  • ”“個別の遅延がしきい値を満たさない場合の遅延のRAMへのマッピング

以下の規則により複数の遅延を1つの遅延にマージできるかどうかが制御されます。

  • 遅延は以下を満たさなければなりません。

    • サブシステムの阶层で同じレベルにある。

    • 同一のコンパイルされたサンプル時間を使用する。

    • UseRAMに設定されているか,ストリームまたはリソース共有によって生成される。

    • ResetType.の设定が同じで,没有一个以外に設定されている。

  • マージされた遅延の合計語長が128ビットを超えない。

  • マージされた遅延のRAMSizeRAMMappingThresholdの値以上である。RAMSizeは,DelayLength * WordLength * VectorLength * ComplexLengthの積です。

    • DelayLengthは,遅延の合計数です。

    • WordLength.は,マージされた遅延のデータ型を表すビット数です。

    • VectorLengthは1つのベクトル遅延がもつ要素数です。VectorLengthは,スカラー遅延の場合は1です。

    • ComplexLengthは,複素遅延では2,それ以外では1です。

复数の遅延をramにマップする例

次のモデルのRAMMappingThresholdは100ビットです。

延迟およびDelay1ブロックは以下の条件を満たすことで,マージされ,生成されたHDLコード内のデュアルポートRAMにマッピングされます。

  • 両方の遅延ブロックが以下のとおりである。

    • 階層内で同じレベルにある。

    • 同一のコンパイルされたサンプル時間を使用する。

    • (高密度脂蛋白ブロックプロパティ]ダイアログボックスの(UseRAM)(上)に設定されている。

    • (ResetType)の设定が同じで,(默认)になっている。

  • 00

  • マージされた遅延のRAMSizeが,マッピングのしきい値100ビットを超える112ビット(遅延4つ*语长28ビット)である。

このモデルのHDLコードを生成するときに,高密度脂蛋白编码器はRAMマッピングを指定する別のファイルを生成します。本製品はこれらのファイルを他の生成されたHDLファイルと同じソースの場所,たとえばhdlsrcフォルダーに保存します。

ストリーミングおよび分散型パイプライン方式の影響

延迟ブロックのUseRAMの場合,既定で遅延がシフトレジスタにマップされます。ただし,以下の条件下において,本製品はUseRAMの設定をに変更し,遅延をRAMにマッピングすることを試みます。

  • 延迟ブロックをもつサブシステムのストリームが”“有効になっている。

  • 延迟ブロックをもつサブシステムの分散型パイプライン方式が”“無効になっている。

延迟ブロックをもつサブシステムに対して分散型パイプライン方式が”“有効になっているとします。

  • UseRAMの場合,延迟ブロックはリタイミングに使使ます。

  • UseRAMの場合,延迟ブロックはリタイミングに使用されません。高密度脂蛋白编码器では那RAM マッピング対象としてマークされた遅延は分割されません。

    2つの延迟ブロック3つの常数ブロック3つの产品ブロックをもつ次のサブシステムについて考えてみます。

    右側の延迟ブロックのUseRAMの場合,その遅延はリタイミングに使用されません。

次の表は,どのような场合并にがレジスタではなくramにマップされるををいいますいます。

延迟ブロックのUseRAMの設定 延迟ブロックをもつサブシステムの最適化が有効
分散型パイプライン方式のみ ストリーミングのみ 分散型パイプライン方式とストリーミングの両方
オン はい あり はい
オフ いいえ はい。シフトレジスタの代わりにRAMにマッピングすることで面積効率の高い設計が提供されるため。 いいえ

VariablesToPipeline

警告

VariablesToPipelineは推奨されません。代わりにcoder.hdl.pipelineを使用してください。

VariablesToPipelineパラメーターを使用すると,1つ以上のMATLAB変数の出力にパイプラインレジスタを挿入できます。変数のリストをスペースで区切った文字ベクトルとして指定します。

matlab式のパイプラインも参照してください。