VHDL-Forum

 
Sie sind nicht eingeloggt.
LoginLogin Kostenlos anmeldenKostenlos anmelden
BeiträgeBeiträge MembersMitglieder SucheSuche HilfeHilfe
VotesUmfragen FilesDateien CalendarKalender BookmarksBookmarks
Hilfe, ich sehe mein Fehler nicht...

Anfang   zurück   weiter   Ende
Autor Beitrag
Topentity
Gast
New PostErstellt: 10.05.07, 19:56  Betreff:  Hilfe, ich sehe mein Fehler nicht...  drucken  weiterempfehlen Antwort mit Zitat  

Hallo ich habe mal einen 4-Bit-Paritätschecker in VHDl programmiert und versucht den mit einem 4-Bit-Paritätgenerator über Toentity zu verbinden...

Leider bekomme ich keine vollstendige SChaltung hin, die RTL Schematic gibt mir immer weider nur ein Teil der gesamten Schaltung wieder...

Hier sind Quellcodes:

library ieee;
use ieee.std_logic_1164.all;


entity Topentity is
port(A,B,C,D,E,F,G,H: in bit;
Pout: out bit;
OK: out bit);

end Topentity;

architecture VERHALTEN of Topentity is

signal Temp: bit;

component PARITY4B
port(A_in,B_in,C_in,D_in: in bit;
Pout: out bit);
end component;

component PARITYChecker
port(E_in,F_in,G_in,H_in, Pin: in bit;
OK: out bit);
end component;

begin

GEN_0: PARITY4B
port map(A_in => A,B_in => B,C_in => C,D_in => D, Pout => Temp);


CHK_0: PARITYChecker
port map(E_in => E, F_in => F, G_in => G, H_in => H, Pin => Temp , OK => OK);

end architecture VERHALTEN;
-------------------------------------------

library ieee;
use ieee.std_logic_1164.all;

entity PARITY4B is
port(A_in,B_in,C_in,D_in: in bit;
Pout: out bit);


end PARITY4B;

architecture VERHALTEN of PARITY4B is
signal Z1, Z2: bit;

begin

Z1<=(A_in nand (A_in nand B_in)) nand (B_in nand(A_in nand B_in));
Z2<=(C_in nand (C_in nand D_in)) nand (D_in nand(C_in nand D_in));
Pout<= (Z1 nand (Z1 nand Z2))nand ( Z2 nand(Z1 nand Z2));

end VERHALTEN;
---------------------------------

library ieee;
use ieee.std_logic_1164.all;


entity PARITYChecker is
port(E_in,F_in,G_in,H_in, Pin: in bit;
OK: out bit);

end PARITYChecker;

architecture VERHALTEN of PARITYChecker is
signal Z1, Z2, y: bit;
begin

Z1<=(E_in nand (E_in nand F_in)) nand (F_in nand(E_in nand F_in));
Z2<=(G_in nand (G_in nand H_in)) nand (H_in nand(G_in nand H_in));
y<= (Z1 nand (Z1 nand Z2))nand ( Z2 nand(Z1 nand Z2));

PARCHECK: process (y)
begin
if (((Pin and y) = '1') or ((Pin and y) = '0'))
then OK <= '1';
else OK <= '0';
end if;
end process PARCHECK;


end VERHALTEN;




Ich hoffe es kann mir jemand helfen
nach oben
Sortierung ndern:  
Anfang   zurück   weiter   Ende
Seite 1 von 1
Gehe zu:   
Search

powered by carookee.com - eigenes profi-forum kostenlos

Design © trevorj