Abs
入力の絶対値の出力
ライブラリ:
Simulink /
Math Operations
HDL Coder /
HDL Floating Point Operations
HDL Coder /
Math Operations
説明
Abs ブロックは入力の絶対値を出力します。
符号付き整数データ型の場合、最小の負の値の絶対値はそのデータ型で表現できません。この場合、[整数オーバーフローで飽和] チェック ボックスがこのブロックの動作を制御します。
ユーザーの操作 | ブロックの動作 | それに伴う処理 |
---|---|---|
このチェック ボックスをオンにする | 整数データ型の最大の正の値に飽和されます。 |
|
このチェック ボックスをオンにしない | 整数データ型の最小の負の値にラップされます。 |
|
Abs ブロックはゼロクロッシング検出をサポートします。ただし、ダイアログ ボックスで [ゼロクロッシング検出を有効にする] が選択されている場合、ブロックは固定小数点ツールによるシミュレーションの最小値または最大値をレポートしません。固定小数点ツールを使用してモデルの解析を行う場合は、まず、モデルのすべての Abs ブロックについてゼロクロッシング検出を無効にしてください。
例
端子
入力
Port_1 — 入力信号
スカラー | ベクトル
Absolute Value ブロックへの入力信号。
データ型: half
| single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
出力
Port_1 — 絶対値出力信号
スカラー | ベクトル
入力信号の絶対値。
データ型: half
| single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
パラメーター
メイン
ゼロクロッシング検出を有効にする — ゼロクロッシング検出を有効にする
on
(既定値) | off
ゼロクロッシング検出を有効にする場合は選択します。詳細については、ゼロクロッシング検出を参照してください。
プログラムでの使用
ブロック パラメーター: ZeroCross |
型: 文字ベクトル | string |
値: 'off' | 'on' |
既定の設定: 'on' |
サンプル時間 (継承は -1) — サンプルの間隔
-1
(既定値) | スカラー | ベクトル
サンプルの時間間隔を指定します。サンプル時間を継承するには、このパラメーターを -1
に設定します。詳細については、サンプル時間の指定を参照してください。
依存関係
このパラメーターは、-1
以外の値に設定した場合にのみ表示されます。詳細は、サンプル時間が推奨されないブロックを参照してください。
プログラムでの使用
ブロック パラメーター: SampleTime |
型: string スカラーまたは文字ベクトル |
既定の設定: "-1" |
信号属性
データ属性の設定には [データ型アシスタント] が役立ちます。[データ型アシスタント] を使用するには、 をクリックします。詳細については、データ型アシスタントを利用したデータ型の指定を参照してください。
出力の最小値 — 範囲チェックの最小出力値
[]
(既定値) | スカラー
Simulink® がチェックする出力範囲の下限値。
Simulink は、最小値を使って以下を行います。
一部のブロックに対するパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定を参照)
シミュレーション範囲のチェック (信号範囲の指定およびシミュレーション範囲のチェックの有効化を参照)
固定小数点データ型の自動スケーリング
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、SIL やエクスターナル モードなどの一部のシミュレーション モードの結果に影響を与えることがあります。詳細については、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
メモ
[出力の最小値] により、実際の出力信号が飽和する (またはクリップされる) ことはありません。代わりに、Saturation ブロックを使用してください。
プログラムでの使用
ブロック パラメーター: OutMin |
型: 文字ベクトル |
値: '[ ]' | スカラー |
既定の設定: '[ ]' |
出力の最大値 — 範囲チェックの最大出力値
[]
(既定値) | スカラー
Simulink がチェックする出力範囲の上限値。
Simulink は、最大値を使って以下を行います。
一部のブロックに対するパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定を参照)
シミュレーション範囲のチェック (信号範囲の指定およびシミュレーション範囲のチェックの有効化を参照)
固定小数点データ型の自動スケーリング
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、SIL やエクスターナル モードなどの一部のシミュレーション モードの結果に影響を与えることがあります。詳細については、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
メモ
[出力の最大値] により、実際の出力信号が飽和する (またはクリップされる) ことはありません。代わりに、Saturation ブロックを使用してください。
プログラムでの使用
ブロック パラメーター: OutMax |
型: 文字ベクトル |
値: '[ ]' | スカラー |
既定の設定: '[ ]' |
出力データ型 — 出力データ型を指定
継承: 入力と同じ
(既定値) | 継承: 内部ルールによる継承
| 継承: 逆伝播による継承
| double
| single
| half
| int8
| int32
| uint32
| int64
| uint64
| fixdt(1,16,2^0,0)
| <data type expression>
| ...
出力のデータ型を選択します。型は継承されるか、直接指定されるか、Simulink.NumericType
などのデータ型オブジェクトとして表現されます。
依存関係
入力が単精度より小さい浮動小数点データ型の場合、[継承: 内部ルールによる継承]
出力データ型は単精度より小さい浮動小数点の出力型を継承するコンフィギュレーション パラメーターの設定によって変わります。データ型の符合化に必要なビット数が単精度データ型の符合化に必要な 32 ビットより少ない場合、データ型は単精度より小さくなります。たとえば、half
と int16
は単精度より小さくなります。
プログラムでの使用
ブロック パラメーター: OutDataTypeStr |
型: 文字ベクトル |
値: 'Inherit: Same as input' | 'Inherit: Inherit via internal rule' | 'Inherit: Inherit via back propagation' | 'single' | 'half' | 'int8' | 'uint8' | int16 | 'uint16' | 'int32' | 'uint32' | 'int64' | 'uint64' | fixdt(1,16,0) | fixdt(1,16,2^0,0) | fixdt(1,16,2^0,0) | '<data type expression>' |
既定の設定: 'Inherit: Same as input' |
固定小数点ツールによる変更に対して出力データ型の設定をロックする — 固定小数点ツールが出力データ型をオーバーライドするのを防止するオプション
off
(既定値) | on
固定小数点ツールが、ブロックに指定した [出力] データ型をオーバーライドしないようにするには、このパラメーターを選択します。詳細については、[出力データ型の設定をロックする] の使用 (Fixed-Point Designer)を参照してください。
プログラムでの使用
ブロック パラメーター: LockScale |
型: 文字ベクトル |
値: 'off' | 'on' |
既定の設定: 'off' |
整数丸めモード — 固定小数点演算の丸めモード
負方向
(既定値) | 正方向
| 最も近い偶数方向
| 最も近い正の整数方向
| 最も近い整数方向
| 最も簡潔
| ゼロ方向
固定小数点演算の丸めモードを指定します。詳細については、丸め (Fixed-Point Designer)を参照してください。
ブロック パラメーターは常に最近傍の表現可能な値に丸められます。ブロックパラメーターの丸めを直接制御するには、MATLAB® の丸め関数を使用する式をマスク フィールドに入力します。
プログラムでの使用
ブロック パラメーター: RndMeth |
型: 文字ベクトル |
値: 'Ceiling' | 'Convergent' | 'Floor' | 'Nearest' | 'Round' | 'Simplest' | 'Zero' |
既定の設定: 'Floor' |
整数オーバーフローで飽和 — 整数オーバーフロー発生時の動作の選択
off
(既定値) | on
このチェック ボックスをオンにすると、飽和は出力や結果だけでなく、このブロックの内部演算すべてに適用されます。通常、オーバーフローが可能ではない場合は、コード生成プロセスで検出されます。この場合、コード ジェネレーターでは飽和コードは生成されません。
動作 | このアクションを行う理由 | オーバーフロー発生時に起きること | 例 |
---|---|---|---|
このチェック ボックスをオンにする。 | モデルでオーバーフローが発生する可能性があるので、生成コードに飽和保護を明示的に組み込むことをお勧めします。 | オーバーフローは、データ型が表現できる最大値に飽和します。 | 数値 130 は符号付き 8 ビット整数 1 つに収まりきらないので、127 に飽和します。 |
このチェック ボックスをオンにしない。 | 生成コードの効率を最適化することをお勧めします。 | オーバーフローは、データ型によって表現される適切な値にラップされます。 | 数値 130 は符号付き 8 ビット整数 1 つに収まりきらないので、-126 にラップされます。 |
プログラムでの使用
ブロック パラメーター: SaturateOnIntegerOverflow |
型: 文字ベクトル |
値: 'off' | 'on' |
既定の設定: 'off' |
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
拡張機能
C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。
HDL コード生成
HDL Coder™ を使用して FPGA 設計および ASIC 設計のための VHDL、Verilog および SystemVerilog のコードを生成します。
HDL Coder™ には、HDL の実装および合成されたロジックに影響する追加のコンフィギュレーション オプションがあります。
このブロックには 1 つの既定の HDL アーキテクチャがあります。
一般 | |
---|---|
ConstrainedOutputPipeline | 既存の遅延を設計内で移動することによって出力に配置するレジスタの数。分散型パイプラインではこれらのレジスタは再分散されません。既定の設定は |
InputPipeline | 生成されたコードに挿入する入力パイプライン ステージ数。分散型パイプラインと制約付き出力パイプラインでは、これらのレジスタを移動できます。既定の設定は |
OutputPipeline | 生成されたコードに挿入する出力パイプライン ステージ数。分散型パイプラインと制約付き出力パイプラインでは、これらのレジスタを移動できます。既定の設定は |
ネイティブ浮動小数点 | |
---|---|
LatencyStrategy | 浮動小数点演算子について、設計内のブロックを |
このブロックは、Native Floating Point
モードでの浮動小数点型を含む複素信号のコード生成をサポートします。
固定小数点型を使用する複素数信号を含むブロックのコード生成は、サポートされていません。複素数の大きさを計算するには、代わりに Complex to Magnitude-Angle (DSP HDL Toolbox) ブロックを使用してください。
PLC コード生成
Simulink® PLC Coder™ を使用して構造化テキスト コードを生成します。
固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。
バージョン履歴
R2006a より前に導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- 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)