118 lines
2.5 KiB
Coq
118 lines
2.5 KiB
Coq
|
|
`timescale 1 ns / 1 ps
|
||
|
|
|
||
|
|
|
||
|
|
module slaveParserTb(
|
||
|
|
|
||
|
|
);
|
||
|
|
|
||
|
|
reg clock;
|
||
|
|
reg reset;
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
wire io_downIn_ready;
|
||
|
|
reg io_downIn_valid;
|
||
|
|
reg [7:0] io_downIn_bits_tdata;
|
||
|
|
reg io_downIn_bits_tlast;
|
||
|
|
reg io_downIn_bits_tuser;
|
||
|
|
reg io_downOut_ready;
|
||
|
|
wire io_downOut_valid;
|
||
|
|
wire [7:0] io_downOut_bits_tdata;
|
||
|
|
wire io_downOut_bits_tlast;
|
||
|
|
wire io_downOut_bits_tuser;
|
||
|
|
wire io_upIn_ready;
|
||
|
|
reg io_upIn_valid;
|
||
|
|
reg [7:0] io_upIn_bits_tdata;
|
||
|
|
reg io_upIn_bits_tlast;
|
||
|
|
reg io_upIn_bits_tuser;
|
||
|
|
reg io_upOut_ready;
|
||
|
|
wire io_upOut_valid;
|
||
|
|
wire [7:0] io_upOut_bits_tdata;
|
||
|
|
wire io_upOut_bits_tlast;
|
||
|
|
wire io_upOut_bits_tuser;
|
||
|
|
wire [14:0] io_sram_r_addr;
|
||
|
|
wire [7:0] io_sram_r_dataw;
|
||
|
|
reg [7:0] io_sram_r_datar;
|
||
|
|
wire io_sram_r_enw;
|
||
|
|
wire io_sram_r_enr;
|
||
|
|
wire [14:0] io_sram_w_addr;
|
||
|
|
wire [7:0] io_sram_w_dataw;
|
||
|
|
reg [7:0] io_sram_w_datar;
|
||
|
|
wire io_sram_w_enw;
|
||
|
|
wire io_sram_w_enr;
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
s_SlaveParser SlaveParser(
|
||
|
|
.clock(clock),
|
||
|
|
.reset(reset),
|
||
|
|
.io_downIn_ready(io_downIn_ready),
|
||
|
|
.io_downIn_valid(io_downIn_valid),
|
||
|
|
.io_downIn_bits_tdata(io_downIn_bits_tdata),
|
||
|
|
.io_downIn_bits_tlast(io_downIn_bits_tlast),
|
||
|
|
.io_downIn_bits_tuser(io_downIn_bits_tuser),
|
||
|
|
.io_downOut_ready(io_downOut_ready),
|
||
|
|
.io_downOut_valid(io_downOut_valid),
|
||
|
|
.io_downOut_bits_tdata(io_downOut_bits_tdata),
|
||
|
|
.io_downOut_bits_tlast(io_downOut_bits_tlast),
|
||
|
|
.io_downOut_bits_tuser(io_downOut_bits_tuser),
|
||
|
|
.io_upIn_ready(io_upIn_ready),
|
||
|
|
.io_upIn_valid(io_upIn_valid),
|
||
|
|
.io_upIn_bits_tdata(io_upIn_bits_tdata),
|
||
|
|
.io_upIn_bits_tlast(io_upIn_bits_tlast),
|
||
|
|
.io_upIn_bits_tuser(io_upIn_bits_tuser),
|
||
|
|
.io_upOut_ready(io_upOut_ready),
|
||
|
|
.io_upOut_valid(io_upOut_valid),
|
||
|
|
.io_upOut_bits_tdata(io_upOut_bits_tdata),
|
||
|
|
.io_upOut_bits_tlast(io_upOut_bits_tlast),
|
||
|
|
.io_upOut_bits_tuser(io_upOut_bits_tuser),
|
||
|
|
.io_sram_r_addr(io_sram_r_addr),
|
||
|
|
.io_sram_r_dataw(io_sram_r_dataw),
|
||
|
|
.io_sram_r_datar(io_sram_r_datar),
|
||
|
|
.io_sram_r_enw(io_sram_r_enw),
|
||
|
|
.io_sram_r_enr(io_sram_r_enr),
|
||
|
|
.io_sram_w_addr(io_sram_w_addr),
|
||
|
|
.io_sram_w_dataw(io_sram_w_dataw),
|
||
|
|
.io_sram_w_datar(io_sram_w_datar),
|
||
|
|
.io_sram_w_enw(io_sram_w_enw),
|
||
|
|
.io_sram_w_enr(io_sram_w_enr)
|
||
|
|
);
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
|
||
|
|
initial begin
|
||
|
|
clock = 0;
|
||
|
|
reset = 0;
|
||
|
|
|
||
|
|
#100
|
||
|
|
reset <= 1;
|
||
|
|
|
||
|
|
#100
|
||
|
|
reset <= 0;
|
||
|
|
|
||
|
|
#160000
|
||
|
|
$display("Time Out !!!");
|
||
|
|
$stop;
|
||
|
|
end
|
||
|
|
|
||
|
|
initial begin
|
||
|
|
forever begin #10 clock <= ~clock; end
|
||
|
|
end
|
||
|
|
|
||
|
|
initial
|
||
|
|
begin
|
||
|
|
$dumpfile("./build/wave.vcd"); //生成的vcd文件名称
|
||
|
|
$dumpvars(0, slaveParserTb);//tb模块名称
|
||
|
|
end
|
||
|
|
|
||
|
|
endmodule
|
||
|
|
|