mirror of https://github.com/openXC7/prjxray.git
64 lines
1.0 KiB
Verilog
64 lines
1.0 KiB
Verilog
`default_nettype none
|
|
`timescale 1ns / 1ps
|
|
|
|
// ============================================================================
|
|
|
|
module tb;
|
|
|
|
// ============================================================================
|
|
|
|
reg CLK;
|
|
initial CLK <= 1'b0;
|
|
always #0.5 CLK <= !CLK;
|
|
|
|
reg [3:0] rst_sr;
|
|
initial rst_sr <= 4'hF;
|
|
always @(posedge CLK) rst_sr <= rst_sr >> 1;
|
|
wire RST;
|
|
assign RST = rst_sr[0];
|
|
|
|
// ============================================================================
|
|
|
|
initial begin
|
|
$dumpfile("waveforms.vcd");
|
|
$dumpvars;
|
|
end
|
|
|
|
integer cycle_cnt;
|
|
initial cycle_cnt <= 0;
|
|
|
|
always @(posedge CLK)
|
|
if (!RST) cycle_cnt <= cycle_cnt + 1;
|
|
|
|
always @(posedge CLK)
|
|
if (!RST && cycle_cnt >= 100)
|
|
$finish;
|
|
|
|
// ============================================================================
|
|
wire o_stb;
|
|
wire [7:0] o_dat;
|
|
|
|
wire s_clk;
|
|
wire s_ce;
|
|
wire s_dat;
|
|
|
|
transmitter #
|
|
(
|
|
.WIDTH (8),
|
|
.MODE ("SDR")
|
|
)
|
|
transmitter
|
|
(
|
|
.CLK (CLK),
|
|
.RST (RST),
|
|
|
|
.O_STB (o_stb),
|
|
.O_DAT (o_dat),
|
|
|
|
.S_CLK (s_clk),
|
|
.S_CE (s_ce),
|
|
.S_DAT (s_dat)
|
|
);
|
|
|
|
endmodule
|