003
25.07.2004, 18:27 Uhr
Tommi Bisic
|
Genau Pablo, es handelt sich um VHDL Ich habe auch die kompletten Lösungen nur weiss ich leider nicht wie ich mithilfe des "OrCAD Simulate" eine Ausschnitt aus der Simulation in der die Rechnung 'A'+'8'='12' (h) oder '1010'+'1000'='10010' (b) zu sehen ist bekomme.Vielleicht hba eich auch oben den falschen Code reingepostet und folgender ist richtig:
Code: |
--------adder4.vhd--------
library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all;
entity adder4 is --Entity 4 - Bit Addierer mit Eingängen a,b und Ausgang s port (a,b : in std_logic_vector(3 downto 0); s: out std_logic_vector(4 downto 0)); end;
--Strukturbeschreibung von adder4 architecture struc of adder4 is component fa --Komponente Volladdierer port (a,b: in std_logic; s: out std_logic; ci: in std_logic; cg,cp:out std_logic); end component; component clag --Komponente Carry Look Ahead Generator port (ci:in std_logic; co,cp,cg:out std_logic; g0,p0:in std_logic; c1:out std_logic;g1,p1:in std_logic; c2:out std_logic;g2,p2:in std_logic; c3:out std_logic;g3,p3:in std_logic); end component; signal cg,cp,low, --Signaldeklaration für inneren Ablauf von adder4 c_1,c_2,c_3, cg_0,cg_1,cg_2,cg_3, cp_0,cp_1,cp_2,cp_3:std_logic;
begin --Portzweisungen low <= '0'; --Signal low das an ci des CLAGs und an c0 von FA0 anliegt --Portzweisungen der Volladdierer
Adder0: fa port map (a=>a(0),b=>b(0),s=>s(0),ci=>low,cg=>cg_0,cp=>cp_0); Adder1: fa port map (a=>a(1),b=>b(1),s=>s(1),ci=>c_1,cg=>cg_1,cp=>cp_1); Adder2: fa port map (a=>a(2),b=>b(2),s=>s(2),ci=>c_2,cg=>cg_2,cp=>cp_2); Adder3: fa port map (a=>a(3),b=>b(3),s=>s(3),ci=>c_3,cg=>cg_3,cp=>cp_3); --Portzweisungen des CLAGs clag: clag port map (ci=>low,co=>s(4),cp=>cp,cg=>cg, g0=>cg_0,p0=>cp_0,c1=>c_1, g1=>cg_1,p1=>cp_1,c2=>c_2,g2=>cg_2, p2=>cp_2,c3=>c_3,g3=>cg_3,p3=>cp_3);
end struc; --Ende Strukturbeschreibung
|
ARGH!!!ich muss das morgen abgeben, da ich sonst durchfliege und weiss net was ich tun soll.Bitte helft mir |