Forum: FPGA, VHDL & Co. Bitweise Vergleich VHDL


von Martin (Gast)


Lesenswert?

Hallo,
wie funktioniert in VHDL ein Bitweiser logischer Vergleich eines 
Logikvectors?
1
ARCHITECTURE Behavior OF Part_II IS
2
SIGNAL X_IN,Y_IN,M_OUT: std_logic_vector(3 DOWNTO 0);
3
SIGNAL SWITCH: std_logic;
4
5
BEGIN
6
LEDR <=SW;
7
SWITCH<=SW(9);
8
X_IN<= SW(3 DOWNTO 0);
9
Y_IN<=SW(7 DOWNTO 4);
10
-- Dies funktioniert nicht. Logisch, da 4 Logic-States mit Einem verglichen -- wird. Alternative--> IF
11
M_OUT<=(NOT (SWITCH) AND X_IN) OR (SWITCH AND Y_IN);
12
LEDG<=M_OUT;
13
END Behavior;

Mit IF würde es natürlich funktionieren, aber wahrscheinlich nicht sehr 
elegant. Gibt es in VHDL einen Operator der bedeutet: Vergleiche Bit für 
Bit?

Viele Grüße Martin

von user (Gast)


Lesenswert?

ja der = operator

out <= '1' when a = b else '0'

von user (Gast)


Lesenswert?

oder auch so

out <= and_reduce(a xnor b);

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.