Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- module tb;
- typedef int unsigned uint32_t;
- typedef logic [1:0] tid_t;
- typedef tid_t tid_q[$];
- tid_q tid_queue;
- initial begin
- main();
- #1000ns;
- $finish;
- end
- task automatic main();
- gen_stimulus(1);
- gen_stimulus(2);
- gen_stimulus(3);
- gen_stimulus(4);
- endtask
- task automatic gen_stimulus(uint32_t transfers);
- if (transfers == 0) begin
- $display("tid_queue = %p", tid_queue);
- return;
- end
- else begin
- for(tid_t i = 0; i <= 2'b11; i++) begin
- tid_queue.push_back(i);
- gen_stimulus(transfers - 1);
- void'(tid_queue.pop_back());
- if (i == 2'b11) begin
- break;
- end
- end
- end
- endtask
- endmodule
Advertisement
Add Comment
Please, Sign In to add comment