mirror of
https://github.com/Polprzewodnikowy/SummerCart64.git
synced 2024-11-22 14:09:16 +01:00
120 lines
1.9 KiB
Systemverilog
120 lines
1.9 KiB
Systemverilog
module usb_ft1248_tb;
|
|
|
|
logic clk;
|
|
logic reset;
|
|
|
|
usb_scb usb_scb ();
|
|
fifo_bus fifo_bus ();
|
|
|
|
logic usb_pwrsav;
|
|
logic usb_clk;
|
|
logic usb_cs;
|
|
logic usb_miso;
|
|
logic [7:0] usb_miosi;
|
|
|
|
usb_ft1248 usb_ft1248 (
|
|
.clk(clk),
|
|
.reset(reset),
|
|
.usb_scb(usb_scb),
|
|
.fifo_bus(fifo_bus),
|
|
.usb_pwrsav(usb_pwrsav),
|
|
.usb_clk(usb_clk),
|
|
.usb_cs(usb_cs),
|
|
.usb_miso(usb_miso),
|
|
.usb_miosi(usb_miosi)
|
|
);
|
|
|
|
initial begin
|
|
clk = 1'b0;
|
|
forever begin
|
|
clk = ~clk; #0.5;
|
|
end
|
|
end
|
|
|
|
initial begin
|
|
reset = 1'b1;
|
|
#10;
|
|
reset = 1'b0;
|
|
end
|
|
|
|
initial begin
|
|
$dumpfile("traces/usb_ft1248_tb.vcd");
|
|
|
|
$dumpvars();
|
|
|
|
usb_pwrsav = 1'b1;
|
|
usb_miso = 1'b1;
|
|
|
|
#100;
|
|
|
|
fifo_bus.tx_write = 1'b1;
|
|
#100;
|
|
fifo_bus.tx_write = 1'b0;
|
|
|
|
#103;
|
|
|
|
usb_miso = 1'b0;
|
|
#80;
|
|
usb_scb.write_buffer_flush = 1'b1;
|
|
#1;
|
|
usb_scb.write_buffer_flush = 1'b0;
|
|
#20;
|
|
usb_miso = 1'b1;
|
|
#26;
|
|
usb_miso = 1'b0;
|
|
|
|
#4430;
|
|
|
|
usb_miso = 1'b1;
|
|
#13;
|
|
usb_miso = 1'b0;
|
|
|
|
#79;
|
|
|
|
fifo_bus.rx_read = 1'b1;
|
|
#1;
|
|
fifo_bus.rx_read = 1'b0;
|
|
|
|
#10;
|
|
|
|
fifo_bus.rx_read = 1'b1;
|
|
#1;
|
|
fifo_bus.rx_read = 1'b0;
|
|
|
|
#80;
|
|
|
|
fifo_bus.rx_read = 1'b1;
|
|
#1;
|
|
fifo_bus.rx_read = 1'b0;
|
|
|
|
#200;
|
|
|
|
usb_scb.reset_on_ack = 1'b1;
|
|
#1;
|
|
usb_scb.reset_on_ack = 1'b0;
|
|
|
|
#200;
|
|
|
|
usb_scb.reset_off_ack = 1'b1;
|
|
#1;
|
|
usb_scb.reset_off_ack = 1'b0;
|
|
|
|
#200;
|
|
|
|
usb_scb.fifo_flush = 1'b1;
|
|
#1;
|
|
usb_scb.fifo_flush = 1'b0;
|
|
|
|
#3000;
|
|
|
|
usb_scb.fifo_flush = 1'b1;
|
|
#1;
|
|
usb_scb.fifo_flush = 1'b0;
|
|
|
|
#6000;
|
|
|
|
$finish;
|
|
end
|
|
|
|
endmodule
|