Line 6... |
Line 6... |
// / /\/ /
|
// / /\/ /
|
// /___/ \ / Vendor: Xilinx
|
// /___/ \ / Vendor: Xilinx
|
// \ \ \/ Version : 8.2.02i
|
// \ \ \/ Version : 8.2.02i
|
// \ \ Application : ISE
|
// \ \ Application : ISE
|
// / / Filename : cpu8080_tbw.tfw
|
// / / Filename : cpu8080_tbw.tfw
|
// /___/ /\ Timestamp : Sat Nov 04 23:09:57 2006
|
// /___/ /\ Timestamp : Sat Nov 18 13:39:13 2006
|
// \ \ / \
|
// \ \ / \
|
// \___\/\___\
|
// \___\/\___\
|
//
|
//
|
//Command:
|
//Command:
|
//Design Name: cpu8080_tbw
|
//Design Name: cpu8080_tbw
|
Line 36... |
Line 36... |
wire vsync_n;
|
wire vsync_n;
|
reg ps2_clk = 1'b0;
|
reg ps2_clk = 1'b0;
|
reg ps2_data = 1'b0;
|
reg ps2_data = 1'b0;
|
reg reset_n = 1'b0;
|
reg reset_n = 1'b0;
|
reg clock = 1'b0;
|
reg clock = 1'b0;
|
|
wire [7:0] diag;
|
|
|
parameter PERIOD = 40;
|
parameter PERIOD = 40;
|
parameter real DUTY_CYCLE = 0.5;
|
parameter real DUTY_CYCLE = 0.5;
|
parameter OFFSET = 100;
|
parameter OFFSET = 100;
|
|
|
Line 70... |
Line 71... |
.hsync_n(hsync_n),
|
.hsync_n(hsync_n),
|
.vsync_n(vsync_n),
|
.vsync_n(vsync_n),
|
.ps2_clk(ps2_clk),
|
.ps2_clk(ps2_clk),
|
.ps2_data(ps2_data),
|
.ps2_data(ps2_data),
|
.reset_n(reset_n),
|
.reset_n(reset_n),
|
.clock(clock));
|
.clock(clock),
|
|
.diag(diag));
|
|
|
integer TX_FILE = 0;
|
integer TX_FILE = 0;
|
integer TX_ERROR = 0;
|
integer TX_ERROR = 0;
|
|
|
initial begin // Open the results file...
|
initial begin // Open the results file...
|
TX_FILE = $fopen("results.txt");
|
TX_FILE = $fopen("results.txt");
|
#100040 // Final time: 100040 ns
|
#200040 // Final time: 200040 ns
|
if (TX_ERROR == 0) begin
|
if (TX_ERROR == 0) begin
|
$display("No errors or warnings.");
|
$display("No errors or warnings.");
|
$fdisplay(TX_FILE, "No errors or warnings.");
|
$fdisplay(TX_FILE, "No errors or warnings.");
|
end else begin
|
end else begin
|
$display("%d errors found in simulation.", TX_ERROR);
|
$display("%d errors found in simulation.", TX_ERROR);
|
Line 92... |
Line 94... |
end
|
end
|
|
|
initial begin
|
initial begin
|
// ------------- Current Time: 110ns
|
// ------------- Current Time: 110ns
|
#110;
|
#110;
|
reset_n = 1'b0;
|
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
ps2_data = 1'b1;
|
ps2_data = 1'b1;
|
|
reset_n = 1'b0;
|
data$inout$reg = 8'bZZZZZZZZ;
|
data$inout$reg = 8'bZZZZZZZZ;
|
// -------------------------------------
|
// -------------------------------------
|
// ------------- Current Time: 130ns
|
// ------------- Current Time: 130ns
|
#20;
|
#20;
|
CHECK_intr(1'b0);
|
CHECK_intr(1'b0);
|
|
CHECK_diag(8'bXXX11X00);
|
// -------------------------------------
|
// -------------------------------------
|
// ------------- Current Time: 270ns
|
// ------------- Current Time: 270ns
|
#140;
|
#140;
|
reset_n = 1'b1;
|
reset_n = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 370ns
|
|
#100;
|
|
CHECK_b(3'bXXX);
|
|
CHECK_g(3'bXXX);
|
|
CHECK_r(3'bXXX);
|
|
// -------------------------------------
|
// ------------- Current Time: 390ns
|
// ------------- Current Time: 390ns
|
#120;
|
#20;
|
ps2_data = 1'b0;
|
ps2_data = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 410ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X00);
|
|
// -------------------------------------
|
// ------------- Current Time: 510ns
|
// ------------- Current Time: 510ns
|
#120;
|
#100;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 530ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X00);
|
|
// -------------------------------------
|
// ------------- Current Time: 590ns
|
// ------------- Current Time: 590ns
|
#80;
|
#60;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 650ns
|
|
#60;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 670ns
|
// ------------- Current Time: 670ns
|
#80;
|
#20;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 690ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 830ns
|
// ------------- Current Time: 830ns
|
#160;
|
#140;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 850ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 990ns
|
// ------------- Current Time: 990ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 1010ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 1150ns
|
// ------------- Current Time: 1150ns
|
#160;
|
#140;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 1170ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 1310ns
|
// ------------- Current Time: 1310ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 1330ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 1470ns
|
// ------------- Current Time: 1470ns
|
#160;
|
#140;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 1490ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 1630ns
|
// ------------- Current Time: 1630ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
ps2_data = 1'b0;
|
ps2_data = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 1650ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 1790ns
|
// ------------- Current Time: 1790ns
|
#160;
|
#140;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 1810ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 1950ns
|
// ------------- Current Time: 1950ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 1970ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 1990ns
|
// ------------- Current Time: 1990ns
|
#40;
|
#20;
|
ps2_data = 1'b1;
|
ps2_data = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 2010ns
|
|
#20;
|
|
CHECK_diag(8'bXXX11X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 2110ns
|
// ------------- Current Time: 2110ns
|
#120;
|
#100;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 2130ns
|
|
#20;
|
|
CHECK_diag(8'bXXX10X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 2270ns
|
// ------------- Current Time: 2270ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 2290ns
|
|
#20;
|
|
CHECK_diag(8'bXXX11X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 2430ns
|
// ------------- Current Time: 2430ns
|
#160;
|
#140;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 2450ns
|
|
#20;
|
|
CHECK_diag(8'bXXX10X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 2590ns
|
// ------------- Current Time: 2590ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 2610ns
|
|
#20;
|
|
CHECK_diag(8'bXXX11X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 2750ns
|
// ------------- Current Time: 2750ns
|
#160;
|
#140;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 2770ns
|
|
#20;
|
|
CHECK_diag(8'bXXX10X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 2910ns
|
// ------------- Current Time: 2910ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 2930ns
|
|
#20;
|
|
CHECK_diag(8'bXXX11X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 3070ns
|
// ------------- Current Time: 3070ns
|
#160;
|
#140;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 3090ns
|
|
#20;
|
|
CHECK_diag(8'bXXX10X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 3230ns
|
// ------------- Current Time: 3230ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 3250ns
|
|
#20;
|
|
CHECK_diag(8'bXXX11X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 3310ns
|
// ------------- Current Time: 3310ns
|
#80;
|
#60;
|
ps2_data = 1'b0;
|
ps2_data = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 3330ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 3390ns
|
// ------------- Current Time: 3390ns
|
#80;
|
#60;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 3410ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 3550ns
|
// ------------- Current Time: 3550ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 3570ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 3590ns
|
// ------------- Current Time: 3590ns
|
#40;
|
#20;
|
ps2_data = 1'b1;
|
ps2_data = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 3610ns
|
|
#20;
|
|
CHECK_diag(8'bXXX11X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 3710ns
|
// ------------- Current Time: 3710ns
|
#120;
|
#100;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 3730ns
|
|
#20;
|
|
CHECK_diag(8'bXXX10X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 3870ns
|
// ------------- Current Time: 3870ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 3890ns
|
|
#20;
|
|
CHECK_diag(8'bXXX11X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 5910ns
|
// ------------- Current Time: 5910ns
|
#2040;
|
#2020;
|
ps2_data = 1'b0;
|
ps2_data = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 5930ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 6070ns
|
// ------------- Current Time: 6070ns
|
#160;
|
#140;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 6090ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 6230ns
|
// ------------- Current Time: 6230ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 6250ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 6390ns
|
// ------------- Current Time: 6390ns
|
#160;
|
#140;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 6410ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 6550ns
|
// ------------- Current Time: 6550ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 6570ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 6630ns
|
// ------------- Current Time: 6630ns
|
#80;
|
#60;
|
ps2_data = 1'b1;
|
ps2_data = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 6650ns
|
|
#20;
|
|
CHECK_diag(8'bXXX11X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 6710ns
|
// ------------- Current Time: 6710ns
|
#80;
|
#60;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 6730ns
|
|
#20;
|
|
CHECK_diag(8'bXXX10X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 6870ns
|
// ------------- Current Time: 6870ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 6890ns
|
|
#20;
|
|
CHECK_diag(8'bXXX11X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 6910ns
|
// ------------- Current Time: 6910ns
|
#40;
|
#20;
|
ps2_data = 1'b0;
|
ps2_data = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 6930ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 7030ns
|
// ------------- Current Time: 7030ns
|
#120;
|
#100;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 7050ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 7190ns
|
// ------------- Current Time: 7190ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 7210ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 7350ns
|
// ------------- Current Time: 7350ns
|
#160;
|
#140;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 7370ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 7510ns
|
// ------------- Current Time: 7510ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 7530ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 7550ns
|
// ------------- Current Time: 7550ns
|
#40;
|
#20;
|
ps2_data = 1'b1;
|
ps2_data = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 7570ns
|
|
#20;
|
|
CHECK_diag(8'bXXX11X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 7670ns
|
// ------------- Current Time: 7670ns
|
#120;
|
#100;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 7690ns
|
|
#20;
|
|
CHECK_diag(8'bXXX10X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 7830ns
|
// ------------- Current Time: 7830ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 7850ns
|
|
#20;
|
|
CHECK_diag(8'bXXX11X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 7910ns
|
// ------------- Current Time: 7910ns
|
#80;
|
#60;
|
ps2_data = 1'b0;
|
ps2_data = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 7930ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 7990ns
|
// ------------- Current Time: 7990ns
|
#80;
|
#60;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 8010ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 8150ns
|
// ------------- Current Time: 8150ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 8170ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 8310ns
|
// ------------- Current Time: 8310ns
|
#160;
|
#140;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 8330ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 8470ns
|
// ------------- Current Time: 8470ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 8490ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 8630ns
|
// ------------- Current Time: 8630ns
|
#160;
|
#140;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 8650ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 8790ns
|
// ------------- Current Time: 8790ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 8810ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 8950ns
|
// ------------- Current Time: 8950ns
|
#160;
|
#140;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 8970ns
|
|
#20;
|
|
CHECK_diag(8'bXXX00X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 9110ns
|
// ------------- Current Time: 9110ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 9130ns
|
|
#20;
|
|
CHECK_diag(8'bXXX01X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 9190ns
|
// ------------- Current Time: 9190ns
|
#80;
|
#60;
|
ps2_data = 1'b1;
|
ps2_data = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 9210ns
|
|
#20;
|
|
CHECK_diag(8'bXXX11X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 9270ns
|
// ------------- Current Time: 9270ns
|
#80;
|
#60;
|
ps2_clk = 1'b0;
|
ps2_clk = 1'b0;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 9290ns
|
|
#20;
|
|
CHECK_diag(8'bXXX10X01);
|
|
// -------------------------------------
|
// ------------- Current Time: 9430ns
|
// ------------- Current Time: 9430ns
|
#160;
|
#140;
|
ps2_clk = 1'b1;
|
ps2_clk = 1'b1;
|
// -------------------------------------
|
// -------------------------------------
|
|
// ------------- Current Time: 9450ns
|
|
#20;
|
|
CHECK_diag(8'bXXX11X01);
|
|
// -------------------------------------
|
|
// ------------- Current Time: 31090ns
|
|
#21640;
|
|
CHECK_b(3'b000);
|
|
CHECK_g(3'b000);
|
|
CHECK_r(3'b000);
|
|
// -------------------------------------
|
|
// ------------- Current Time: 31890ns
|
|
#800;
|
|
CHECK_hsync_n(1'b0);
|
|
// -------------------------------------
|
|
// ------------- Current Time: 39890ns
|
|
#8000;
|
|
CHECK_hsync_n(1'b1);
|
|
// -------------------------------------
|
|
// ------------- Current Time: 43890ns
|
|
#4000;
|
|
CHECK_b(3'bXXX);
|
|
CHECK_g(3'bXXX);
|
|
CHECK_r(3'bXXX);
|
|
// -------------------------------------
|
|
// ------------- Current Time: 95090ns
|
|
#51200;
|
|
CHECK_b(3'b000);
|
|
CHECK_g(3'b000);
|
|
CHECK_r(3'b000);
|
|
// -------------------------------------
|
|
// ------------- Current Time: 95890ns
|
|
#800;
|
|
CHECK_hsync_n(1'b0);
|
|
// -------------------------------------
|
|
// ------------- Current Time: 103890ns
|
|
#8000;
|
|
CHECK_hsync_n(1'b1);
|
|
// -------------------------------------
|
|
// ------------- Current Time: 107890ns
|
|
#4000;
|
|
CHECK_b(3'bXXX);
|
|
CHECK_g(3'bXXX);
|
|
CHECK_r(3'bXXX);
|
|
// -------------------------------------
|
|
// ------------- Current Time: 159090ns
|
|
#51200;
|
|
CHECK_b(3'b000);
|
|
CHECK_g(3'b000);
|
|
CHECK_r(3'b000);
|
|
// -------------------------------------
|
|
// ------------- Current Time: 159890ns
|
|
#800;
|
|
CHECK_hsync_n(1'b0);
|
|
// -------------------------------------
|
|
// ------------- Current Time: 167890ns
|
|
#8000;
|
|
CHECK_hsync_n(1'b1);
|
|
// -------------------------------------
|
|
// ------------- Current Time: 171890ns
|
|
#4000;
|
|
CHECK_b(3'bXXX);
|
|
CHECK_g(3'bXXX);
|
|
CHECK_r(3'bXXX);
|
|
// -------------------------------------
|
end
|
end
|
|
|
task CHECK_addr;
|
task CHECK_addr;
|
input [15:0] NEXT_addr;
|
input [15:0] NEXT_addr;
|
|
|
Line 484... |
Line 773... |
$fflush(TX_FILE);
|
$fflush(TX_FILE);
|
TX_ERROR = TX_ERROR + 1;
|
TX_ERROR = TX_ERROR + 1;
|
end
|
end
|
end
|
end
|
endtask
|
endtask
|
|
task CHECK_diag;
|
|
input [7:0] NEXT_diag;
|
|
|
|
#0 begin
|
|
if (NEXT_diag !== diag) begin
|
|
$display("Error at time=%dns diag=%b, expected=%b", $time, diag, NEXT_diag);
|
|
$fdisplay(TX_FILE, "Error at time=%dns diag=%b, expected=%b", $time, diag, NEXT_diag);
|
|
$fflush(TX_FILE);
|
|
TX_ERROR = TX_ERROR + 1;
|
|
end
|
|
end
|
|
endtask
|
|
|
endmodule
|
endmodule
|
|
|