Advertisement
Guest User

Untitled

a guest
Oct 15th, 2019
214
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. primitive t_flipflop(q, clk, rst, en);
  2.   output q;
  3.   input clk, rst, en;
  4.   reg q;
  5.   table
  6.   // clk  rst  en  : old q : q
  7.       ?    1   ?   :   ?   : 0;
  8.      (01)  0   0   :   ?   : -;
  9.      (01)  0   1   :   0   : 1;
  10.      (01)  0   1   :   1   : 0;
  11.      (??)  0   ?   :   ?   : -;
  12.       ?  (??)  ?   :   ?   : -;
  13.       ?    ?  (??) :   ?   : -;
  14.   endtable
  15. endprimitive
  16.  
  17. module testbench;
  18.   reg clk, rst, en;
  19.   wire q;
  20.   t_flipflop tff(q, clk, rst, en);
  21.  
  22.   always begin
  23.     #1 clk = 0;
  24.     #1 clk = 1;
  25.   end
  26.  
  27.   initial begin
  28.     rst = 1;
  29.     en = 0;
  30.     #2 rst = 0;
  31.     en = 1;
  32.     #5 en = 1;
  33.     #5 en = 0;
  34.     #3 rst = 1;
  35.     #3 $finish;
  36.   end
  37.   initial $monitor($time, " clk=%d rst=%d en=%d q=%d", clk, rst, en, q);
  38. endmodule
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement