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