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!

