Ansgar said:
Hi
BTW.
It's not possible to read std_logic or std_logic_vector, so you better
read characters and use a conversion function char2std_logic or
char2std_logic_vector.
You probably have to write your own conversion functions.
You may also go with reading bit and bitvector instead of std_logic and
std_logic_vector.
HTH
Ansgar
What?
The library IEEE.STD.textio.all supports STD_LOGIC_VECTOR
STD_ULOGIC_VECTOR read !
Look at
procedure READ(L:inout LINE; VALUE
ut STD_ULOGIC);
procedure WRITE(L:inout LINE; VALUE:in STD_ULOGIC_VECTOR;
JUSTIFIED:in SIDE := RIGHT; FIELD:in WIDTH :=0);
....
BUT I DON'T LIKE IEEE.STD.textio.all, BUT I USE STD.textio.all from STD
and not from IEEE.
Laurent
Amontec Team
www.amontec
package STD_LOGIC_TEXTIO is
--synopsys synthesis_off
-- Read and Write procedures for STD_ULOGIC and STD_ULOGIC_VECTOR
procedure READ(L:inout LINE; VALUE
ut STD_ULOGIC; GOOD: out BOOLEAN);
procedure READ(L:inout LINE; VALUE
ut STD_ULOGIC_VECTOR);
procedure READ(L:inout LINE; VALUE
ut STD_ULOGIC_VECTOR; GOOD: out
BOOLEAN);
procedure WRITE(L:inout LINE; VALUE:in STD_ULOGIC
procedure WRITE(L:inout LINE; VALUE:in STD_ULOGIC_VECTOR;
JUSTIFIED:in SIDE := RIGHT; FIELD:in WIDTH := 0);
-- Read and Write procedures for STD_LOGIC_VECTOR
procedure READ(L:inout LINE; VALUE
ut STD_LOGIC_VECTOR);
procedure READ(L:inout LINE; VALUE
ut STD_LOGIC_VECTOR; GOOD: out
BOOLEAN);
procedure WRITE(L:inout LINE; VALUE:in STD_LOGIC_VECTOR;
JUSTIFIED:in SIDE := RIGHT; FIELD:in WIDTH := 0);
--
-- Read and Write procedures for Hex and Octal values.
-- The values appear in the file as a series of characters
-- between 0-F (Hex), or 0-7 (Octal) respectively.
--
-- Hex
procedure HREAD(L:inout LINE; VALUE
ut STD_ULOGIC_VECTOR);
procedure HREAD(L:inout LINE; VALUE
ut STD_ULOGIC_VECTOR; GOOD: out
BOOLEAN);
procedure HWRITE(L:inout LINE; VALUE:in STD_ULOGIC_VECTOR;
JUSTIFIED:in SIDE := RIGHT; FIELD:in WIDTH := 0);
procedure HREAD(L:inout LINE; VALUE
ut STD_LOGIC_VECTOR);
procedure HREAD(L:inout LINE; VALUE
ut STD_LOGIC_VECTOR; GOOD: out
BOOLEAN);
procedure HWRITE(L:inout LINE; VALUE:in STD_LOGIC_VECTOR;
JUSTIFIED:in SIDE := RIGHT; FIELD:in WIDTH := 0);
-- Octal
procedure OREAD(L:inout LINE; VALUE
ut STD_ULOGIC_VECTOR);
procedure OREAD(L:inout LINE; VALUE
ut STD_ULOGIC_VECTOR; GOOD: out
BOOLEAN);
procedure OWRITE(L:inout LINE; VALUE:in STD_ULOGIC_VECTOR;
JUSTIFIED:in SIDE := RIGHT; FIELD:in WIDTH := 0);
procedure OREAD(L:inout LINE; VALUE
ut STD_LOGIC_VECTOR);
procedure OREAD(L:inout LINE; VALUE
ut STD_LOGIC_VECTOR; GOOD: out
BOOLEAN);
procedure OWRITE(L:inout LINE; VALUE:in STD_LOGIC_VECTOR;
JUSTIFIED:in SIDE := RIGHT; FIELD:in WIDTH := 0);