Forum: FPGA, VHDL & Co. 'x' einem std_logic_vector zuweisen


von Andi Z. (duderino65)


Lesenswert?

hallo,

hab mal wieder n kleines problemchen.
ich habe hier diese anweisung:
1
with ram_sw select   
2
  add_b <= std_logic_vector(wr_adr_b) when '1'
3
, std_logic_vector(rd_adr_b) when '0', 'xxxxx' when others;

leider kann ich hier ja keinen unbestimmten wert einem std_logic_vector 
zuweisen. wenn ich es weglasse ist es ja nicht falsch, aber die 
simulation tut dann nicht.
wenn ich z.b. ein std_logic typ habe dann kann ich da einfach ein < 
...,'x' when others  > dahinter setzen, nur wie mache ich das bei vector 
types?

mfg

Andi

von Andi Z. (duderino65)


Lesenswert?

habe vergessen die typen zu schreiben:

add_b ist ein std_logic_vector,
ram_sw ein std_logic,
wr_adr_b ein unsigned(4 downto 0)

von Läubi .. (laeubi) Benutzerseite


Lesenswert?

1
add_b <= std_logic_vector(wr_adr_b) when ram_sw = '1' else std_logic_vector(rd_adr_b);
 wie wäre es damit? Ich denke mal ram_sw kann nur 0 osder 1 sein.

von Achim (Gast)


Lesenswert?

Für einen Vektor musst du "xxxxx" und nicht 'xxxxx' schreiben.

von Andi Z. (duderino65)


Lesenswert?

danke für die antworten.
ich habe in der std_1164 nachgeschaut und da stand ja X für den 
std_logic type als möglicher wert. mit den "" hab ich das ja schon 
versucht nur leider mit nem kleinen x. mit nem grossen X tut das.

danke


mfg

Andi

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.