- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3、设计风格3 采用设计风格2时,输出数据采用寄存器输出的方式时会带来一个时钟周期的延时,那么我们是否可以采用寄存器输出,同时又避免该延迟的状态机呢?这样是可以做到的,我们将其称为设计风格3。 Verilog HDL程序模板: 【例7-4-1】设计四状态的有限状态机如图7.4.5所示,它的同步时钟是Clock,输入信号是A和Reset,输出信号是F和G。状态的转移只能在同步时钟的上升沿时发生。向哪一个状态转换取决于目前所在的状态和输入信号(Reset和A)。 当状态机处于Idle,如果A输入信号为“1”时,状态变为Start,G输出为“0”;当状态机处于Start时,如果输入信号A为“0” 状态变为Stop;当状态机处于Stop时,如果输入信号A为“1” 状态变为Clear,输出信号F为“1”;当状态机处于Clear时,如果输入信号A为“0” 状态变为Idle,输出信息F为“0”,G为“1”;无论状态机处于任何状态,只要输入信号Reset为“0”,状态都转换为Idle,这时当状态为Start、Stop和Idle时输出信号F和G都为“0”,只有当状态为Clear时,输出信号F为“0”,G为“1”。 这里我们给出一个该状态机的Verilog HDL模型: 7.5 小结 本章首先介绍了可综合设计的概念及其过程、建立可综合模型的原则、综合结果的验证。其次,介绍了Verilog HDL 语言设计优化,包括算术表达式优化、运算符优化、循环语句的优化、速度和面积的互换。最后,介绍了有限状态机设计,提供了状态机的三种设计风格。 7.6 习题 1、综合的含义是什么? 2、Verilog HDL语法结构中综合工具不支持的结构有哪些? 3、简述状态机的本质和适用的场合。 4、状态机的基本要素有哪些? 5、简述Verilog HDL语言设计可综合状态机的指导原则。 6、比较状态机的三种设计风格。 7、采用状态机设计一个8路彩灯控制电路。电路的时钟输入Clk频率为1KHz, 需要分频产生约0.5ms的状态机控制时钟。电路复位信号reset为高电平有效,复位时所有的彩灯都点亮。输出控制总线dout为高电平有效,某一位为1时,对应的彩灯被点亮。输入控制信号control为1时输出如下(a)要求的操作,否则输出(b)要求的操作。 (a)依次点亮,然后依次熄灭并循环操作。 (b)单数点亮,然后偶数点亮并循环操作。 7.2.3运算符优化 运算符优化是指避免使用复杂的运算符,尽可能的用简单的运算符来代替。例如,如果设计中用到乘法或除法,则可以用移位操作来代替(乘法用左移,除法用右移)。这是因为移位运算在速度和面积上都优于乘法运算。例如: y=3*x; 如果用位移运算代替乘法,则程序代码改写为 temp=x1; y=x+temp; 显然,如果使用移位加运算替代乘法运算后,缩减了运算符的强度,从而达到了优化的目的。 7.2.4循环语句的优化 在for循环语句中,有时候会存在某个表达式的值在每次循环中都不变的情况。而综合工具通常按照指定的循环次数来展开for循环语句,即将该无变化表达式重复复制,这样就造成了代码的冗余。举例: 这个循环语句会被综合成下面三条语句: x=a+b; x=a+b; x=a+b; 由此可见,每次迭代都执行了(a+b)运算,并且(a+b)的值和运算次数没有关系,这段代码会生成3个加法器的综合。解决这种情况的最好办法是将循环语句不随循环次数变化的值的表达式移至循环之外。修改后的程序如下所示: 7.3 面积与速度的折衷 在可编程逻辑器件设计领域,面积通常指的是可编程逻辑器件的芯片资源,包括逻辑资源和I/O资源等。速度一般指可编程逻辑器件工作的最高频率。可编程逻辑器件和MCU系统不同的是,其设计的工作频率不是固定的,而是和设计本身的延迟紧密相关。在实际设计中,使用最小的面积设计出最高速度当然是每一个开发者追求的目标。但往往面积和速度是不可兼得的,所以只有兼顾面积和速度,在成本和性能之间有所取舍,才能达到设计中的产品需求。在实际工作中我们经常会采用速度换面积、面积换速度两种相反的方法。 7.3.1 速度换面积 速度换面积是指速度优势可以换取面积的节约,即可以以降低系统工作速度为代价换取硬件资源的节约。举例来说明,在流水线设计设计中,每一级流水线常常有同一个算法被重复使用,但是使用的次数不一样。在正常设计中,这些被重复使用,但是使用次数不同的模块将会占用大量的可编程逻辑器件资源。这时,我们可以对可编程逻辑器件的设计进行一些改造,将被重复使用的算法模块提炼出最小的复用单元,并利用这个最小的高速单元代替原设计中被重复不同次数的模块。 例如一个流水线有n个步骤,每个步骤都相应的运算一个重复次数不同的算法,每个算法
您可能关注的文档
- CorelDRAW艺术设计 作者 田秋成 第3章CorelDRAW软件及其操作.ppt
- CorelDRAW艺术设计 作者 田秋成 第4章CorelDRAW在平面设计中的应用.ppt
- CorelDRAW艺术设计 作者 田秋成 第5章CorelDRAW在环境艺术设计中的应用.ppt
- CorelDRAW艺术设计 作者 田秋成 第6章CorelDRAW在动漫设计与制作中的应用.ppt
- CorelDRAW职业应用项目教程 作者 张丽霞 N72手机设计.ppt
- CorelDRAW职业应用项目教程 作者 张丽霞 地理位置指示效果图.ppt
- CorelDRAW职业应用项目教程 作者 张丽霞 服装设计.ppt
- CorelDRAW职业应用项目教程 作者 张丽霞 个人网页设计.ppt
- CorelDRAW职业应用项目教程 作者 张丽霞 户外广告设计.ppt
- CorelDRAW职业应用项目教程 作者 张丽霞 卡片类设计(二).ppt
- EDA技术与应用 作者 陈海宴 第8章 系统仿真与ModelSim软件使用.ppt
- EDA技术与应用 作者 陈海宴 第9章 数字设计实例.ppt
- EDA技术与应用 作者陈新华 第2章.ppt
- EDA技术与应用 作者陈新华 第6章.ppt
- Flash8动画设计实例教程 作者 鲍雷 flash8动画设计实例教程 第一章.ppt
- Flash动画实用技术 作者 刘彦武 刘玉山 第2章 Flash动画基础.ppt
- Flash动画实用技术 作者 刘彦武 刘玉山 第4章 引导线动画.ppt
- Flash动画实用技术 作者 刘彦武 刘玉山 第5章 Flash的元件.ppt
- Flash动画实用技术 作者 刘彦武 刘玉山 第6章 Flash动作脚本基础.ppt
- Flash动画实用技术 作者 刘彦武 刘玉山 第7章 Flash中的声音和视频.ppt
原创力文档


文档评论(0)