11import unittest
22import warnings
33from amaranth import *
4- from amaranth .hdl . ir import UnusedElaboratable
4+ from amaranth .hdl import UnusedElaboratable
55from amaranth .lib import wiring
66from amaranth .lib .wiring import In , Out
77from amaranth .sim import *
@@ -539,7 +539,7 @@ def process():
539539 Const (0b00 , 2 ), # e
540540 Const (0b110 , 3 ), # f
541541 ))
542- yield Settle ()
542+ yield Delay ()
543543
544544 self .assertEqual ((yield dut .f .a .port .w_stb ), 0 )
545545 self .assertEqual ((yield dut .f .b .port .w_stb ), 1 )
@@ -557,9 +557,9 @@ def process():
557557 self .assertEqual ((yield dut .f .e [0 ].w_data ), 0b0 )
558558 self .assertEqual ((yield dut .f .e [1 ].w_data ), 0b0 )
559559
560- yield
560+ yield Tick ()
561561 yield dut .element .w_stb .eq (0 )
562- yield Settle ()
562+ yield Delay ()
563563
564564 self .assertEqual ((yield dut .f .b .data ), 0b101 )
565565 self .assertEqual ((yield dut .f .c .d .data ), 0b00 )
@@ -570,7 +570,7 @@ def process():
570570 yield dut .f .a .r_data .eq (0b1 )
571571 yield dut .f .b .set .eq (0b010 )
572572 yield dut .f .f .clear .eq (0b010 )
573- yield Settle ()
573+ yield Delay ()
574574
575575 self .assertEqual ((yield dut .element .r_data ),
576576 Const .cast (Cat (
@@ -581,11 +581,11 @@ def process():
581581 Const (0b110 , 3 ), # f
582582 )).value )
583583
584- yield
584+ yield Tick ()
585585 yield dut .f .a .r_data .eq (0b0 )
586586 yield dut .f .b .set .eq (0b000 )
587587 yield dut .f .f .clear .eq (0b000 )
588- yield Settle ()
588+ yield Delay ()
589589
590590 self .assertEqual ((yield dut .element .r_data ),
591591 Const .cast (Cat (
@@ -609,8 +609,7 @@ def process():
609609
610610 yield dut .f .b .set .eq (0b001 )
611611 yield dut .f .f .clear .eq (0b111 )
612- yield
613- yield Settle ()
612+ yield Tick ()
614613
615614 self .assertEqual ((yield dut .element .r_data ),
616615 Const .cast (Cat (
@@ -626,7 +625,7 @@ def process():
626625
627626 sim = Simulator (dut )
628627 sim .add_clock (1e-6 )
629- sim .add_sync_process (process )
628+ sim .add_testbench (process )
630629 with sim .write_vcd (vcd_file = open ("test.vcd" , "w" )):
631630 sim .run ()
632631
@@ -930,8 +929,7 @@ def process():
930929 yield dut .bus .r_stb .eq (1 )
931930 yield dut .bus .w_stb .eq (1 )
932931 yield dut .bus .w_data .eq (0xa )
933- yield
934- yield Settle ()
932+ yield Tick ()
935933 self .assertEqual ((yield dut .bus .r_data ), 0x0 )
936934 self .assertEqual ((yield reg_rw_4 .f .a .port .r_stb ), 1 )
937935 self .assertEqual ((yield reg_rw_8 .f .a .port .r_stb ), 0 )
@@ -941,16 +939,14 @@ def process():
941939 self .assertEqual ((yield reg_rw_16 .f .a .port .w_stb ), 0 )
942940 yield dut .bus .r_stb .eq (0 )
943941 yield dut .bus .w_stb .eq (0 )
944- yield
945- yield Settle ()
942+ yield Tick ()
946943 self .assertEqual ((yield reg_rw_4 .f .a .data ), 0xa )
947944
948945 yield dut .bus .addr .eq (1 )
949946 yield dut .bus .r_stb .eq (1 )
950947 yield dut .bus .w_stb .eq (1 )
951948 yield dut .bus .w_data .eq (0xbb )
952- yield
953- yield Settle ()
949+ yield Tick ()
954950 self .assertEqual ((yield dut .bus .r_data ), 0x11 )
955951 self .assertEqual ((yield reg_rw_4 .f .a .port .r_stb ), 0 )
956952 self .assertEqual ((yield reg_rw_8 .f .a .port .r_stb ), 1 )
@@ -960,16 +956,14 @@ def process():
960956 self .assertEqual ((yield reg_rw_16 .f .a .port .w_stb ), 0 )
961957 yield dut .bus .r_stb .eq (0 )
962958 yield dut .bus .w_stb .eq (0 )
963- yield
964- yield Settle ()
959+ yield Tick ()
965960 self .assertEqual ((yield reg_rw_8 .f .a .data ), 0xbb )
966961
967962 yield dut .bus .addr .eq (2 )
968963 yield dut .bus .r_stb .eq (1 )
969964 yield dut .bus .w_stb .eq (1 )
970965 yield dut .bus .w_data .eq (0xcc )
971- yield
972- yield Settle ()
966+ yield Tick ()
973967 self .assertEqual ((yield dut .bus .r_data ), 0x22 )
974968 self .assertEqual ((yield reg_rw_4 .f .a .port .r_stb ), 0 )
975969 self .assertEqual ((yield reg_rw_8 .f .a .port .r_stb ), 0 )
@@ -979,16 +973,14 @@ def process():
979973 self .assertEqual ((yield reg_rw_16 .f .a .port .w_stb ), 0 )
980974 yield dut .bus .r_stb .eq (0 )
981975 yield dut .bus .w_stb .eq (0 )
982- yield
983- yield Settle ()
976+ yield Tick ()
984977 self .assertEqual ((yield reg_rw_16 .f .a .data ), 0x3322 )
985978
986979 yield dut .bus .addr .eq (3 )
987980 yield dut .bus .r_stb .eq (1 )
988981 yield dut .bus .w_stb .eq (1 )
989982 yield dut .bus .w_data .eq (0xdd )
990- yield
991- yield Settle ()
983+ yield Tick ()
992984 self .assertEqual ((yield dut .bus .r_data ), 0x33 )
993985 self .assertEqual ((yield reg_rw_4 .f .a .port .r_stb ), 0 )
994986 self .assertEqual ((yield reg_rw_8 .f .a .port .r_stb ), 0 )
@@ -998,12 +990,11 @@ def process():
998990 self .assertEqual ((yield reg_rw_16 .f .a .port .w_stb ), 1 )
999991 yield dut .bus .r_stb .eq (0 )
1000992 yield dut .bus .w_stb .eq (0 )
1001- yield
1002- yield Settle ()
993+ yield Tick ()
1003994 self .assertEqual ((yield reg_rw_16 .f .a .data ), 0xddcc )
1004995
1005996 sim = Simulator (dut )
1006997 sim .add_clock (1e-6 )
1007- sim .add_sync_process (process )
998+ sim .add_testbench (process )
1008999 with sim .write_vcd (vcd_file = open ("test.vcd" , "w" )):
10091000 sim .run ()
0 commit comments