完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
//处理按键标志位
always @(posedge sys_clk or negedge sys_rst_n) begin if(!sys_rst_n) key_flag[1:0] <=2'd2; else if(cnt == delay_cnt) begin key_flag[1:0] = {key_flag[0],key_flag[1]}; key_flag[0] = key; end end 如上代码,在 else if(cnt == delay_cnt) begin 下面的两条语句, 应该是用“=”还是用“<=”? 理论上应该用“=”,但是我发现用“<=”也是可以的 |
|
相关推荐
6个回答
|
|
begin和end之间只是指令顺序执行,与之相对的是fork和join,他两个之间的语句是并行执行的。至于是时序逻辑还是组合逻辑要看这个动作有没有时钟信号控制
|
|
|
|
组合逻辑用阻塞赋值(=),时序逻辑用非阻塞赋值(<=),这里属于时序逻辑,所以要用非阻塞赋值“<=”。这个地方可能是写错了,这两种赋值方法的区别可以看一下开发指南,以及语法篇视频<高级知识点>一讲
|
|
|
|
|
|
|
|
你得先弄清楚啥是时序逻辑,啥是组合逻辑啊
|
|
|
|
好的 谢谢
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
2893 浏览 3 评论
27693 浏览 2 评论
3467 浏览 2 评论
3981 浏览 4 评论
基于采用FPGA控制MV-D1024E系列相机的图像采集系统设计
2331 浏览 3 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-18 15:58 , Processed in 0.784780 second(s), Total 90, Slave 69 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号