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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 11429|回复: 15

[求助] 求助:verilog中怎么对信号延时输出

[复制链接]
发表于 2016-6-6 22:18:17 | 显示全部楼层 |阅读模式

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

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

x
求助:对一个16位的信号进行延迟,我在编写程序的时候用cnt计数,假如延时8个时钟周期,cnt计数到8时输出信号,可是这样产生的结果是每过8个时钟才有一个输出,怎么产生连续的延迟输出呢?
发表于 2016-6-6 23:14:32 | 显示全部楼层
数据存入FIFO或RAM或reg,计数控制输出的时能
发表于 2016-6-7 07:31:58 | 显示全部楼层
延时时间不固定,或者当有读使能才能输出,就用fifo,要是固定延迟,就简单的delay就好了
always @ (posedge clk) begin
     d1 <= d;
     d2 <= d1;
     .......
     dout <= dn;
end
发表于 2016-6-7 08:55:18 | 显示全部楼层
移位寄存器啊
always @(posedge clk)
    shifter <= {shifter[6:0], din};

assign dout = shifter[7];
发表于 2016-6-7 10:46:12 | 显示全部楼层
本帖最后由 t28user 于 2016-6-7 10:47 编辑

你可以用 cnt > 8 的時候輸出就好,然後 cnt 停止計數。要延遲,加上 FIFO。
 楼主| 发表于 2016-6-7 10:47:01 | 显示全部楼层
回复 2# x_zhou
 楼主| 发表于 2016-6-7 10:48:49 | 显示全部楼层
回复 2# x_zhou


    嗯,我也想到这个,可是我要延时的信号有二十几个,有没有什么其他的方法呢
 楼主| 发表于 2016-6-7 10:50:12 | 显示全部楼层
回复 3# 南宫恨


    这边延迟要可变,而且最大有四十多延迟。。。
 楼主| 发表于 2016-6-7 10:51:38 | 显示全部楼层
回复 4# huster


    用移位寄存器可以控制延迟数量吗
 楼主| 发表于 2016-6-7 10:53:49 | 显示全部楼层
回复 5# t28user


    我这边有二十几个数要延迟。。。要写二十几个fifo,有没有其他什么方法呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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


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

GMT+8, 2024-11-23 05:37 , Processed in 0.020345 second(s), 7 queries , Gzip On, Redis On.

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