Testowanie szeregowe i twierdzenia z System-Verilog
Mam wyjście szeregowe modułu verilog, które chciałbym przetestować za pomocą system-verilog.
Wyjście o nazwie „SO” wyświetli coś takiego jak 8'hC6, podając poprawne wejście szeregowe „SI” o wartości powiedzmy 8'h9A.
Czy istnieje prosty sposób na kodowanie / dekodowanie seryjnych we / wy bez konieczności jawnego opisywania każdego sygnału?
Na przykład:
assert property @(posedge clk) $rose(EN) |-> ##[1:3] SI ##1 !SI[*2] ##1 SI[*2] ##1 !SI ##1 SI ##1 !SI
##[1:3] SO[*2] ##1 !SO[*3] ##1 SO[*2] ##1 !SO;
Wygląda jak pomieszany bałagan i jest ledwie czytelny. Chciałbym po prostu napisać
8'h9A ##[1:3] 8'hC6
ale oczywiście to nie działa. Wszelkie porady lub przykłady byłyby mile widziane. Z góry dziękuję.