注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

dp: 生活的脚步,进步的点滴...

Cam、DSP、FPGA、PM、Life、More ...

 
 
 

日志

 
 

verilog学习笔记  

2013-02-19 10:04:40|  分类: 专业 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
1. 若总线上所有驱动源均停止驱动且无上拉或下拉电阻,则总线悬空,总线对地相当于一电容;如果关闭总线之前的驱动为高电平,则用示波器可观测到一个类似电容放电的现象。若总线有上拉或者下拉电阻,则可以快速地被上拉到高电平或下拉到低电平,从而避免总线因电容缓慢放电而处于电平漂浮不定的情况。
2. 一般来说,只要if...else语句中的条件是互斥的(因为互斥所以不存在优先级),在synplify下的综合结果就是并行且不带优先级的电路
3. latch所耗用的逻辑资源比DFF少(DFF需要12个MOS管,latch需要6个)。但latch对毛刺敏感,无异步复位端,不能让芯片在上电时处在一个确定的状态;另外,采用latch也会使静态时序分析变得很复杂,不利于设计的可重用,所以当今设计中,除了CPU这种甚高速电路,或者RAM这种对面积很敏感的电路,一般不提倡使用latch。
4. one-hot的本质是一个状态用一位表示,index编码下每个状态只需要一位表示,而非index编码需要10bit才能表示一个状态。所以,index编码才能真正反映出one-hot的本质。非index编码的状态机由于译码逻辑过多,在资源耗用及Fmax这两个指标上都不如index编码。因此,在使用one-hot编码状态机时,建议采用index编码方式。
5. LAB(logic array blocks)是一个逻辑阵列块,每个LAB根据器件的不同包含了8-16个LE。它还是FPGA内部总线互联的基本单位,每个LAB可以和相邻的LAB直接相连,对于不相邻的LAB则只能通过Row Interconnect或者Column Interconnect与之相连。
6. 亚稳态 即当数据的建立时间或保持时间不满足时,就可能发生亚稳态现象。在发生亚稳态时信号的状态不确定,信号在0-1之间震荡,而不等于触发器D端的值;但信号会逐渐走强,在一定的恢复时间后不再震荡,信号值为强0或者强1
7. Multicycle path 多周期路径指的是两个寄存器之间数据要经过多个时钟才能稳定的路径,一般出现于组合逻辑较大的那些路径。
8. Synplify中,FSM compile选项打开后,Synplify根据状态个数对FSM进行重新编码,以实现对状态机的优化。在一般情况下,当状态不大于4时,Synplify会采取binary编码方式;否则,Synplify将采取one-hot方式。
    FSM explorer也是一个对状态机优化的选项,与FSM compile不同的是,FSM compile只是根据状态个数决定状态编码,而FSM explorer将在FSM compile 的基础上对状态机尝试各种编码,根据约束设置选择一种最优的编码方式。
    Resource sharing是可以在综合的过程中对资源进行共享的优化处理。
    Pipelining 则是通过更改DFF的位置而不更改逻辑的功能来平衡DFF到DFF的时延,以提高Fmax。
    Retiming功能可以对时序和资源进行优化,更改DFF位置等。
9. 时钟约束值以超出实际工作频率5%-10%为佳,过高的约束值对设计帮助不大,甚至还可能导致约束工具无法达到约束指标,不仅综合的时间长,效果也会比较差。
10. 在实际工程中,如果电路的工作频率很高,建议对与片上RAM相连的逻辑加一级流水,以避免很大的走线时延。
11.多线程和多核的CPU是不同的,多线程CPU共享了instuction cache 和data cache,而多核的CPU则是不共享的。
12.一级级cache是指令与数据不共享,二级cache是指令与数据共享的。
13.X86系统的体系结构是CISC(complex instruction set computer)的,而发展趋势是RISC(reduced instruction set computer)。
14.General Reusable coding practices
    Register all the outputs of critical design blocks
    Avoid path that traces through number of hierarchies and then return back to same hierarchy
    Partition the design based on functional goals and the clock domains
    Avoid instantiating technology specific modules
    Use parameters and declare them at the top with meaningful names
    Avoid internally generated clocks and resets
    Avoid glue logic at the top level
15.latch & Flip-Flop优缺点:
   -->Latch takes less area, consume less power, facilitate time borrowing or cycle stealing, not friendly with DFT tools
   -->Flip-flop takes more area, consumes more power, allow synchronous logic, friendly with DFT tools
16."=="and"==="差异:
   The “==” are synthesizable while “===” operators are not synthesizable. If either of the operand in “==” has x or z the result is always x while “===” compare x and z too. The same is true for “!=” and “!==” operators.

17. 两个时钟域之间传输的数据根据不同的位宽通常采用不同的同步的方法。
单bit之间的同步且发送的每个pulse至少有1个周期宽度的情况,通常的采用方法就是输出数据在接收的模块中利用两个触发器采用系统时钟打两拍。第二个触发器并不是避免“亚稳态的发生”,确切的说,该电路能够防止亚稳态的传播。虽然这种方法可以防止亚稳态的传播,但是并不能保证两级触发器之后的数据是正确的,因此,这种电路都有一定数量的错误电平数据,所以,仅适用于少量对于错误不敏感的地方。对于敏感的电路,可以采用双口RAM或FIFO。
18.集成芯片(IC)的三个温度等级(商业级、工业级和军品级):

   商业级集成芯片(IC)的温度定额为0℃~70℃;
   工业级集成芯片(IC)的温度定额为-40℃~85℃;
   军品级集成芯片(IC)的温度定额为-55℃~125℃。

参考:《基于verilog HDL的数字系统应用设计》(第2版)王钿 卓兴旺著
  评论这张
 
阅读(495)| 评论(0)
推荐

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016