打印

程序编译通过了,可是testbench不能产生信号

[复制链接]
2164|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zifeiyuuuu|  楼主 | 2009-11-20 11:22 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
module test3(rst,clk,clkout);
parameter N=3; //计数器的位数 N的最大计数值要大于或等于M
parameter M=5; //要分频的模,取奇数
input rst;
input clk;
output clkout;
reg tempp,tempn;
reg [N-1:0] count;
always @(negedge rst or posedge clk)
if(!rst)
  begin
   count<=0;
   tempp<=0;
  end
else
  begin               
   count<=count+1;
   if(count==M/2)
      tempp<=1;
    else if(count==M-1)
         begin
         tempp<=0;
         count<=0;
  end
end
always @(negedge rst or negedge clk)  
    if(!rst)
      tempn<=0;
    else
      tempn<=tempp;
      
assign clkout=tempp|tempn;         endmodule
`timescale 1ns/1ns     //testbench
module test3_tp;
reg rst,clk;
wire clkout;
test3 test3_1(rst,clk,clkout);
initial
  begin
   rst=1'b1;
   rst=1;
   #20;
   rst=0;
   #20;
   rst=1;
  end
always #10 clk=~clk;
endmodule

如果不用testbench, 手动添加 输入信号,功能仿真没问题 现在想用testbench 添加信号,可  输入信号死活出不来? 所以 请 大哥,大姐,小哥,**,一起看看,  谢谢了、////

相关帖子

沙发
ic00| | 2009-11-29 11:03 | 只看该作者
朋友,首先给你说的是,你的一个占空比为50%的分频器一个always就可以了,你这说设计有一点多,并且出来的波形也不是很好了。第二个问题你要记的,你的这个程序是不完整的,当然不可以了。因为,你设计了两部份,但是你没有把这个两部分组合成一个环路。如有不明白,就加我的QQ 132 159 1335 我也是一个学生

使用特权

评论回复
板凳
可木| | 2009-12-1 19:43 | 只看该作者
估计是楼主的testbench写的不对吧,
  #20;
   rst=0;
   #20;
   rst=1;
延时后不要分号,试试看!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

96

帖子

0

粉丝