gndless_fixedpoint
Generic signed fixed-point arithmetic utilities for Veryl.
| Version | 0.1.0 |
|---|---|
| Repository | https://github.com/AkiyukiOkayasu/gndless-fixedpoint-veryl |
| License | MIT OR Apache-2.0 |
Packages
| Q1_31 | Q1.31形式 (-1.0以上、+1.0未満)。デルタシグマ変調器などの用途 |
|---|---|
| Q2_16 | Q2.16形式。27x18乗算器の係数用途 |
| Q3_24 | Q3.24形式。36x27乗算器の係数用途 |
| Q8_19 | Q8.19形式。36x27乗算器の係数用途 |
| Q8_24 | Q8.24形式。波形オシレーターの出力などの用途 |
| SignedFixedPointFormatOf::<W, F> | WIDTHと小数ビット数によるsigned固定小数点formatの定義 |
| Types | 固定小数点演算で共有する丸め・overflow policy |
Modules
Module Prototypes
Interfaces
Packages
| Q1_31 | Q1.31形式 (-1.0以上、+1.0未満)。デルタシグマ変調器などの用途 |
|---|---|
| Q2_16 | Q2.16形式。27x18乗算器の係数用途 |
| Q3_24 | Q3.24形式。36x27乗算器の係数用途 |
| Q8_19 | Q8.19形式。36x27乗算器の係数用途 |
| Q8_24 | Q8.24形式。波形オシレーターの出力などの用途 |
| SignedFixedPointFormatOf::<W, F> | WIDTHと小数ビット数によるsigned固定小数点formatの定義 |
| Types | 固定小数点演算で共有する丸め・overflow policy |
Q1_31
Q1.31形式 (-1.0以上、+1.0未満)。デルタシグマ変調器などの用途
Q1_31::ONEは定義されない。+1.0は表現範囲外のため、必要時はQ1_31::MAXを利用
Q2_16
Q2.16形式。27x18乗算器の係数用途
raw値xの実数値はx / 2^16である
Q3_24
Q3.24形式。36x27乗算器の係数用途
raw値xの実数値はx / 2^24である
Q8_19
Q8.19形式。36x27乗算器の係数用途
raw値xの実数値はx / 2^19である
Q8_24
Q8.24形式。波形オシレーターの出力などの用途
raw値xの実数値はx / 2^24である
SignedFixedPointFormatOf::<W, F>
WIDTHと小数ビット数によるsigned固定小数点formatの定義
固定のQ形式presetを増やす代わりに、任意の幅と小数ビット数をformatとして直接使用できる
Type Parameters
W:WIDTHとして使う総ビット幅F:FRACTION_BITSとして使う小数ビット数
Examples
var input: SignedFixedPointFormatOf::<16, 8>::Raw;
input = 16'sd384; // 1.5
Types
固定小数点演算で共有する丸め・overflow policy
policyは関数のgeneric parameterとして指定するため、ハードウェア上の実行時selectorは生成されない。丸めは小数ビットを削減する右シフト時に、overflow処理は出力幅を狭める処理時に適用される