tachibana/test_bench/window_matcher_tb.v
2021-07-14 18:12:06 +02:00

102 lines
1.9 KiB
Verilog

`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company:
// Engineer:
//
// Create Date: 06/15/2021 10:49:32 AM
// Design Name:
// Module Name: window_matcher_tb
// Project Name:
// Target Devices:
// Tool Versions:
// Description:
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
//////////////////////////////////////////////////////////////////////////////////
module window_matcher_tb();
reg clk;
reg rst;
reg in_blank;
reg in_hsync;
reg in_vsync;
reg [7:0] in_red;
reg [7:0] in_green;
reg [7:0] in_blue;
wire win_blank;
wire win_hsync;
wire win_locked;
wire [11:0] win_w;
wire [11:0] win_h;
wire out_data_en;
wire out_data_valid;
localparam period = 4;
initial begin
clk = 0;
rst = 1;
in_blank = 1;
in_hsync = 0;
in_vsync = 0;
in_red = 0;
in_green = 0;
in_blue = 0;
repeat(2) #period clk = ~clk;
rst = 0;
forever #period clk = ~clk;
end
`include "test_data/00WM_TEST_POS_LOADERS.v"
integer read_pos;
reg [23:0] expected_data;
reg [23:0] expected_data_last;
integer testcase_id;
reg win_blank_exp, win_header;
reg win_blank_exp_last, win_header_last;
reg in_vsync_last;
initial begin
`include "test_data/00WM_TEST_POS_RUNNERS.v"
$finish;
end
window_matcher window_matcher_i (
.clk(clk),
.rst(rst),
.bypass(1'b0),
.in_blank(in_blank),
.in_hsync(in_hsync),
.in_vsync(in_vsync),
.in_red(in_red),
.in_green(in_green),
.in_blue(in_blue),
.win_blank(win_blank),
.win_locked(win_locked),
.win_w(win_w),
.win_h(win_h),
.out_data_en(out_data_en),
.out_data_valid(out_data_valid),
.win_red(8'haa),
.win_green(8'haa),
.win_blue(8'haa)
);
endmodule