unsigned to integer conversion

J

john

Guest
Hello,

i have a 48 bit unisgned numbers and need to convert them to integer.
I used to_integer functioin but getting the eroor that this function
only works with numbers less than 32 bit. can anyone suggest another
function or technique.

John
 
"john" <conphiloso@hotmail.com> wrote in message
news:1172253332.875219.149770@8g2000cwh.googlegroups.com...
Hello,

i have a 48 bit unisgned numbers and need to convert them to integer.
I used to_integer functioin but getting the eroor that this function
only works with numbers less than 32 bit. can anyone suggest another
function or technique.
An integer in VHDL is only 32 bits wide. In fact, it's not even that wide,
since the most-negative value (-2**31) is not part of the defined range for
integers.

If you need to manipulate numbers that are wider than 31 bits, you cannot
use VHDL's built-in integer type. Sorry.

-Ben-
 
Ben Jones a écrit :
"john" <conphiloso@hotmail.com> wrote in message
news:1172253332.875219.149770@8g2000cwh.googlegroups.com...
Hello,

i have a 48 bit unisgned numbers and need to convert them to integer.
I used to_integer functioin but getting the eroor that this function
only works with numbers less than 32 bit. can anyone suggest another
function or technique.

An integer in VHDL is only 32 bits wide. In fact, it's not even that wide,
since the most-negative value (-2**31) is not part of the defined range for
integers.

If you need to manipulate numbers that are wider than 31 bits, you cannot
use VHDL's built-in integer type. Sorry.
You could try by splitting your unsigned vector and converting each
slice to integer. You'll probably need to define an array of integers
type to keep your slices together in a single object (signal or variable)
I did it once for a 96 bits wide memory model (storing integers is less
memory consuming than storing vectors)

Nicolas
 

Welcome to EDABoard.com

Sponsor

Back
Top