基于Verilog HDL的通信系统设计 陈曦 等编著 第11章.pptVIP

基于Verilog HDL的通信系统设计 陈曦 等编著 第11章.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
china_54@ china_54@ * * * 基于Verilog HDL的通信系统设计 第3部分 技巧和实验篇 第11章 FPGA设计指导原则和代码规范 基于Verilog HDL的通信系统设计 在FPGA/设计过程中常常会遇到各种问题,对于各种问题的解决办法不可能完全相同。本章旨在总结一些常见的设计技巧、原则,希望能够帮助读者在实际的设计过程中找到解决问题的关键。一段好的代码并不是简单的实现程序功能即可,而一定是清晰、规范、可读性很强的,在代码编译综合的时候经常会遇到一些问题而又找不到解决办法,所以本章的后半部分内容旨在培养好的代码编写习惯。总之本章内容的指导性作用很强。 基于Verilog HDL的通信系统设计 11-1 FPGA设计指导原则 11-1-1 深入理解阻塞赋值和非阻塞赋值 阻塞与非阻塞赋值是Verilog HDL语言的难点之一,在使用中容易出错,因此在程序的设计中,必须对阻塞赋值和非阻塞有深入的理解。在前文提过如下两条原则: 在描述组合逻辑的“always”块中用阻塞赋值,综合后成为组合逻辑电路。 在描述时序逻辑的“always”块中用非阻塞赋值,综合后成为时序逻辑电路。 基于Verilog HDL的通信系统设计 11-1-2 组合逻辑设计注意事项 几乎所有的编码指导手册都有关于信号敏感表的描述。时序逻辑的信号敏感表比较好写,只要在信号敏感表中写明时钟信号的正负触发沿即可。信号敏感表的主要问题集中在组合逻辑信号敏感表的写法上。 同步时序设计要尽量慎用“Latch”,需要注意的是,如果综合出与设计意图不一致的锁存器(Latch),则将导致仿真和设计错误。对于一定要使用“Latch”的特定设计,设计者必须明确该“Latch”是否为有意设计的。综合出与设计意图不吻合的“Latch”结构的主要原因在于:在设计组合逻辑时使用不完全的条件判断语句,如有“if”而没有“else”,使用不完整的“case”语句,或者设计中有组合逻辑的回馈环路等异步逻辑。 相对复杂一些的设计都是由两部分组成:时序逻辑和组合逻辑。同步时序逻辑设计系统中并不是不包含组合逻辑,而是要更加合理地设计和划分组合逻辑,下面介绍其中的一些主要问题。 基于Verilog HDL的通信系统设计 11-1-3 时序逻辑设计注意事项 时钟是同步设计的基础,在同步设计中,所有操作都是基于时钟沿触发的,所以时钟的设计对于同步时序电路来说非常重要,在ASIC设计中,常会用到各种各样的组合逻辑所产生的时钟,但是如果将这些设计直接移植到同步时序电路中,则将带来各种各样的问题,下面将进行介绍。 如果需要使用内部逻辑产生时钟,则必须要在组合逻辑产生的时钟后插入寄存器。如果直接使用组合逻辑产生的信号作为时钟信号或者异步置位/复位信号,则将使设计不稳定。 基于Verilog HDL的通信系统设计 11-1-4 可综合状态机的指导原则 用Verilog 语言描述有限状态机可使用多种风格,不同的风格会极大地影响电路性能。通常有三种描述方式:单“always” 块、双“always”块和三“always”块。 在硬件描述语言中,如果要最终实现硬件设计,必须写出可以综合的程序。综合的一般原则为: 综合前必须进行仿真。 布线后都要进行仿真。 用Verilog HDL描述的异步状态机是不能综合的。 状态机应有一个异步或同步复位端。 时序逻辑电路建模时,用非阻塞赋值。 “always”块中应该尽量避免组合反馈回路。 基于Verilog HDL的通信系统设计 11-1-5 面积与速度互换原则 在介绍面积和速度互换原则之前应该先要了解面积和速度的含义。“面积”是指消耗的FPGA/CPLD的逻辑资源的数量,一般通过消耗的触发器(FF)和查找表(LUT)来衡量,也可以通过所消耗的逻辑门的数量来衡量。“速度”是指芯片正常运行状况下的最高运行速率,这个速率由设计的时序状态来衡量。面积(area)和速度(speed)贯穿设计的时钟,是大多数设计者首先要考虑的问题。 基于Verilog HDL的通信系统设计 11-1-6 同步设计原则 在数字电路中,以电路动作的方式区分,可以将其粗略区分为同步设计与异步设计。同步设计是指所有的电路动作的切换,是在某一个信号的上升沿或下降沿切换,而非在其它任意时刻切换,此信号即为时钟信号。严格地说,只要数字电路不属于同步设计,即归类于异步设计。同步设计的优点是分析容易,也几乎

您可能关注的文档

文档评论(0)

时间加速器 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档