ImageVerifierCode 换一换
格式:PPT , 页数:36 ,大小:344KB ,
资源ID:15665274      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/15665274.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第7章Verilog设计的优化PPT课件下载推荐.ppt)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第7章Verilog设计的优化PPT课件下载推荐.ppt

1、n 在在Verilog模块中,模块中,任务任务(task)通常被综)通常被综合成组合逻辑的形式;每个合成组合逻辑的形式;每个函数函数(function)在调用时通常也被综合为一个)在调用时通常也被综合为一个独立的独立的组合电路模块。组合电路模块。7.2 流水线设计流水线设计技术技术 o流水线设计是经常用于提高所设计系统运行速度的流水线设计是经常用于提高所设计系统运行速度的一种有效的方法。为了保障数据的快速传输,必须一种有效的方法。为了保障数据的快速传输,必须使系统运行在尽可能高的频率上,但如果某些复杂使系统运行在尽可能高的频率上,但如果某些复杂逻辑功能的完成需要较长的延时,就会使系统难以逻辑功

2、能的完成需要较长的延时,就会使系统难以运行在高的频率上,在这种情况下,可使用流水线运行在高的频率上,在这种情况下,可使用流水线技术,即在长延时的逻辑功能块中插入触发器,使技术,即在长延时的逻辑功能块中插入触发器,使复杂的逻辑操作分步完成,减小每个部分的延时,复杂的逻辑操作分步完成,减小每个部分的延时,从而使系统的从而使系统的运行频率得以提高运行频率得以提高。流水线设计的代流水线设计的代价是增加了寄存器逻辑,增加了芯片资源的耗用。价是增加了寄存器逻辑,增加了芯片资源的耗用。流水线操作的概念流水线操作的概念 o如某个复杂逻辑功能的实现需较长的延时,可如某个复杂逻辑功能的实现需较长的延时,可将其分解

3、为几个(如将其分解为几个(如3个)步骤来实现,每一步个)步骤来实现,每一步的延时变小,在各步间加入寄存器,以暂存中的延时变小,在各步间加入寄存器,以暂存中间结果,这样可大大提高整个系统的最高工作间结果,这样可大大提高整个系统的最高工作频率。频率。流水线操作的概念示意图流水线操作的概念示意图流水线操作的概念示意图流水线操作的概念示意图 非流水线方式非流水线方式8 8位全加器位全加器module adder8(cout,sum,ina,inb,cin,clk);input7:0 ina,inb;input cin,clk;output7:0 sum;output cout;reg7:0 tempa

4、,tempb,sum;reg cout,tempc;always(posedge clk)begin tempa=ina;tempb=inb;tempc=cin;end/输入数据锁存输入数据锁存always(posedge clk)begin cout,sum=tempa+tempb+tempc;endendmodule两级流水实现的两级流水实现的8 8位加法器位加法器module adder_pipe2(cout,sum,ina,inb,cin,clk);output reg7:output reg cout;reg3:0 tempa,tempb,firsts;reg firstc;alwa

5、ys(posedge clk)begin firstc,firsts=ina3:0+inb3:0+cin;tempa=ina7:4;tempb=inb7:endalways(posedge clk)begin cout,sum7:4=tempa+tempb+firstc;sum3:0=firsts;endendmodule将将8位数每四位分位数每四位分2次相加,形成两级流水线运算过程。次相加,形成两级流水线运算过程。四级流水线实现的四级流水线实现的8 8位加法器位加法器module pipeline(cout,sum,ina,inb,cin,clk);reg tempci,firstco,se

6、condco,thirdco,cout;reg1:0 firsts,thirda,thirdb;0 seconda,secondb,seconds;reg5:0 firsta,firstb,thirds;tempci=cin;end /输入数据缓存输入数据缓存always(posedge clk)begin firstco,firsts=tempa1:0+tempb1:0+tempci;/第一级加(低第一级加(低2位)位)firsta=tempa7:2;firstb=tempb7:/未参加计算的数据缓存未参加计算的数据缓存endalways(posedge clk)begin secondco

7、,seconds=firsta1:0+firstb1:0+firstco,firsts;seconda=firsta5:secondb=firstb5:/数据缓存数据缓存endalways(posedge clk)begin thirdco,thirds=seconda1:0+secondb1:0+secondco,seconds;thirda=seconda3:thirdb=secondb3:/数据缓存数据缓存endalways(posedge clk)begin cout,sum=thirda1:0+thirdb1:0+thirdco,thirds;/第四级加(高两位相加)第四级加(高两位

8、相加)end endmodule将将8位数每两位分位数每两位分4次相加,形成四级流水线运算过程。次相加,形成四级流水线运算过程。设计综合到不同器件的最高工作频率设计综合到不同器件的最高工作频率 2 2 2 2个加法器和个加法器和个加法器和个加法器和1 1 1 1个选择器的实现方式个选择器的实现方式个选择器的实现方式个选择器的实现方式module resource1(sum,a,b,c,d,sel);parameter SIZE=4;input sel;inputSIZE-1:0 a,b,c,d;output regSIZE:always(*)/使用通配符使用通配符begin if(sel)su

9、m=a+b;else sum=c+d;end endmodule7.3 资源共享(资源共享(Resource Sharing)资源共享可用来减少系统所耗用的器件资源,尤其是将一些资源共享可用来减少系统所耗用的器件资源,尤其是将一些耗用资源较多的模块进行共享,能有效降低整个系统耗用的耗用资源较多的模块进行共享,能有效降低整个系统耗用的资源。资源。2 2个选择器和个选择器和1 1个加法器的实现方式个加法器的实现方式module resource2(sum,a,b,c,d,sel);regSIZE-1:0 atemp,btemp;always(*)/使用通配符使用通配符begin if(sel)be

10、gin atemp=a;btemp=b;endelse begin atemp=c;btemp=d;endsum=atemp+btemp;endendmodule资源共享(资源共享(Resource Sharing)器件资源的消耗对比器件资源的消耗对比资源共享(资源共享(Resource Sharing)方方式式一一需需要要2个个加加法法器器,而而方方式式二二通通过过增增加加一一个个MUX,共共享享一一个个加加法法器器,由由于于加加法法器器耗耗用用的的资资源源比比MUX更更多多,因因此此方方式式二二更更节节省省资资源源。所所以以在在电电路路设设计计中中,应应尽尽可可能能使使硬硬件件代代价价高高

11、的的功功能能模模块块资资源源共共享享,从从而而降降低低整整个个系系统统的的成成本本。计计算算位位数数越越多多,耗用的资源差别越大。耗用的资源差别越大。资源共享(资源共享(Resource Sharing)结结 论论7.4 过程过程o在在Verilog语言中,过程语句包括语言中,过程语句包括always和和initial。always过程反复执行其中的块语句,而过程反复执行其中的块语句,而initial过程中的语过程中的语句块只执行一次。句块只执行一次。always过程可综合,过程可综合,initial语句只能用语句只能用于仿真。于仿真。oalways过程语句与过程语句与VHDL语言的进程语句语

12、言的进程语句Process非常相非常相像,像,它既可以用来描述时序电路,也可以用来描述组合电路它既可以用来描述时序电路,也可以用来描述组合电路。一个一个Verilog模块中的模块中的不同不同always过程语句是并行运行过程语句是并行运行的。的。oassign赋值语句、实例元件的调用也都是并行运行的,我赋值语句、实例元件的调用也都是并行运行的,我们可以这样理解:这些语句最终都综合或翻译成为具体的电们可以这样理解:这些语句最终都综合或翻译成为具体的电路结构,而这些电路结构是同时在运行或动作的。路结构,而这些电路结构是同时在运行或动作的。在进行数字系统设计的时候应注意在进行数字系统设计的时候应注意o将组合逻辑实现的电路和用时序逻辑实现的电将组合逻辑实现的电路和用时序逻辑实现的电路应尽量分配到不同的路应尽量分配到不同的always过程中。过程中。o一个一个always过程中过程中只允许描述对应于一个时只允许描述对应于一个时钟信号的同步时序逻辑。钟信号的同步时序逻辑。oalways过程必须由过程必须由敏感信号的变化来启动敏感信号的变化来启动,因此应精心选择进程敏感表达式中的敏感变量。因此应精心选择进程敏感表达式中的敏感变量。o多个多个always过程间可通过过程间可通过信号线信号线进行通信和进

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1