@@ -17,6 +17,7 @@ def simulation_test(dut, process):
1717 sim .run ()
1818
1919
20+ # TODO: Add test cases for continuous RX
2021class AsyncSerialRXTestCase (unittest .TestCase ):
2122 def tx_period (self ):
2223 for _ in range ((yield self .dut .divisor ) + 1 ):
@@ -29,10 +30,10 @@ def tx_bits(self, bits):
2930
3031 def rx_test (self , bits , * , data = None , errors = None ):
3132 def process ():
32- self .assertFalse ((yield self .dut .rdy ))
33+ self .assertFalse ((yield self .dut .r_rdy ))
3334 yield self .dut .ack .eq (1 )
3435 yield from self .tx_bits (bits )
35- while not (yield self .dut .rdy ):
36+ while not (yield self .dut .r_rdy ):
3637 yield
3738 if data is not None :
3839 self .assertFalse ((yield self .dut .err ))
@@ -45,35 +46,35 @@ def process():
4546
4647 def test_8n1 (self ):
4748 self .dut = AsyncSerialRX (divisor = 7 , data_bits = 8 , parity = "none" )
48- self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 1 ], data = 0b10101110 )
49+ self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 1 ], data = 0b01110101 )
4950
5051 def test_16n1 (self ):
5152 self .dut = AsyncSerialRX (divisor = 7 , data_bits = 16 , parity = "none" )
5253 self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 ,1 ,1 ,1 ,1 ,0 ,0 ,0 ,0 , 1 ],
53- data = 0b1010111011110000 )
54+ data = 0b0000111101110101 )
5455
5556 def test_8m1 (self ):
5657 self .dut = AsyncSerialRX (divisor = 7 , data_bits = 8 , parity = "mark" )
57- self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 1 , 1 ], data = 0b10101110 )
58- self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,0 ,0 , 1 , 1 ], data = 0b10101100 )
58+ self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 1 , 1 ], data = 0b01110101 )
59+ self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,0 ,0 , 1 , 1 ], data = 0b00110101 )
5960 self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 0 , 1 ], errors = {"parity" })
6061
6162 def test_8s1 (self ):
6263 self .dut = AsyncSerialRX (divisor = 7 , data_bits = 8 , parity = "space" )
63- self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 0 , 1 ], data = 0b10101110 )
64- self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,0 ,0 , 0 , 1 ], data = 0b10101100 )
64+ self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 0 , 1 ], data = 0b01110101 )
65+ self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,0 ,0 , 0 , 1 ], data = 0b00110101 )
6566 self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 1 , 1 ], errors = {"parity" })
6667
6768 def test_8e1 (self ):
6869 self .dut = AsyncSerialRX (divisor = 7 , data_bits = 8 , parity = "even" )
69- self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 1 , 1 ], data = 0b10101110 )
70- self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,0 ,0 , 0 , 1 ], data = 0b10101100 )
70+ self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 1 , 1 ], data = 0b01110101 )
71+ self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,0 ,0 , 0 , 1 ], data = 0b00110101 )
7172 self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 0 , 1 ], errors = {"parity" })
7273
7374 def test_8o1 (self ):
7475 self .dut = AsyncSerialRX (divisor = 7 , data_bits = 8 , parity = "odd" )
75- self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 0 , 1 ], data = 0b10101110 )
76- self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,0 ,0 , 1 , 1 ], data = 0b10101100 )
76+ self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 0 , 1 ], data = 0b01110101 )
77+ self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,0 ,0 , 1 , 1 ], data = 0b00110101 )
7778 self .rx_test ([0 , 1 ,0 ,1 ,0 ,1 ,1 ,1 ,0 , 1 , 1 ], errors = {"parity" })
7879
7980 def test_err_frame (self ):
@@ -84,15 +85,16 @@ def test_err_overflow(self):
8485 self .dut = AsyncSerialRX (divisor = 7 )
8586
8687 def process ():
87- self .assertFalse ((yield self .dut .rdy ))
88+ self .assertFalse ((yield self .dut .r_rdy ))
8889 yield from self .tx_bits ([0 , 0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 , 1 ])
8990 yield from self .tx_period ()
90- self .assertFalse ((yield self .dut .rdy ))
91+ self .assertFalse ((yield self .dut .r_rdy ))
9192 self .assertTrue ((yield self .dut .err .overflow ))
9293
9394 simulation_test (self .dut , process )
9495
9596
97+ # TODO: Add test cases for continuous TX
9698class AsyncSerialTXTestCase (unittest .TestCase ):
9799 def tx_period (self ):
98100 for _ in range ((yield self .dut .divisor ) + 1 ):
0 commit comments