このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
fixed.cordicDivide
説明
は、y
= fixed.cordicDivide(num
,den
,OutputType
)OutputType
で指定された出力データ型を使用して num
を den
で除算します。
例
CORDIC を使用した除算
num = fi(1); den = fi(10); OutputType = fi([],1,16,15); y = fixed.cordicDivide(num,den,OutputType)
y = 0.1000 DataTypeMode: Fixed-point: binary point scaling Signedness: Signed WordLength: 16 FractionLength: 15
入力引数
num
— 分子
スカラー | ベクトル | 行列 | 多次元配列
分子。実数値のスカラー、ベクトル、行列、または多次元配列として指定します。
num
が浮動小数点型の場合、den
も浮動小数点型でなければならず、OutputType
で浮動小数点データ型を指定する必要があります。num
が組み込み整数型の場合、den
も組み込み整数型でなければならず、OutputType
で組み込み整数データ型を指定する必要があります。num
が固定小数点型の場合、den
も固定小数点型でなければならず、OutputType
で固定小数点データ型を指定する必要があります。
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fi
複素数のサポート: あり
den
— 分母
スカラー | ベクトル | 行列 | 多次元配列
分子。実数値のスカラー、ベクトル、行列、または多次元配列として指定します。
num
が浮動小数点型の場合、den
も浮動小数点型でなければならず、OutputType
で浮動小数点データ型を指定する必要があります。num
が組み込み整数型の場合、den
も組み込み整数型でなければならず、OutputType
で組み込み整数データ型を指定する必要があります。num
が固定小数点型の場合、den
も固定小数点型でなければならず、OutputType
で固定小数点データ型を指定する必要があります。
データ型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fi
複素数のサポート: あり
OutputType
— 出力のデータ型
fi
オブジェクト | numerictype
オブジェクト | Simulink.NumericType
オブジェクト
出力のデータ型。fi
オブジェクト、numerictype
、または Simulink.NumericType
オブジェクトとして指定します。
例: fi([],1,16,15)
例: numerictype(1,16,15)
例: fixdt(1,16,15)
詳細
CORDIC
CORDIC は、COordinate Rotation DIgital Computer の略語です。ギブンス回転に基づく CORDIC アルゴリズムは、Shift-Add 反復演算のみを必要とするため、ハードウェア効率が最も優れたアルゴリズムの 1 つです (参考文献を参照)。CORDIC アルゴリズムは、明示的な乗数を必要としません。CORDIC を使用すると、正弦関数、余弦関数、逆正弦関数、逆余弦関数、逆正接関数、ベクトル振幅関数などのさまざまな関数を計算できます。また、このアルゴリズムは除算、平方根、双曲線、対数などの関数にも使用できます。
CORDIC の反復数を増やすと、結果の精度が高まりますが、それにより計算量が増加しレイテンシが増えます。
アルゴリズム
固定小数点入力の num
および den
について、fixed.cordicDivide
はゼロ除算のオーバーフロー時にラップします。固定小数点のゼロ除算の動作を次の表にまとめます。
オーバーフローをラップ | オーバーフローを飽和 |
---|---|
0/0 = 0 | 0/0 = 0 |
1/0 = 0 | 1/0 = 上限 |
-1/0 = 0 | -1/0 = 下限 |
浮動小数点入力については、fixed.cordicDivide
は IEEE® Standard 754 に従います。
拡張機能
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
勾配とバイアス表現は固定小数点データ型ではサポートされていません。
HDL コード生成
HDL Coder™ を使用して FPGA 設計および ASIC 設計のための VHDL、Verilog および SystemVerilog のコードを生成します。
関数 fixed.cordicDivide
は、MATLAB® からの SystemC™ コード生成もサポートしています。
固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。
勾配とバイアス表現は固定小数点データ型ではサポートされていません。
バージョン履歴
R2020b で導入
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)