在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 15022|回复: 13

Verilog中如何使用D触发器来实现延时

[复制链接]
发表于 2004-7-11 20:22:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
片子中需要自己产生一个脉冲,像是用D触发器来实现一定时间的延时,该怎样写代码,还忘指点一二。使用寄存器的移位来实现也可以,不过我都没有太大的把握,多谢各位了!
发表于 2004-7-11 21:11:44 | 显示全部楼层

Verilog中如何使用D触发器来实现延时

reg [5:0] shift;
assign data_out = shift[5];
always@(posedge clk)
shift <= {shift[4:0],data_in};
你应该多看看书

 楼主| 发表于 2004-7-12 20:22:50 | 显示全部楼层

Verilog中如何使用D触发器来实现延时

多谢atuhappy
不过我还是有个问题不太明白
假设有这样一种情况: 当读信号(LRD)或者写信号(LWR)出现时,延时6个时钟周期后产生一个持续时间为2个时钟周期的脉冲,其中读/写信号均为低电平有效。
可否这样来实现:
reg LRDY;
reg [5:0] delay;
reg [1:0] hold;
assign command = LRD & LWR;
always@(posedge CLK)
if(!command)
  begin
   delay <= {delay[4:0], command};
   LRDY <= 0;
   hold <= {hold[0], LRDY};
   LRDY <= 1;
  end
发表于 2004-7-12 20:27:48 | 显示全部楼层

Verilog中如何使用D触发器来实现延时

不对呀
发表于 2004-7-12 20:28:21 | 显示全部楼层

Verilog中如何使用D触发器来实现延时

你仿真一下就知道为什么不对了
 楼主| 发表于 2004-7-12 20:56:22 | 显示全部楼层

Verilog中如何使用D触发器来实现延时

我这里没有仿真工具呀
NC-Verilog,我没有
只有synplify
请问你都用什么来仿真
 楼主| 发表于 2004-7-12 21:01:57 | 显示全部楼层

Verilog中如何使用D触发器来实现延时

对Verilog真的是刚开始接触
有些问题是写代码的时候才逐渐发现
还望不要见笑呦
不过还是要感谢你的耐心与无私的帮助
发表于 2004-7-12 21:24:30 | 显示全部楼层

Verilog中如何使用D触发器来实现延时

在PC上你可以用modelsim来仿真。
发表于 2004-7-13 09:28:53 | 显示全部楼层

Verilog中如何使用D触发器来实现延时

没有仿真工具怎么验证呀
还是去找一个吧
本站的ftp有
发表于 2004-7-13 12:33:06 | 显示全部楼层

Verilog中如何使用D触发器来实现延时

Cadence的LDV到处都有,你多找找,最新的是LDV 5.0、5.1。
仿真、验证还是要LDV,没有这个真的是不行的。
代码只是电路的表示形式,verilog不是软件,写代码实际是在写电路,多理解理解,不要用软件的想法来设计电路。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-24 02:58 , Processed in 0.028609 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表