diff --git a/labor_4/Aufgabe_6-3/sim/sclk_gen_tb.v b/labor_4/Aufgabe_6-3/sim/sclk_gen_tb.v index 5b44bf2..3010122 100644 --- a/labor_4/Aufgabe_6-3/sim/sclk_gen_tb.v +++ b/labor_4/Aufgabe_6-3/sim/sclk_gen_tb.v @@ -2,69 +2,67 @@ module sclk_gen_tb; - // Testbench-spezifische Registrier und Nets + // Inputs reg ENA; reg SYNC; reg RESETn; reg CPHA; reg CLK; reg CPOL; + + // Output wire SCLK; - // Instanz des zu testenden Moduls - sclk_gen uut ( - .ENA(ENA), - .SYNC(SYNC), - .RESETn(RESETn), - .CPHA(CPHA), - .CLK(CLK), - .CPOL(CPOL), + // CLOCK + initial begin + CLK = 0; + forever #5 CLK = ~CLK; + end + + // Testszenarien + initial begin + // Eingänge initialisieren + ENA = 0; + SYNC = 0; + RESETn = 1; + CPHA = 0; + CPOL = 0; + + // Reset + #10 RESETn = 0; + #20 RESETn = 1; + + // Test 1: ENA toggelt + #30 ENA = 1; + #20 ENA = 0; + + // Test 2: SYNC toggelt + #40 SYNC = 1; + #20 SYNC = 0; + + // Test 3: CPHA und CPOL Funktion + CPHA = 1; + CPOL = 1; + ENA = 1; // Enable wird aktiviert + #40 CPHA = 0; + #40 CPOL = 0; + + // Enable wird deaktiviert + #50 ENA = 0; + + + #100; + end + + //DUT + sclk_gen dut ( + .ENA(ENA), + .SYNC(SYNC), + .RESETn(RESETn), + .CPHA(CPHA), + .CLK(CLK), + .CPOL(CPOL), .SCLK(SCLK) ); - // Taktgenerator - initial begin - CLK = 0; - forever #5 CLK = ~CLK; // Erzeugt einen Takt mit einer Periode von 10ns - end - - // Teststimuli - initial begin - // Initialisierung der Testbench-Registrier - ENA = 0; - SYNC = 0; - RESETn = 1; - CPHA = 0; - CPOL = 0; - - // Reset-Vorgang - #10; - RESETn = 0; // Aktiver Reset für mindestens einen Taktzyklus - #10; - RESETn = 1; - #10; - - // Testfall 1: Einfache SCLK-Generierung - ENA = 1; // Aktivieren des Takts - SYNC = 0; - CPHA = 0; - CPOL = 0; - #100; // Warten für einige Taktzyklen - - // Testfall 2: SYNC-Logik - SYNC = 1; - #10; - SYNC = 0; - #50; // SYNC-Logik testen - - // Testfall 3: Taktphasen und -polarität - CPHA = 1; - CPOL = 1; - #100; // Taktphasen und -polarität testen - - // Testfall 4: Deaktivierung des Takts - ENA = 0; - #50; // Überprüfung der Deaktivierung - end - -endmodule \ No newline at end of file +endmodule diff --git a/labor_4/Aufgabe_6-3/sim/vsim.wlf b/labor_4/Aufgabe_6-3/sim/vsim.wlf index 82cdef3..618350a 100644 Binary files a/labor_4/Aufgabe_6-3/sim/vsim.wlf and b/labor_4/Aufgabe_6-3/sim/vsim.wlf differ diff --git a/labor_4/Aufgabe_6-3/sim/wave.tcl b/labor_4/Aufgabe_6-3/sim/wave.tcl deleted file mode 100644 index e69de29..0000000 diff --git a/labor_4/Aufgabe_6-3/sim/work/_info b/labor_4/Aufgabe_6-3/sim/work/_info index eafca61..43ee219 100644 --- a/labor_4/Aufgabe_6-3/sim/work/_info +++ b/labor_4/Aufgabe_6-3/sim/work/_info @@ -5,11 +5,11 @@ cModel Technology Z0 dC:\Users\Erdem\Desktop\labor_eds\labor_4\Aufgabe_6-3\sim vsclk_gen !i10b 1 -!s100 EPaQk]cFnfQH_mYOB8_5TZD?_`[>lFKM33g0 +Z3 I][D:^fY7SLhzg6bYFP=gi1 Z4 V?CLIW_?@SD^S1h3`;nYD63 R1 -Z5 w1709144183 +Z5 w1709150496 Z6 8sclk_gen_tb.v Z7 Fsclk_gen_tb.v L0 3 @@ -35,9 +35,9 @@ r1 31 o-O0 !i10b 1 -Z8 !s100 h68VlXMYSWiC>i8hgK8jb1 +Z8 !s100 l=lNNMiXESXLz5km4n]Io1 !s85 0 -Z9 !s108 1709148338.399000 +Z9 !s108 1709150503.004000 Z10 !s107 sclk_gen_tb.v| Z11 !s90 -reportprogress|300|sclk_gen_tb.v| !s101 -O0 diff --git a/labor_4/Aufgabe_6-3/sim/work/sclk_gen/_primary.dat b/labor_4/Aufgabe_6-3/sim/work/sclk_gen/_primary.dat index 963ee93..13bc60d 100644 Binary files a/labor_4/Aufgabe_6-3/sim/work/sclk_gen/_primary.dat and b/labor_4/Aufgabe_6-3/sim/work/sclk_gen/_primary.dat differ diff --git a/labor_4/Aufgabe_6-3/sim/work/sclk_gen/_primary.dbs b/labor_4/Aufgabe_6-3/sim/work/sclk_gen/_primary.dbs index 35a4657..7f1ee32 100644 Binary files a/labor_4/Aufgabe_6-3/sim/work/sclk_gen/_primary.dbs and b/labor_4/Aufgabe_6-3/sim/work/sclk_gen/_primary.dbs differ diff --git a/labor_4/Aufgabe_6-3/sim/work/sclk_gen/verilog.prw b/labor_4/Aufgabe_6-3/sim/work/sclk_gen/verilog.prw index 809296b..a4f411d 100644 Binary files a/labor_4/Aufgabe_6-3/sim/work/sclk_gen/verilog.prw and b/labor_4/Aufgabe_6-3/sim/work/sclk_gen/verilog.prw differ diff --git a/labor_4/Aufgabe_6-3/sim/work/sclk_gen/verilog.psm b/labor_4/Aufgabe_6-3/sim/work/sclk_gen/verilog.psm index 6cd7907..a5662b2 100644 Binary files a/labor_4/Aufgabe_6-3/sim/work/sclk_gen/verilog.psm and b/labor_4/Aufgabe_6-3/sim/work/sclk_gen/verilog.psm differ diff --git a/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/_primary.dat b/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/_primary.dat index fcc64eb..b8295b1 100644 Binary files a/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/_primary.dat and b/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/_primary.dat differ diff --git a/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/_primary.dbs b/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/_primary.dbs index 37bf702..310931c 100644 Binary files a/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/_primary.dbs and b/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/_primary.dbs differ diff --git a/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/verilog.prw b/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/verilog.prw index 4fd9cf0..b41f11e 100644 Binary files a/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/verilog.prw and b/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/verilog.prw differ diff --git a/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/verilog.psm b/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/verilog.psm index 454f9ee..ec6c770 100644 Binary files a/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/verilog.psm and b/labor_4/Aufgabe_6-3/sim/work/sclk_gen_tb/verilog.psm differ