Testbench初尝

Testbench观察方法

1、观察、对比波形。
2、在终端打印或生成文本。
3、自动对比输出结果。

Testbench三步走

1、对被测试设计的顶层接口进行例化。
2、给被测试的输入接口添加激励。
3、判断被测试设计的输出相应是否满足设计要求。

最简单的Testbench:

//一、时钟产生
//定义时钟周期为20ns,已定义"'timescale 1ns/1ps"

parameter PERIOD = 20;

intitial
begin
 clk = 0;
 forever
  #(PERIOD/2) clk = ~clk;
end
//或写成
always
begin
 #(PERIOD/2) clk = 0;
 #(PERIOD/2) clk = 1;
end

//二、复位产生
//复位低有效,已定义"'timescale 1ns/1ps"
intitial
begin
 rst_n = 0;
 #100;  //延时100ns
 rst_n = 1; //撤销复位
 //......
end
//或写成
intial
begin
 reste_task(100);//复位时间100ns,已定义"'timescale 1ns/1ps"
 //......
end

task reset_task;
 input[15:0] reset_time;
 begin
  reset = 0;
  #reset_time;
  reset = 1;
 end
endtask

posted on 2011-07-30 12:51  qmn91  阅读(236)  评论(0编辑  收藏  举报

导航