打印

verilog能生产这么快速执行的代码么

[复制链接]
1350|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
magic_yuan|  楼主 | 2014-5-18 00:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位大神,
  刚学VERILOG,有问题如下请教:
     如用 always @(posedge clk)  即CLK的上升沿会触发always语句内部的动作,但有个问题很担心----
     问题:always语句里如果有比较复杂的操作,从而在触发后由于动作复杂还消耗时间太长,导致在一个周期内没有执行完,但下一个时钟周期又来了,这样不是“死”在里面了?   
       我是这么想的,或许综合的时候会通不过?目前我只会用modelsim仿真,多谢啊!

相关帖子

沙发
llf021421| | 2014-5-18 11:02 | 只看该作者
你要把组合逻辑和时序逻辑分开来做
always@(posedge clk)用来描述的是时序逻辑电路,就是给触发器赋值,时间是很快的
always@(*)是用来描述组合逻辑,如果组合逻辑的传播延时太长的吧,就加入流水线或修改组合逻辑,这样会提高时钟频率

使用特权

评论回复
板凳
huangxz| | 2014-5-19 16:03 | 只看该作者
硬件不会死的,放心吧,最多产生逻辑混乱

使用特权

评论回复
地板
luyaker| | 2014-5-19 18:21 | 只看该作者
这就是你要解决的所谓时序问题了,要满足建立时间和保持时间,具体你要深入学习,内容比较多

使用特权

评论回复
5
ococ| | 2014-5-19 18:51 | 只看该作者
楼上正解。
感觉你还是用的软件思维。硬件描述语言没有所谓的死在里面。
要用正确的描述方式也就是代码风格加合适的时序约束来保证你的设计能达到预期的频率。

使用特权

评论回复
6
Magina_xm| | 2014-5-21 15:07 | 只看该作者
完全是软件的思维,还是得了解下数字电路啊!

使用特权

评论回复
7
haitaox| | 2014-5-23 15:16 | 只看该作者
你的意思是不是频率太高了,导致时序不满足了

使用特权

评论回复
8
以马内利3005| | 2014-5-24 13:16 | 只看该作者
学习并行执行的思路~

使用特权

评论回复
9
neufeifatonju| | 2014-6-6 15:02 | 只看该作者
综合速度上不去,出现不定太呗,硬件不死机的

使用特权

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

本版积分规则

个人签名:发到3000帖时,生活大概完成了一种转折。

359

主题

2770

帖子

7

粉丝