On Thu, 28 Oct 2004 15:19:36 +0200, Nicolas Matringe
<> wrote:
>Thomas Reinemann a écrit:
>> Hello,
>>
>> I have to convert a std_logic_vector in an integer. This is generally no
>> matter. But I want to threat vectors in a special way which have 'U's or
>> 'X'. How can I detect whether a vector only contains '0's and '1's.
>
>Hi
>Xor all the bits together (parity check), then pass the result through
>the to_x01 function, which will return 'X' for 'U' or 'X' input. Result
>should be 0 or 1 if your vector contains only 0s and 1s, or X if not.
>
>Something like
> if to_x01(xor_reduce(your_vector)) = 'X' then
> ...
>
>(xor_reduce function code has been posted here a few weeks ago)
std_logic_1164 contains these functions:
FUNCTION Is_X ( s : std_ulogic_vector ) RETURN BOOLEAN;
FUNCTION Is_X ( s : std_logic_vector ) RETURN BOOLEAN;
FUNCTION Is_X ( s : std_ulogic ) RETURN BOOLEAN;
if is_x(your_vector) then
.... is much cleaner
Regards,
Allan
|