Digitaltechnik06 VHDL, Test und ein MultiplexerProf. Dr.Jörg Vollrath05 Multiplexer und VHDL |
![]() |
Länge: 9:07 min |
0:11 VHDL Beschreibung 0:46 Kopieren und Verändern 1:57 Architecture 3:05 Beispiel ANDX 4:20 Klammern setzen 4:40 Test ANDX_test 5:45 Unit under test UUT ANDX wird realisiert 6:10 Testmuster erzeugen 7:40 Simulationsergebnis |
Länge: 10:47 min |
0:40 Wahrheitstabelle: Eingänge, Ausgänge 1:48 Analyse Architecture 2:51 Spalte Y: Teilfunktion 2 3:46 Spalte Y Ergebnis 4:26 VHDL Testanalyse 5:35 Zeitdarstellung 6:09 X-Achse 6:35 undefined 7:10 100ns 7:37 VHDL Zeilen, Spalten in der Zeitdarstellung 9:03 Ausgang Y: Wahrheitstabelle und Zeitdarstellung |
Version 4 SHEET 1 1328 1896 WIRE 848 -48 224 -48 WIRE 880 -48 848 -48 WIRE 736 -16 160 -16 WIRE 768 -16 736 -16 WIRE 640 16 80 16 WIRE 672 16 640 16 WIRE 768 16 768 -16 WIRE 880 16 880 -48 WIRE 672 48 672 16 WIRE 880 128 880 64 WIRE 944 128 880 128 WIRE 80 144 80 16 WIRE 768 144 768 64 WIRE 944 144 768 144 WIRE 640 160 640 16 WIRE 928 160 640 160 WIRE 944 160 928 160 WIRE 1056 160 1008 160 WIRE 928 176 928 160 WIRE 944 176 928 176 WIRE 1056 176 1056 160 WIRE 1104 176 1056 176 WIRE 1056 192 1056 176 WIRE 1104 192 1056 192 WIRE 1104 208 1056 208 WIRE 1248 208 1168 208 WIRE 848 224 848 -48 WIRE 944 224 848 224 WIRE 1056 224 1056 208 WIRE 1104 224 1056 224 WIRE 736 240 736 -16 WIRE 944 240 736 240 WIRE 160 256 160 -16 WIRE 672 256 672 96 WIRE 928 256 672 256 WIRE 944 256 928 256 WIRE 1056 256 1056 224 WIRE 1056 256 1008 256 WIRE 928 272 928 256 WIRE 944 272 928 272 WIRE 880 320 880 128 WIRE 944 320 880 320 WIRE 736 336 736 240 WIRE 944 336 736 336 WIRE 672 352 672 256 WIRE 928 352 672 352 WIRE 944 352 928 352 WIRE 1056 352 1008 352 WIRE 928 368 928 352 WIRE 944 368 928 368 WIRE 1056 368 1056 352 WIRE 1104 368 1056 368 WIRE 224 384 224 -48 WIRE 1056 384 1056 368 WIRE 1104 384 1056 384 WIRE 1104 400 1056 400 WIRE 1248 400 1168 400 WIRE 848 416 848 224 WIRE 944 416 848 416 WIRE 1056 416 1056 400 WIRE 1104 416 1056 416 WIRE 736 432 736 336 WIRE 944 432 736 432 WIRE 672 448 672 352 WIRE 928 448 672 448 WIRE 944 448 928 448 WIRE 1056 448 1056 416 WIRE 1056 448 1008 448 WIRE 80 464 80 224 WIRE 160 464 160 336 WIRE 160 464 80 464 WIRE 224 464 160 464 WIRE 928 464 928 448 WIRE 944 464 928 464 WIRE 80 480 80 464 WIRE 640 496 640 160 WIRE 672 496 672 448 WIRE 736 496 736 432 WIRE 768 496 768 144 WIRE 848 496 848 416 WIRE 880 496 880 320 FLAG 80 480 0 FLAG 80 16 IN2 FLAG 160 -16 IN1 FLAG 224 -48 IN0 FLAG 1248 208 Out0 FLAG 1248 400 Out1 SYMBOL voltage 80 128 R0 SYMATTR InstName V2 SYMATTR Value PULSE(0 1 0 1n 1n 199n 400n) SYMBOL voltage 160 240 R0 SYMATTR InstName V3 SYMATTR Value PULSE(0 1 0 1n 1n 99n 200n) SYMBOL voltage 224 368 R0 WINDOW 123 0 0 Left 2 WINDOW 39 0 0 Left 2 SYMATTR InstName V4 SYMATTR Value PULSE(0 1 0 1n 1n 49n 100n) SYMBOL NOT 672 80 R90 SYMATTR InstName X1 SYMBOL NOT 768 48 R90 SYMATTR InstName X2 SYMBOL NOT 880 48 R90 SYMATTR InstName X3 SYMBOL NAND4 976 160 R0 SYMATTR InstName X4 SYMBOL NAND4 1136 208 R0 SYMATTR InstName X5 SYMBOL NAND4 976 256 R0 SYMATTR InstName X6 SYMBOL NAND4 976 352 R0 SYMATTR InstName X7 SYMBOL NAND4 976 448 R0 SYMATTR InstName X8 SYMBOL NAND4 1136 400 R0 SYMATTR InstName X9 TEXT 264 40 Left 2 !.tran 800n TEXT 256 72 Left 2 !.include cmosedu_models.txt TEXT 256 112 Left 2 !.param CDL=100f\n.global VDD TEXT 264 176 Left 2 !VDD VDD 0 DC 1
Eingänge | Signale | Ausgänge | |||||||||||
IN2 | IN1 | IN0 | X1 | X2 | X3 | X4 | X6 | X7 | X8 | OUT0 | OUT1 | ||
0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | ||
0 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | ||
0 | 1 | 0 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | 1 | ||
0 | 1 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 1 | ||
1 | 0 | 0 | 0 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | ||
1 | 0 | 1 | 0 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 0 | ||
1 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | ||
1 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 0 |
|
![]() |
|
VHDL Beschreibung
|
Wert | Bedeutung | Verwendung |
’U’ | Nicht initialisiert | Nicht initialisiertes Signal im Simulator |
’X’ | Undefiniert | Mehr als ein Signaltreiber |
’0’ | Logische '0' | Boolescher Wert |
’1’ | Logische '1' | Boolescher Wert |
’Z’ | Hochohmig | Tri-State Ausgang |
’W’ | Schwach unbekannt | Mehrere Treiber mit L und H |
’L’ | Schwache logische '0' | Pull-down Widerstand |
’H’ | Schwache logische '1' | Pull-up Widerstand |
’-’,D | Don't care | Logikzustand ohne Bedeutung |
- entity ANDX is
- Port ( X : in STD_LOGIC_VECTOR (3 downto 0);
- y : out STD_LOGIC);
- end ANDX;
-
- architecture Behavioral of ANDX is
- signal H1:STD_LOGIC;
- begin
- h1 <= x(1) and x(2);
- y<= (h1 or x(0)) and x(3);
- end Behavioral;
- ENTITY ANDX_test IS
- END ANDX_test;
-
- ARCHITECTURE behavior OF ANDX_test IS
- -- Component Declaration for the Unit Under Test (UUT)
- COMPONENT ANDX
- PORT(
- X : IN std_logic_vector(3 downto 0);
- y : OUT std_logic
- );
- END COMPONENT;
- --Inputs
- signal X : std_logic_vector(3 downto 0); -- := (others => '0');
- --Outputs
- signal y : std_logic;
-
- BEGIN
- -- Instantiate the Unit Under Test (UUT)
- uut: ANDX PORT MAP (
- X => X,
- y => y
- );
-
- -- Stimulus process
- stim_proc: process
- begin
- -- hold reset state for 100 ns.
- wait for 100 ns;
- -- insert stimulus here
- x <= (others => '0'); wait for 100 ns;
- x <= "1000"; wait for 100 ns;
- x(1) <='1'; wait for 100 ns;
- x(2) <='1'; wait for 200 ns;
- x(3 downto 2) <= "00"; wait for 100 ns;
- x <= "1001"; wait for 100 ns;
- wait;
- end process;
- END;
|
|
|
Begriff/Objekt | Kenn ich nicht | Kenne ich | Verstehe ich | Kann ich erklären | Kann ich anwenden einsetzen |
Normalform | |||||
Minterm | |||||
SOP | |||||
Stufigkeit | |||||
Steigende Flanke | |||||
IDE | |||||
STD_LOGIC | |||||
STD_LOGIC_VECTOR | |||||
Implementation | |||||
'wait' keyword | |||||
'process' structure | |||||
Simulator | |||||
COMPONENT structure | |||||
'when' structure |
Version 4 SymbolType BLOCK LINE Normal -32 -48 -15 -48 LINE Normal -32 32 -32 -48 LINE Normal -15 32 -32 32 LINE Normal -4 -46 -15 -48 LINE Normal 3 -41 -4 -46 LINE Normal 11 -32 3 -41 LINE Normal 15 -21 11 -32 LINE Normal 17 -7 15 -21 LINE Normal 16 5 17 -7 LINE Normal 10 17 16 5 LINE Normal 2 26 10 17 LINE Normal -5 30 2 26 LINE Normal -15 32 -5 30 CIRCLE Normal 32 8 17 -7 WINDOW 0 34 -18 Bottom 2 PIN -32 -32 LEFT 8 PINATTR PinName A PINATTR SpiceOrder 1 PIN -32 -16 LEFT 8 PINATTR PinName B PINATTR SpiceOrder 2 PIN -32 0 LEFT 8 PINATTR PinName C PINATTR SpiceOrder 3 PIN -32 16 LEFT 8 PINATTR PinName D PINATTR SpiceOrder 4 PIN 32 0 RIGHT 8 PINATTR PinName Y PINATTR SpiceOrder 5
Version 4 SymbolType BLOCK LINE Normal -32 24 -32 -23 LINE Normal 0 0 -32 24 LINE Normal -32 -23 0 0 CIRCLE Normal 17 11 0 -9 WINDOW 0 -12 -23 Bottom 2 PIN -32 0 NONE 8 PINATTR PinName A PINATTR SpiceOrder 1 PIN 16 0 NONE 8 PINATTR PinName Y PINATTR SpiceOrder 2