PCM_DECODER_TEST_3.v
`timescale 10ns/1ns
module PCM_DECODER_TEST_3;
reg clk;
reg rst;
reg din;
wire [7:0] dout;
wire D_en;
wire F_en;
parameter half_cycle = 10;
PCM_DECODER ut3(
.clk(clk),
.rst(rst),
.din(din),
.dout(dout),
.D_en(D_en),
.F_en(F_en)
);
initial begin
clk = 0;
forever begin
clk = # half_cycle ~ clk;
end
end
initial begin
rst = 1;
# (1 * half_cycle) rst = 0;
# (2 * half_cycle) rst = 1;
end
initial begin
din <= 0;
repeat (4) @ (posedge clk);
din <= 1;
repeat (16) @ (posedge clk);
din <= 0;
repeat (16) @ (posedge clk);
din <= 1;
repeat (160) @ (posedge clk);
din <= 1;
wave_11();
wave_11();
wave_01();
wave_10();
repeat (48) @ (posedge clk);
din <= 0;
repeat (16) @ (posedge clk);
din <= 1;
repeat (32) @ (posedge clk);
din <= 0;
repeat (20) @ (posedge clk);
$finish;
end
initial begin
$fsdbDumpfile("./verdiFsdb/PCM_DECODER_TEST_3.fsdb");
$fsdbDumpvars(0);
end
task wave_00();
repeat (16) @ (posedge clk);
din <= 0;
repeat (16) @ (posedge clk);
din <= 1;
repeat (128) @ (posedge clk);
din <= 0;
repeat (16) @ (posedge clk);
din <= 1;
repeat (16) @ (posedge clk);
din <= 1;
endtask
task wave_01();
repeat (16) @ (posedge clk);
din <= 0;
repeat (16) @ (posedge clk);
din <= 1;
repeat (96) @ (posedge clk);
din <= 0;
repeat (16) @ (posedge clk);
din <= 1;
repeat (48) @ (posedge clk);
din <= 1;
endtask
task wave_10();
repeat (48) @ (posedge clk);
din <= 0;
repeat (16) @ (posedge clk);
din <= 1;
repeat (96) @ (posedge clk);
din <= 0;
repeat (16) @ (posedge clk);
din <= 1;
repeat (16) @ (posedge clk);
din <= 1;
endtask
task wave_11();
repeat (48) @ (posedge clk);
din <= 0;
repeat (16) @ (posedge clk);
din <= 1;
repeat (64) @ (posedge clk);
din <= 0;
repeat (16) @ (posedge clk);
din <= 1;
repeat (48) @ (posedge clk);
din <= 1;
endtask
endmodule
Experiment Result
![在这里插入图片描述](https://img-blog.csdnimg.cn/6a45e822687c487e86ddd5ae4bc74cc1.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/f1ec304c04514fd8b6a8cae7757eb736.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/c1eacbe5b12e4b9d9cb89edb3a2c81ef.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/02d8c18aa72041b0a37e770df04c76df.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/c6303d978d104b2ab5f24f12405b2825.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/067fab655c08470d88b24b848c00a94c.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/d1ed4e89e9a5494e9c41133884ad6e77.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/1ddb535483f14019af56b446e1a94691.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/38913d7e7e2d437697a80204e1e755ea.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/7d90c71ff7b04a35999aabe68b25f4e4.png)
![在这里插入图片描述](https://img-blog.csdnimg.cn/21c94a49fa1445a0a617f74f8d9ebcc9.png)