-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Description
Add support for ac_types
ac_int<W,S>
- W - width of the number (non-negative interger number)
- S - signed number (bool flag)
| Type | Numerical range | Quantum |
|---|---|---|
{W: 1, S: false} |
0..1 | 1 |
{W: 1, S: true} |
-1..0 | 1 |
{W: 4, S: false} |
0..15 | 1 |
{W: 4, S: true} |
-8..7 | 1 |
ac_int<W, S> === ac_fixed<W, W, S>
ac_fixed<W, I, S, Q, O>
- W - width of the number (non-negative interger number)
- I - integer width (non-negative interger number)
- S - signed number (bool flag)
- Q - rounding (bool flag)
- O - overflow (bool flag)
| Type | Numerical range | Quantum |
|---|---|---|
{W: 4, I: 4, S: false} |
0..15 | 1 |
{W: 4, I: 4, S: true} |
-8..7 | 1 |
{W: 4, I: 6, S: false} |
0..60 | 4 |
{W: 4, I: 6, S: true} |
-32..28 | 4 |
{W: 4, I: 0, S: false} |
0..15/16 | 1/16 |
{W: 4, I: 0, S: true} |
-1/2..7/16 | 1/16 |
{W: 4, I: -1, S: false} |
0..15/32 | 1/32 |
{W: 4, I: -1, S: true} |
-0.25..7/32 | 1/32 |
ac_float<W, I, E, Q>
- W - width of mantissa (non-negative interger number)
- I - integer width (non-negative interger number)
- E - exponent (non-negative interger number)
- Q - rounding (bool flag)
| Type | Numerical range | Quantum |
|---|---|---|
{W: 54, I: 2, E: 11} |
IEEE 754 double | |
{W: 25, I: 2, E: 8} |
IEEE 754 float | |
{W: 12, I: 2, E: 5} |
IEEE 754 half |
❓ should width be W+E-1 ❓
ac_complex
C: true flag makes two part complex number.
| Type | Numerical range | Quantum |
|---|---|---|
{W: 8, I: 4, S: false, C: true} |
0..15 | 1 |
Metadata
Metadata
Assignees
Labels
No labels