Forum: FPGA, VHDL & Co. Multiplizieren


von Fellap (Gast)


Lesenswert?

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;

von Philip K. (philip_k)


Lesenswert?

Warum soll die Multiplikation von zwei unsigned Werten signed sein?

von Fellap (Gast)


Lesenswert?

und das war der Fehler! - Danke :)

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.