📄 test.tfw
字号:
////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 1995-2003 Xilinx, Inc.
// All Right Reserved.
////////////////////////////////////////////////////////////////////////////////
// ____ ____
// / /\/ /
// /___/ \ / Vendor: Xilinx
// \ \ \/ Version : 7.1i
// \ \ Application : ISE Foundation
// / / Filename : test.tfw
// /___/ /\ Timestamp : Wed Dec 26 22:44:38 2007
// \ \ / \
// \___\/\___\
//
//Command:
//Design Name: test
//Device: Xilinx
//
`timescale 1ns/1ps
module test;
reg clk_5m = 1'b0;
reg rst = 1'b1;
reg nd = 1'b0;
reg [15:0] indata = 16'b0000000000000000;
wire [15:0] out;
wire rdy;
parameter PERIOD = 200;
parameter real DUTY_CYCLE = 0.5;
parameter OFFSET = 0;
initial // Clock process for clk_5m
begin
#OFFSET;
forever
begin
clk_5m = 1'b0;
#(PERIOD-(PERIOD*DUTY_CYCLE)) clk_5m = 1'b1;
#(PERIOD*DUTY_CYCLE);
end
end
pingpang UUT (
.clk_5m(clk_5m),
.rst(rst),
.nd(nd),
.indata(indata),
.out(out),
.rdy(rdy));
integer TX_ERROR = 0;
initial begin // Open the results file...
#100200 // Final time: 100200 ns
if (TX_ERROR == 0) begin
$display("No errors or warnings.");
end else begin
$display("%d errors found in simulation.", TX_ERROR);
end
$stop;
end
initial begin
// ------------- Current Time: 85ns
#85;
nd = 1'b1;
indata = 16'b0000000000000010;
// -------------------------------------
// ------------- Current Time: 285ns
#200;
rst = 1'b0;
indata = 16'b0000000000000011;
// -------------------------------------
// ------------- Current Time: 485ns
#200;
indata = 16'b0000000000000100;
// -------------------------------------
// ------------- Current Time: 685ns
#200;
indata = 16'b0000000000000101;
// -------------------------------------
// ------------- Current Time: 885ns
#200;
indata = 16'b0000000000000110;
// -------------------------------------
// ------------- Current Time: 1085ns
#200;
indata = 16'b0000000000000111;
// -------------------------------------
// ------------- Current Time: 1285ns
#200;
indata = 16'b0000000000001000;
// -------------------------------------
// ------------- Current Time: 1485ns
#200;
indata = 16'b0000000000001001;
// -------------------------------------
// ------------- Current Time: 1685ns
#200;
indata = 16'b0000000000001010;
// -------------------------------------
// ------------- Current Time: 1885ns
#200;
indata = 16'b0000000000001011;
// -------------------------------------
// ------------- Current Time: 2085ns
#200;
indata = 16'b0000000000001100;
// -------------------------------------
// ------------- Current Time: 2285ns
#200;
indata = 16'b0000000000001101;
// -------------------------------------
// ------------- Current Time: 2485ns
#200;
indata = 16'b0000000000001110;
// -------------------------------------
// ------------- Current Time: 2685ns
#200;
indata = 16'b0000000000010000;
// -------------------------------------
// ------------- Current Time: 2885ns
#200;
indata = 16'b0000000000001111;
// -------------------------------------
// ------------- Current Time: 3085ns
#200;
indata = 16'b0000000000010001;
// -------------------------------------
// ------------- Current Time: 3285ns
#200;
indata = 16'b0000000000010010;
// -------------------------------------
// ------------- Current Time: 3485ns
#200;
indata = 16'b0000000000010011;
// -------------------------------------
// ------------- Current Time: 3685ns
#200;
indata = 16'b0000000000010100;
// -------------------------------------
// ------------- Current Time: 3885ns
#200;
indata = 16'b0000000000010101;
// -------------------------------------
// ------------- Current Time: 4085ns
#200;
indata = 16'b0000000000010110;
// -------------------------------------
// ------------- Current Time: 4285ns
#200;
indata = 16'b0000000000010111;
// -------------------------------------
// ------------- Current Time: 4485ns
#200;
indata = 16'b0000000000011000;
// -------------------------------------
// ------------- Current Time: 5485ns
#1000;
indata = 16'b0000000000101101;
// -------------------------------------
// ------------- Current Time: 7085ns
#1600;
indata = 16'b0000000001000100;
// -------------------------------------
// ------------- Current Time: 9885ns
#2800;
indata = 16'b0000000000101101;
// -------------------------------------
// ------------- Current Time: 19885ns
#10000;
indata = 16'b0000000000001100;
// -------------------------------------
// ------------- Current Time: 32685ns
#12800;
indata = 16'b0000000000010111;
// -------------------------------------
// ------------- Current Time: 43085ns
#10400;
indata = 16'b0000000000100010;
// -------------------------------------
// ------------- Current Time: 60685ns
#17600;
indata = 16'b0000000000100011;
// -------------------------------------
// ------------- Current Time: 83485ns
#22800;
indata = 16'b0000000000111000;
// -------------------------------------
// ------------- Current Time: 91885ns
#8400;
indata = 16'b0000000001001110;
// -------------------------------------
end
task CHECK_out;
input [15:0] NEXT_out;
#0 begin
if (NEXT_out !== out) begin
$display("Error at time=%dns out=%b, expected=%b", $time, out, NEXT_out);
TX_ERROR = TX_ERROR + 1;
end
end
endtask
task CHECK_rdy;
input NEXT_rdy;
#0 begin
if (NEXT_rdy !== rdy) begin
$display("Error at time=%dns rdy=%b, expected=%b", $time, rdy, NEXT_rdy);
TX_ERROR = TX_ERROR + 1;
end
end
endtask
endmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -