The computed word length of the result is 152 bits.
5 views (last 30 days)
Show older comments
Hello there,
I'm converting Matlab Code (.m) to VHDL Code.. I got the following error
Can you please help me to control the Word Length of the variable??
Error:
The computed word length of the result is 152 bits. This exceeds the maximum supported wordlength of 128 bits.
The Array variable:
0
-0.480000000000000
-0.0180000000000000
-0.498000000000000
-0.0360000000000000
-0.516000000000000
-0.0600000000000000
-0.540000000000000
-0.0840000000000000
-0.564000000000000
-0.108000000000000
-0.594000000000000
-0.138000000000000
-0.624000000000000
-0.174000000000000
-0.666000000000000
-0.216000000000000
-0.708000000000000
-0.264000000000000
-0.762000000000000
-0.324000000000000
-0.822000000000000
-0.390000000000000
-0.894000000000000
-0.462000000000000
-0.0360000000000000
-0.546000000000000
-0.126000000000000
-0.642000000000000
-0.228000000000000
-0.750000000000000
-0.342000000000000
-0.870000000000000
-0.468000000000000
-0.0660000000000000
-0.606000000000000
-0.216000000000000
-0.762000000000000
-0.378000000000000
-0.930000000000000
-0.552000000000000
-0.180000000000000
-0.744000000000000
-0.378000000000000
-0.0180000000000000
-0.600000000000000
-0.246000000000000
-0.840000000000000
-0.492000000000000
-0.156000000000000
-0.762000000000000
-0.432000000000000
-0.108000000000000
-0.726000000000000
-0.414000000000000
-0.102000000000000
-0.738000000000000
-0.438000000000000
-0.150000000000000
-0.798000000000000
-0.516000000000000
-0.240000000000000
-0.906000000000000
-0.642000000000000
-0.384000000000000
-0.132000000000000
-0.822000000000000
-0.582000000000000
-0.348000000000000
-0.120000000000000
-0.834000000000000
-0.618000000000000
-0.408000000000000
-0.204000000000000
-0.00600000000000000
-0.750000000000000
-0.564000000000000
-0.384000000000000
-0.216000000000000
-0.0480000000000000
-0.828000000000000
-0.678000000000000
-0.528000000000000
-0.390000000000000
-0.258000000000000
-0.132000000000000
-0.0180000000000000
-0.840000000000000
-0.738000000000000
-0.642000000000000
-0.546000000000000
-0.462000000000000
-0.390000000000000
-0.318000000000000
-0.252000000000000
-0.198000000000000
-0.150000000000000
-0.108000000000000
-0.0720000000000000
-0.0420000000000000
-0.0240000000000000
-0.00600000000000000
0
0
-0.00600000000000000
-0.0240000000000000
-0.0420000000000000
-0.0720000000000000
-0.108000000000000
-0.150000000000000
-0.198000000000000
-0.252000000000000
-0.318000000000000
-0.390000000000000
-0.462000000000000
-0.546000000000000
-0.642000000000000
-0.738000000000000
-0.840000000000000
-0.0180000000000000
-0.132000000000000
-0.258000000000000
-0.390000000000000
-0.528000000000000
-0.678000000000000
-0.828000000000000
-0.0480000000000000
-0.216000000000000
-0.384000000000000
-0.564000000000000
-0.750000000000000
-0.00600000000000000
-0.204000000000000
-0.408000000000000
-0.618000000000000
-0.834000000000000
-0.120000000000000
-0.348000000000000
-0.582000000000000
-0.822000000000000
-0.132000000000000
-0.384000000000000
-0.642000000000000
-0.906000000000000
-0.240000000000000
-0.516000000000000
-0.798000000000000
-0.150000000000000
-0.438000000000000
-0.738000000000000
-0.102000000000000
-0.414000000000000
-0.726000000000000
-0.108000000000000
-0.432000000000000
-0.762000000000000
-0.156000000000000
-0.492000000000000
-0.840000000000000
-0.246000000000000
-0.600000000000000
-0.0180000000000000
-0.378000000000000
-0.744000000000000
-0.180000000000000
-0.552000000000000
-0.930000000000000
-0.378000000000000
-0.762000000000000
-0.216000000000000
-0.606000000000000
-0.0660000000000000
-0.468000000000000
-0.870000000000000
-0.342000000000000
-0.750000000000000
-0.228000000000000
-0.642000000000000
-0.126000000000000
-0.546000000000000
-0.0360000000000000
-0.462000000000000
-0.894000000000000
-0.390000000000000
-0.822000000000000
-0.324000000000000
-0.762000000000000
-0.264000000000000
-0.708000000000000
-0.216000000000000
-0.666000000000000
-0.174000000000000
-0.624000000000000
-0.138000000000000
-0.594000000000000
-0.108000000000000
-0.564000000000000
-0.0840000000000000
-0.540000000000000
-0.0600000000000000
-0.516000000000000
-0.0360000000000000
-0.498000000000000
-0.0180000000000000
-0.480000000000000
-0.936000000000000
-0.462000000000000
-0.918000000000000
-0.444000000000000
-0.900000000000000
-0.420000000000000
-0.882000000000000
-0.402000000000000
-0.858000000000000
-0.372000000000000
-0.828000000000000
-0.348000000000000
-0.798000000000000
-0.312000000000000
-0.762000000000000
-0.276000000000000
-0.720000000000000
-0.228000000000000
-0.672000000000000
-0.174000000000000
-0.612000000000000
-0.114000000000000
-0.546000000000000
-0.0420000000000000
-0.474000000000000
-0.900000000000000
-0.390000000000000
-0.810000000000000
-0.294000000000000
-0.708000000000000
-0.186000000000000
-0.600000000000000
-0.0660000000000000
-0.468000000000000
-0.870000000000000
-0.330000000000000
-0.726000000000000
-0.174000000000000
-0.564000000000000
-0.00600000000000000
-0.384000000000000
-0.756000000000000
-0.192000000000000
-0.558000000000000
-0.918000000000000
-0.336000000000000
-0.690000000000000
-0.102000000000000
-0.444000000000000
-0.780000000000000
-0.180000000000000
-0.504000000000000
-0.828000000000000
-0.210000000000000
-0.528000000000000
-0.834000000000000
-0.198000000000000
-0.498000000000000
-0.792000000000000
-0.138000000000000
-0.420000000000000
-0.696000000000000
-0.0300000000000000
-0.294000000000000
-0.552000000000000
-0.804000000000000
-0.114000000000000
-0.354000000000000
-0.594000000000000
-0.822000000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.937500000000000
-0.822000000000000
-0.594000000000000
-0.354000000000000
-0.114000000000000
-0.804000000000000
-0.552000000000000
-0.294000000000000
-0.0300000000000000
-0.696000000000000
-0.420000000000000
-0.138000000000000
-0.792000000000000
-0.498000000000000
-0.198000000000000
-0.834000000000000
-0.528000000000000
-0.210000000000000
-0.828000000000000
-0.504000000000000
-0.180000000000000
-0.780000000000000
-0.444000000000000
-0.102000000000000
-0.690000000000000
-0.336000000000000
-0.918000000000000
-0.558000000000000
-0.192000000000000
-0.756000000000000
-0.384000000000000
-0.00600000000000000
-0.564000000000000
-0.174000000000000
-0.726000000000000
-0.330000000000000
-0.870000000000000
-0.468000000000000
-0.0660000000000000
-0.600000000000000
-0.186000000000000
-0.708000000000000
-0.294000000000000
-0.810000000000000
-0.390000000000000
-0.900000000000000
-0.474000000000000
-0.0420000000000000
-0.546000000000000
-0.114000000000000
-0.612000000000000
-0.174000000000000
-0.672000000000000
-0.228000000000000
-0.720000000000000
-0.276000000000000
-0.762000000000000
-0.312000000000000
-0.798000000000000
-0.348000000000000
-0.828000000000000
-0.372000000000000
-0.858000000000000
-0.402000000000000
-0.882000000000000
-0.420000000000000
-0.900000000000000
-0.444000000000000
-0.918000000000000
-0.462000000000000
1 Comment
Walter Roberson
on 10 Mar 2016
I suspect it is not talking about the array itself, but about some value computed using the array.
Accepted Answer
Tim McBrayer
on 11 Mar 2016
Some operation that you are performing on this data is growing the numeric result to 152 bits, and HDL Coder has a maximum bit length of a word of 128 bits. Keep in mind that HDL Coder attempts to use full precision arithmetic for any temporaries implied by your code. For example, if you are multiply 8, 19-bit fixpt values together without using explicit temporaries, you get a 152-bit result. Of course there are any number of ways to get a 152-bit result; this is just an example.
>> a = fi(2, 1, 19, 0)
a =
2
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 19
FractionLength: 0
>> a*a*a*a*a*a*a*a
ans =
256
DataTypeMode: Fixed-point: binary point scaling
Signedness: Signed
WordLength: 152
FractionLength: 0
>>
0 Comments
More Answers (0)
See Also
Categories
Find more on HDL Coder in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!