Hallo,
ich versuche ueber 2x 4 Schalter 2 Zahlen zu multiplizieren und mittels
LEDs das Ergbnis anzeigen zu lassen... jedoch bekomme ich jedesmal den
fehler:
Type of z is incompatible with type of *.
Weiss einer von euch wieso?
Vielen Dank im voraus.
Hier der Code:
1 | library IEEE;
|
2 | use IEEE.STD_LOGIC_1164.ALL;
|
3 | use IEEE.NUMERIC_STD.ALL;
|
4 |
|
5 |
|
6 | entity multi is
|
7 | Port (
|
8 | sw: in STD_LOGIC_VECTOR(3 downto 0); --Switches (SW7 - SW4)
|
9 | sw2: in STD_LOGIC_VECTOR(3 downto 0); --Switches (SW4 - SW1)
|
10 | LED : out STD_LOGIC_VECTOR(7 downto 0);
|
11 | );
|
12 | end multi;
|
13 |
|
14 |
|
15 | architecture Behavioral of multi is
|
16 |
|
17 | signal x: unsigned(3 downto 0);
|
18 | signal y: unsigned(3 downto 0);
|
19 | signal z: signed(7 downto 0);
|
20 |
|
21 |
|
22 | begin
|
23 |
|
24 | x <= unsigned(sw);
|
25 | y <= unsigned(sw2);
|
26 |
|
27 | z <= y * x;
|
28 |
|
29 | LED <= std_logic_vector(z);
|
30 |
|
31 | end Behavioral;
|