このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
Biquad Filter
双二次 IIR (SOS) フィルターのモデル化

ライブラリ:
DSP System Toolbox /
Filtering /
Filter Implementations
DSP System Toolbox HDL Support /
Filtering
説明
Biquad Filter ブロックは、指定の双二次無限インパルス応答 (IIR) フィルターを使って入力信号の各チャネルを個別にフィルター処理します。ダイアログ ボックスにフィルター係数を指定すると、ブロックは固定係数を使用して静的フィルターを実装します。入力端子を通してフィルター係数を指定すると、シミュレーション時に係数を調整できます。
Biquad Filter ブロックは Simulink® の状態ログ機能をサポートしています。詳細については、ステート (Simulink)を参照してください。
メモ
Biquad Filter ブロックと Second-Order Section Filter ブロックは両方とも、Simulink で 2 次セクション フィルターのカスケードを実装します。ただし、フィルターの調整可能性や固定小数点信号のサポートなど、いくつかの点では異なります。
入力信号が single
データ型または double
データ型の場合は、Second-Order Section Filter ブロックを使用します。これは Biquad Filter ブロックに比べていくつかの利点があるためです。入力信号が組み込み整数または固定小数点演算の場合は、Biquad Filter ブロックを使用します。固定小数点演算用に Biquad Filter ブロックをカスタマイズできます。
2 つのブロックの主な違いの詳細については、Biquad Filter ブロックと Second-Order Section Filter ブロックの違いを参照してください。
例
端子
入力
ブロックへのデータ入力。ベクトルまたは行列として指定します。このブロックは、シミュレーション中の入力フレームのサイズ (行数) 変更を有効にする可変サイズの入力信号をサポートします。ただし、チャネル数 (列数) は一定でなければなりません。
入力が固定小数点の場合、2 進小数点スケーリングを使用する符号付き固定小数点でなければなりません。
この端子は [係数のソース] を [入力端子]
に設定しない限り、名前は付きません。
データ型: single
| double
| int8
| int16
| int32
| int64
| fixed point
複素数のサポート: あり
双二次フィルターの分子係数。3 行 N 列の行列として指定します。ここで、N は双二次フィルター セクションの数です。
[Num] が固定小数点の場合、2 進小数点スケーリングを使用する符号付き固定小数点でなければなりません。
依存関係
この端子は [係数のソース] を [入力端子]
に設定する場合にのみ表示されます。
データ型: single
| double
| int8
| int16
| int32
| int64
| fixed point
双二次フィルターの分母係数。2 行 N 列の行列として指定します。ここで、N は双二次フィルター セクションの数です。
[Den] が固定小数点の場合、2 進小数点スケーリングを使用する符号付き固定小数点でなければなりません。
依存関係
この端子は [係数のソース] を [入力端子]
に設定する場合にのみ表示されます。
データ型: single
| double
| int8
| int16
| int32
| int64
| fixed point
双二次フィルターのスケール値。1 行 (N+1) 列のベクトルとして指定します。ここで、N は双二次フィルター セクションの数です。
[g] が固定小数点の場合、2 進小数点スケーリングを使用する符号付き固定小数点でなければなりません。
依存関係
この端子は [係数のソース] を [入力端子]
に設定する場合にのみ表示されます。
データ型: single
| double
| int8
| int16
| int32
| int64
| fixed point
出力
フィルター処理された出力。ベクトルまたは行列として返されます。
出力次元は、常に入力信号の次元と同じです。
[Out] が固定小数点の場合、2 進小数点スケーリングを使用する符号付き固定小数点でなければなりません。
この端子は [係数のソース] を [入力端子]
に設定しない限り、名前は付きません。
データ型: single
| double
| int8
| int16
| int32
| int64
| fixed point
複素数のサポート: あり
パラメーター
[メイン] タブ
Biquad Filter ブロックは 3 つの異なるモードで操作できます。
ダイアログ パラメーター
— 構造や係数などのフィルターに関する情報をブロック マスクに入力します。入力端子
— [フィルター構造] パラメーターを使用して、フィルター構造に関する情報をブロック マスクに入力します。フィルター係数は、ブロック アイコンに表示される追加の入力端子を通してブロックに適用されます。Num
— 分子係数を指定します。Den
— 分母係数を指定します。g
— スケール値を指定します。
ブロックは、各セクションの最初の分母係数を 1 と仮定します。このコンフィギュレーションは、[係数のソース] が
[入力端子]
、[スケール値モード] が[Specify via input port (g)]
の場合に適用されます。フィルター オブジェクト
—dsp.BiquadFilter
System object™ を使用してフィルターを指定します。
ブロックで実装する離散時間フィルターの名前を指定します。フィルターは dsp.BiquadFilter
System object として指定しなければなりません。
System object はブロック マスクまたは MATLAB® ワークスペース変数で定義できます。
System object の作成の詳細については、基本的な System object の定義を参照してください。
依存関係
このパラメーターは、[係数のソース] が [フィルター オブジェクト]
に設定されている場合にのみ表示されます。
フィルター構造を指定します。
依存関係
このパラメーターは、[係数のソース] が [ダイアログ パラメーター]
または [入力端子]
に設定されている場合にのみ表示されます。
M 行 6 列の行列を指定します。ここで、M は 2 次セクション フィルターのセクション数です。SOS 行列の各行には、フィルターで対応するセクションの分子係数と分母係数 (bik と aik) が含まれています。
最初の分母係数 [a01 a02 ... a0N] は実際の値にかかわらず 1 として扱われます。[a0] が 1 でない場合に SOS 行列に適用されるスケーリングはありません。
関数 ss2sos
と関数 tf2sos
は、フィルターの状態空間または伝達関数の説明をこのブロックで使用される 2 次セクションの説明に変換します。
依存関係
このパラメーターは、[係数のソース] が [ダイアログ パラメーター]
に設定されている場合にのみ表示されます。
SOS セクション間で使用されるスケール値を指定します。実数値のスカラーまたは M+1 の長さのベクトルを指定できます。
スカラーを入力すると、その値は 2 次フィルターの最初のセクション前にゲイン値を指定します。ゲイン値の残りは既定で 1 に設定されます。
M+1 値のベクトルを入力すると、各値がフィルターの個別のセクションを指定します。たとえば、最初の要素は最初のゲイン値で、2 番目の要素は 2 番目のゲイン値、のように続きます。
[1 のスケール値の最適化] チェック ボックスをオンにし、1 つ以上のスケール値が 1 と等しい場合にシミュレーションを最適化します。このオプションを選択すると 1 のゲインが削除されるため、値は Simulink のラインまたはワイヤのように扱われます。一部の固定小数点では、1 のスケール値がある場合にこのパラメーターを選択しても特定のキャストが省略されます。詳細については、固定小数点データ型のセクションを参照してください。
依存関係
このパラメーターは、[係数のソース] が [ダイアログ パラメーター]
に設定されている場合にのみ表示されます。
[フィルター構造] が [直接型 II]
または [直接型 II 転置構成]
に設定されている場合にフィルターの状態の初期条件を指定します。
直接型 II
直接型 II 転置構成
Biquad Filter ブロックは、既定の設定で内部フィルターの状態をゼロに初期化します。フィルター遅延に対して非ゼロの初期状態を指定するには、[初期条件] パラメーターを使用します。
指定すべき初期条件の数と指定方法を決定するには、有効な初期条件について以下の表を参照してください。
有効な初期条件
初期条件 | 説明 |
---|---|
スカラー | このブロックはフィルター内のすべての遅延要素をスカラー値に初期化します。 |
ベクトルまたは行列 | ベクトルまたは行列の各要素は対応するチャネルの対応する遅延要素に一意の初期条件を指定します。M はセクションの数で、N は入力チャネルの数です。
|
依存関係
このパラメーターは [係数のソース] が [ダイアログ パラメーター]
または [入力端子]
、[フィルター構造] が [直接型 II]
または [直接型 II 転置構成]
に設定されている場合にのみ表示されます。
フィルター構造の零点側 (b0, b1,b2, ...) でフィルター状態の初期条件を指定します。このパラメーターは、[フィルター構造] が [直接型 I]
または [直接型 I 転置構成]
に設定されている場合にのみ適用されます。
直接型 I
直接型 I 転置構成
Biquad Filter ブロックは、既定の設定で内部フィルターの状態をゼロに初期化します。フィルター遅延に対して非ゼロの初期状態を指定するには、[零点側の初期条件] パラメーターを使用します。
指定すべき初期条件の数と指定方法を決定するには、有効な初期条件について以下の表を参照してください。
有効な初期条件
初期条件 | 説明 |
---|---|
スカラー | このブロックはフィルター内のすべての遅延要素をスカラー値に初期化します。 |
ベクトルまたは行列 | ベクトルまたは行列の各要素は対応するチャネルの対応する遅延要素に一意の初期条件を指定します。ここで、M はセクションの数、N は入力チャネルの数です。
|
依存関係
このパラメーターは [係数のソース] が [ダイアログ パラメーター]
または [入力端子]
、[フィルター構造] が [直接型 I]
または [直接型 I 転置構成]
に設定されている場合にのみ表示されます。
フィルター構造の極側 (a1, a2, ...) でフィルター状態の初期条件を指定します。このパラメーターは、[フィルター構造] が [直接型 I]
または [直接型 I 転置構成]
に設定されている場合にのみ適用されます。
直接型 I
直接型 I 転置構成
Biquad Filter ブロックは、既定の設定で内部フィルターの状態をゼロに初期化します。フィルター遅延に対して非ゼロの初期状態を指定するには、[極側の初期条件] パラメーターを使用します。
指定すべき初期条件の数と指定方法を決定するには、有効な初期条件について以下の表を参照してください。
有効な初期条件
初期条件 | 説明 |
---|---|
スカラー | このブロックはフィルター内のすべての遅延要素をスカラー値に初期化します。 |
ベクトルまたは行列 | ベクトルまたは行列の各要素は対応するチャネルの対応する遅延要素に一意の初期条件を指定します。ここで、M はセクションの数、N は入力チャネルの数です。
|
依存関係
このパラメーターは [係数のソース] が [ダイアログ パラメーター]
または [入力端子]
、[フィルター構造] が [直接型 I]
または [直接型 I 転置構成]
に設定されている場合にのみ表示されます。
スケール値を指定してフィルター セクション間で使用する方法を選択します。[Specify via input port (g)]
を選択する場合、スケール値を端子 [g] での 2 次元ベクトルとして入力します。[Assume all are unity and optimize]
を選択する場合、すべてのスケール値が削除され、Simulink のラインまたはワイヤのように扱われます。
依存関係
このパラメーターは、[係数のソース] が [入力端子]
に設定されている場合にのみ表示されます。
SOS 行列 a0j 値が 1 と等しくない場合にブロックが実行しなければならないアクションを指定します。このアクションは [警告]
、[エラー]
、または [なし]
に指定できます。
[なし]
を選択すると、最初の係数 a0j は実際の値にかかわらず 1 として扱われます。[a0] が 1 でない場合に SOS 行列に適用されるスケーリングはありません。
依存関係
このパラメーターは、[係数のソース] が [ダイアログ パラメーター]
に設定されている場合にのみ表示されます。
このチェック ボックスをオンにして、1 つ以上のスケール値が 1 と等しい場合にシミュレーションを最適化します。このオプションを選択すると 1 のゲインが削除されるため、値は Simulink のラインまたはワイヤのように扱われます。一部の固定小数点では、1 のスケール値がある場合にこのパラメーターを選択しても特定のキャストが省略されます。詳細については、固定小数点データ型のセクションを参照してください。
依存関係
このパラメーターは、[係数のソース] が [ダイアログ パラメーター]
に設定されている場合にのみ表示されます。
ブロックで入力を処理する方法を指定します。入力が M 行 N 列の行列の場合、このパラメーターを次のように設定できます。
チャネルとしての列 (フレーム ベース)
(既定の設定) — ブロックは各列を別々のチャネルとして扱います。このモードでは、ブロックは同じフィルターの M インスタンスを生成し、それそれが独自の独立した状態バッファーをもちます。それぞれの M フィルターが N 入力サンプルを Simulink タイム ステップごとに処理します。チャネルとしての要素 (サンプル ベース)
— ブロックは各要素を別々のチャネルとして扱います。このモードでは、ブロックは同じフィルターの MN インスタンスを生成し、それそれが独自の独立した状態バッファーをもちます。各フィルターが 1 つの入力サンプルを Simulink タイム ステップごとに処理します。
このボタンでフィルターの可視化ツール (FVTool) を開き、ダイアログで指定したフィルターのフィルター応答を表示します。
メモ
ブロック ダイアログでフィルター パラメーターを変更する場合、[フィルター応答の表示] ボタンを使用する前に [適用] ボタンをクリックしなければなりません。
[データ型] タブ
メモ
このタブは、[係数のソース] を [ダイアログ パラメーター]
または [入力端子]
のいずれかに設定する場合にのみ表示されます。[係数のソース] を [フィルター オブジェクト]
に設定すると、フィルター オブジェクトのプロパティで指定したデータ型がブロックで使用されます。
固定小数点演算の丸めモードを指定します。
詳細については、丸めモードを参照してください。フィルター係数はこのパラメーターに従いません。代わりに、これらは常に [最も近い正の整数方向]
に丸められます。
このパラメーターをオンにすると、ブロックは固定小数点演算の結果を飽和させます。このパラメーターをオフにすると、ブロックは固定小数点演算の結果をラップします。saturate
および wrap
の詳細については、固定小数点演算のオーバーフロー モードを参照してください。
フィルター係数は常に飽和し、このパラメーターには従いません。
双二次フィルターの各セクションに入力される固定小数点データ型の語長と小数部の長さを指定する方法を選択します。このブロックでセクションの入力データ型の用法を示す図については、固定小数点データ型のセクションを参照してください。次を選択する場合:
入力と同じ
— [セクションの入力] データ型の語長と小数部の長さの特性がブロックへの入力の特性と一致します。2 進小数点スケーリング
— セクションの入力の語長と小数部の長さをビット数で入力します。
双二次フィルターの各セクションから出力される固定小数点データ型の語長と小数部の長さを指定する方法を選択します。このブロックのセクションの出力データ型の使い方を示す図については、固定小数点データ型のセクションを参照してください。次を選択する場合:
セクションの入力と同じ
— [セクションの出力] データ型の語長と小数部の長さの特性がブロックへの入力の特性と一致します。2 進小数点スケーリング
— セクションの出力の語長と小数部の長さをビット数で入力します。
[直接型 I 転置構成]
フィルター構造の被乗数データ型の語長と小数部の長さを指定する方法を選択します。このブロックの被乗数データ型の使い方を示す図については、固定小数点データ型のセクションを参照してください。
次を選択する場合:
出力と同じ
— [被乗数] データ型の語長と小数部の長さの特性がブロックへの出力の特性と一致します。2 進小数点スケーリング
— 被乗数データ型の語長と小数部の長さをビット数で入力します。
依存関係
このパラメーターは、[フィルター構造] パラメーターが [直接型 I 転置構成]
に設定されている場合にのみ表示されます。
[係数のソース] を [ダイアログ パラメーター]
に設定する場合のフィルター係数 (分子、分母、およびスケール値) の語長と小数部の長さを指定する方法を選択します。このブロックの係数データ型の使い方を示す図については、固定小数点データ型のセクションを参照してください。次を選択する場合:
入力と同じ語長
— フィルター係数の語長はブロックへの入力の語長と一致します。このモードでは、ブロックによって係数の小数部の長さが 2 進小数点のみのスケーリングに自動的に設定されます。このスケーリングは、与えられた係数の値と語長で最高の精度になります。語長の指定
— 係数の語長をビット数で入力します。このモードでは、ブロックによって係数の小数部の長さが 2 進小数点のみのスケーリングに自動的に設定されます。このスケーリングは、与えられた係数の値と語長で最高の精度になります。2 進小数点スケーリング
— 係数の語長と小数部の長さをビット数で入力します。必要に応じて、分子と分母の係数に個別の小数部の長さを入力できます。
フィルター係数は [丸めモード] パラメーターと [オーバーフロー モード] パラメーターには従いません。代わりに、これらは常に飽和して [最も近い正の整数方向]
に丸められます。
依存関係
このパラメーターは、[係数のソース] が [ダイアログ パラメーター]
に設定されている場合にのみ表示されます。
乗算出力の語長と小数部の長さの指定方法を指定します。このブロックの積出力データ型の使い方を示す図については、乗算のデータ型および固定小数点データ型のセクションを参照してください。次を選択する場合:
入力と同じ
— 乗算出力の語長と小数部の長さの特性がブロックへの入力の特性と一致します。内部ルールによる継承
— 乗算出力の語長と小数部の長さが完全精度の規則に基づいて計算されます。この規則はオブジェクト内で量子化が発生しないようにします。必要に応じてビットが追加されて、丸めやオーバーフローが発生しないようにします。詳細については、内部ルールによる継承を参照してください。2 進小数点スケーリング
— 乗算出力の語長と小数部の長さをビット数で入力します。必要に応じて、分子と分母の乗算出力のデータ型に個別の小数部の長さを入力します。
[係数のソース] が [ダイアログ パラメーター]
に設定されている場合の状態の語長と小数部の長さの指定方法を指定します。このブロックの状態データ型の使い方を示す図については、固定小数点データ型のセクションを参照してください。
次を選択する場合:
入力と同じ
— 状態の語長と小数部の長さの特性がブロックへの入力の特性と一致します。アキュムレータと同じ
— 状態の語長と小数部の長さの特性がアキュムレータの特性と一致します。2 進小数点スケーリング
— 状態の語長と小数部の長さをビット数で入力します。必要に応じて、分子と分母の状態のデータ型に個別の小数部の長さを入力します。
依存関係
このパラメーターは、[フィルター構造] が [直接型 II]
または [直接型 II 転置構成]
に設定されている場合にのみ表示されます。
出力の語長と小数部の長さを指定する方法を選択します。このブロックの出力データ型の使い方を示す図については、固定小数点データ型のセクションを参照してください。次を選択する場合:
入力と同じ
— 出力の語長と小数部の長さの特性がブロックへの入力の特性と一致します。アキュムレータと同じ
— 出力の語長と小数部の長さの特性がアキュムレータの特性と一致します。2 進小数点スケーリング
— 出力の語長と小数部の長さをビット数で入力します。
ブロック マスクで指定するデータ型が固定小数点ツールによってオーバーライドされないようにするには、このパラメーターを選択します。
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
詳細
次のセクションの図には、Biquad Filter ブロックでサポートされるフィルター構造を示します。これらは、固定小数点信号のフィルター構造で使用されるデータ型も示しています。ブロックのダイアログ ボックスでこれらの図に示されるデータ型を設定できます。
次の図は、固定小数点信号用のフィルターの 1 つのセクションで使用されるデータ型を示しています。
以下の図は、フィルターのセクション間で使用される固定小数点データ型を示しています。
データを最適化しない場合:
[1 のスケール値の最適化] を選択し、スケール値が 1 と等しい場合:
次の図は、固定小数点信号用のフィルターの 1 つのセクションで使用されるデータ型を示しています。
[1 のスケール値の最適化] を選択し、スケール値が 1 と等しい場合、破線付きキャストは省略されます。
以下の図は、フィルターのセクション間で使用される固定小数点データ型を示しています。
データを最適化しない場合:
[1 のスケール値の最適化] を選択し、スケール値が 1 と等しい場合:
次の図は、固定小数点信号用のフィルターの 1 つのセクションで使用されるデータ型を示しています。
[1 のスケール値の最適化] を選択し、スケール値が 1 と等しい場合、破線付きキャストは省略されます。
以下の図は、フィルターのセクション間で使用される固定小数点データ型を示しています。
データを最適化しない場合:
[1 のスケール値の最適化] を選択し、スケール値が 1 と等しい場合:
次の図は、固定小数点信号用のフィルターの 1 つのセクションで使用されるデータ型を示しています。
以下の図は、フィルターのセクション間で使用される固定小数点データ型を示しています。
データを最適化しない場合:
[1 のスケール値の最適化] を選択し、スケール値が 1 と等しい場合:
Biquad Filter ブロックと Second-Order Section Filter ブロックは、Simulink で 2 次セクション フィルターのカスケードを実装します。ただし、フィルターの調整可能性や固定小数点信号のサポートなど、いくつかの点では異なります。
入力信号が single
データ型または double
データ型の場合は、Second-Order Section Filter ブロックを使用します。これは Biquad Filter ブロックに比べていくつかの利点があるためです。入力信号が組み込み整数または固定小数点演算の場合は、Biquad Filter ブロックを使用します。固定小数点演算用に Biquad Filter ブロックをカスタマイズできます。
以下に、2 つのブロックの主な違いを示す表を示します。
Second-Order Section Filter ブロック | Biquad Filter ブロック | |
---|---|---|
組み込み整数および固定小数点データ型のサポート | ⨉ | ✓ |
フィルター状態の初期条件の指定 | ⨉ | ✓ |
シミュレーション中に係数値を変更する機能 | ✓ | ⨉ |
ブロック ダイアログ ボックスで分子の係数と分母の係数を個別に指定 | ✓ | ⨉ フィルター係数は SOS 行列として指定しなければなりません。 |
フィルター設計ソース ブロックおよび Filter Visualizer ブロックとの互換性。フィルター設計ソース ブロックには、Lowpass IIR Filter Design、Highpass IIR Filter Design、Bandpass IIR Filter Design、および Bandstop IIR Filter Design が含まれます。 | ✓ フィルター設計ソース ブロックからの係数を、その係数を変更せずに、Second-Order Section Filter ブロックと Filter Visualizer ブロックに直接渡すことができます。例については、Filter Noisy Signal Using Second-Order Section (SOS) Bandpass Filter in Simulinkを参照してください。 | ⨉ フィルター設計ソース ブロックの係数は、Biquad Filter ブロックに渡す前に、3 行 N 列の分子行列と 2 行 N 列の分母行列に再構築しなければなりません。 |
拡張機能
C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。
HDL Coder™ は、HDL の実装および合成ロジックに影響を与える、追加の構成オプションを提供します。
ブロックは、既定のアーキテクチャとして [HDLDataPath]
をもちます。このアーキテクチャは、HDL の実装および合成ロジックに影響を与える追加の構成オプションを提供します。
HDL のブロック プロパティ | 説明 |
---|---|
InputPipeline | 生成コードに挿入する入力パイプライン ステージの数。分散型パイプラインと制約付き出力パイプラインは、これらのレジスタを移動できます。既定の設定は |
OutputPipeline | 生成コードに挿入する出力パイプライン ステージの数。分散型パイプラインと制約付き出力パイプラインは、これらのレジスタを移動できます。既定の設定は |
ConstrainedOutputPipeline | 設計内で既存の遅延を移動することによって出力に配置するレジスタの数。分散型パイプラインは、これらのレジスタを再分散しません。既定の設定は |
FlattenFilter | 生成された HDL コードからフィルター サブシステムの階層を削除します。既定の設定は |
DSPStyle | 乗算器マッピング用の合成属性。既定の設定は |
SharingFactor | 単一の共有リソースにマッピングする機能的に同等のリソースの数。既定値は 0 です。リソース共有 (HDL Coder)も参照してください。 |
StreamingFactor | 時間多重化されてシリアルのスカラー データ パスに変換される並列データ パスまたはベクトルの数。既定値は 0 で、完全に並列なデータ パスを実装します。ストリーミング (HDL Coder)も参照してください。 |
ConstMultiplierOptimization | 正準符号付き桁数 (CSD) または因数分解された CSD の最適化。既定の設定は |
MultiplerArchitecture | 乗算器アーキテクチャを [linear] または [shiftadd] として選択します。既定の設定は [linear] です。詳細については、Product, Matrix Multiply (Simulink) の「HDL コード生成」セクションを参照してください。 |
MultiplierInputPipeline | フィルター乗算器の入力で追加するパイプライン ステージの数を指定します。MultiplierInputPipeline (HDL Coder) も参照してください。 |
MultiplierOutputPipeline | フィルター乗算器の出力で追加するパイプライン ステージの数を指定します。MultiplierOutputPipeline (HDL Coder) も参照してください。 |
SectionOutputPipeline | セクション出力に追加するパイプライン ステージの数を指定します。既定の設定は 0 です。 |
AdderOutputPipeline | 加算演算の生成コードに挿入する出力パイプライン ステージの数。既定の設定は |
このブロックは、HDL コード生成用に次のデータ型をサポートしています。
入力端子 | 次元 | 固定小数点 | 浮動小数点 | 組み込み整数 | バス | boolean | 列挙型 | 複素信号 |
---|---|---|---|---|---|---|---|---|
In | スカラー ベクトル 行列 | あり | Half Single Double | あり | あり | あり | あり | あり |
以下のブロック パラメーター構成は、HDL コード生成と互換性がありません。
ブロック パラメーター | 制限 |
---|---|
入力処理 | パラメーター値 [チャネルとしての列 (フレーム ベース)] はサポートされていません。 |
ブロックは以下の HDL 最適化に関与し、速度と面積を最適化します。
面積の最適化
速度の最適化
最適化 | 説明 |
---|---|
分散型パイプライン方式 (HDL Coder) | "分散型パイプライン方式" つまりレジスタのリタイミングは、設計の既存の遅延を移動して、機能的動作を維持しながらクリティカル パスを低減する速度の最適化です。 |
クロックレート パイプライン (HDL Coder) | "クロックレート パイプライン" は、他の速度と面積の最適化によってクロック レートでのレイテンシを導入できるようにする HDL Coder の最適化フレームワークです。 |
適応パイプライン (HDL Coder) | "適応パイプライン" 最適化は、設計内のブロックにパイプライン レジスタを挿入することによって、達成可能なクロック周波数を向上させ、FPGA ボード上の使用面積を削減できるブロックとレジスタのパターンまたは組み合わせを作成します。 |
クリティカル パスの推定 (HDL Coder) | クリティカル パスの可能性が最も高いパスを設計内ですばやく特定するには、"クリティカル パスの推定" を使用します。クリティカル パスの推定により、クリティカル パスを検出する反復プロセスが高速化されます。クリティカル パスの推定で特徴付けられるブロックについては、特徴付けられるブロック (HDL Coder)を参照してください。 |
ブロックには以下の制限があります。
HDL コードの生成では、フレームの入力はサポートされていません。フレームベース入力には Biquad Filter (DSP HDL Toolbox) ブロックを使用します。
[初期条件] を
0
に設定しなければなりません。非ゼロの初期状態に対して、HDL コードの生成はサポートされていません。[1 のスケール値を最適化する] を選択しなければなりません。
Biquad Filter ブロックをプログラミング可能フィルターまたはマルチチャネル フィルターとして構成するには、以下のブロック設定を使用します。
フィルターの例 | 考慮事項 |
---|---|
プログラミング可能フィルター | HDL Coder は、Biquad Filter ブロックについてプログラミング可能フィルターをサポートします。
|
マルチチャネル フィルター | HDL Coder は、Biquad Filter ブロックに対するベクトル入力の使用をサポートします。
|
メモ
ハードウェア フレンドリーな制御信号で HDL 用に最適化された双二次フィルター アーキテクチャには、Biquad Filter (DSP HDL Toolbox) ブロックを使用します。DSP HDL Toolbox™ ブロックは、Simulink の HDL アルゴリズムのレイテンシをシミュレートします。DSP HDL Toolbox ブロックは、FPGA の DSP ブロックに適合する直接型 II または直接型 II 転置構成のパイプライン化された加算-乗算演算を生成します。使用する乗算器の数は多くなりますが、クリティカル パスを短縮し、より高いクロック レートを実現するオプションのパイプライン フィードバック アーキテクチャを提供します。DSP HDL Toolbox ブロックはプログラミング可能係数をサポートしません。マルチチャネルのフィルター処理を実行するには、DSP HDL ToolboxBiquad Filter ブロックを For Each サブシステムに配置します。
固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。
バージョン履歴
R2008b で導入
参考
ブロック
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)