欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    FPGA中verilog时序逻辑电路设计.ppt

    • 资源ID:6505965       资源大小:293.50KB        全文页数:39页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    FPGA中verilog时序逻辑电路设计.ppt

    第4章 时序逻辑电路设计,1.时序电路的基本概念,数字电路按照结构特点不同分为两大类:组合逻辑电路(简称组合电路)和时序逻辑电路(简称时序电路)。组合电路是指由各种门电路组合而成的逻辑电路,输出只取决于当前输入信号的变化,与以前各时刻的输入或输出无关;组合电路没有记忆功能。例如:编/译码器、加法器等常用数字电路都属于组合电路。时序逻辑电路是具有记忆功能的逻辑电路,记忆元件一般采用触发器。因此,时序逻辑电路由组合电路和触发器组成,其等效模型如图4.5所示。,1模型,时序电路按其状态的改变方式不同,可分为同步时序逻辑电路和异步时序逻辑电路两种,在图4.5中,当CLK1与CLK2为相同信号时,该电路为同步电路;当CLK1与CLK2为不同信号时,该电路为异步电路。,1建立和保持时间,触发器的建立时间(Tsu)是指时钟有效沿(这里指上升沿)到来之前数据应保持稳定的时间。触发器的保持时间(Thd)是指时钟有效沿(这里指上升沿)到来之后数据应保持稳定的时间。,1.同步电路设计规则,(1)在用Verilog HDL进行数字逻辑设计时,只使用一个主时钟,同时只使用同一个时钟沿(上升沿或下降沿)。(2)在FPGA设计中,推荐所有输入、输出信号均应通过寄存器寄存,寄存器接口当作异步接口考虑。(3)当全部电路不能用同步电路思想设计时,即需要多个时钟来实现,则可以将全部电路分成若干局部电路(尽量以同一时钟为一个模块),局部电路之间接口当异步接口考虑。(4)电路中所有的寄存器、状态机在上电复位时必须有一个确定的初始态。(5)电路的实际最高频率不应大于理论最高频率,应留有设计余地。,标准同步电路,DFF,DFF,DFF,DFF,组合逻辑,组合逻辑,组合逻辑,组合逻辑,clock,2 D触发器,1.上升沿触发的触发器2.带异步复位、上升沿触发的触发器3.带异步复位和置位、上升沿触发的触发器4.带异步复位和时钟使然、上升沿触发的触发器5.带同步复位、上升沿触发的触发器,上升沿触发的触发器,module dff(data,clk,q);inputdata,clk;outputq;regq;always(posedge clk)beginq=data;endendmodule,带异步复位、上升沿触发的触发器,module dff_asynrst(data,rst,clk,q);inputdata,rst,clk;outputq;regq;always(posedge clk or posedge rst)begin if(rst=1b1)q=1b0;elseq=data;endendmodule,带异步复位和置位、上升沿触发的触发器,module dff_asynrst(data,rst,set,clk,q);inputdata,rst,set,clk;outputq;regq;always(posedge clk or posedge rst or posedge set)begin if(rst=1b1)q=1b0;else if(set=1b1)q=1b1;elseq=data;endendmodule,带异步复位和时钟使然、上升沿触发的触发器,module dff_asynrst(data,rst,en,clk,q);inputdata,rst,en,clk;outputq;regq;always(posedge clk or posedge rst)begin if(rst=1b1)q=1b0;else if(en=1b1)q=data;endendmodule,带同步复位、上升沿触发的触发器,module dff_synrst(data,rst,clk,q);inputdata,rst,clk;outputq;regq;always(posedge clk)begin if(rst=1b1)q=1b0;else q=data;endendmodule,移位寄存器,移位寄存器是一种在时钟脉冲的作用下,将寄存器中的数据按位移动的逻辑电路主要功能:串并转换串行输入串行输出串行输入并行输出并行输入串行输出,串入串出移位寄存器,基本串入串出移位寄存器原理图 8位移位寄存器由8个D触发器串联构成,在时钟信号的作用下,前级的数据向后移动,串行输入串行输出移位寄存器,module shift_1(din,clk,dout);input din,clk;output dout;reg dout;reg tmp1,tmp2,tmp3,tmp4,tmp5,tmp6,tmp7;always(posedge clk)begintmp1=din;tmp2=tmp1;tmp3=tmp2;tmp4=tmp3;tmp5=tmp4;tmp6=tmp5;tmp7=tmp6;dout=tmp7;endendmodule,串入并出shift register,4位串行输入并行输出移位寄存器的逻辑电路如图所示。该寄存器由4个同步D触发器组成这种D触发器的R端是是非同步清零端。,串行输入并行输出移位寄存器,module shift_2(din,clk,clr,q);input din,clk,clr;output 3:0 q;reg 3:0 q;always(posedge clk or negedge clr)beginif(clr=1b0)q=4b0000;elsebeginq0=din;q=q1;endendendmodule,并入串出shift register,并入串出移位寄存器可以将一组二进制数并行送入一组寄存器,然后把这些数据串行从寄存器内输出。一个同步并入串出移位寄存器的基本管脚:并行输出输入端:data时钟脉冲输入端:clk加载数据端:load串行数据输出端:dout,并行输入串行输出移位寄存器,module shift3(clk,din,load,q);input clk,load;input 3:0 din;output q;reg q;reg 3:0 tmp;always(posedge clk)beginif(load=1b1)tmp=din;elsebegintmp=tmp1;tmp0=1b0;q=tmp3;endendendmodule,计数器设计,计数器是一种典型的时序器件,常用于对时钟脉冲的个数进行计数,还用于定时,分频,产生同步脉冲按触发方式分:同步计数器和异步计数器最容易的计数器设计就是cnt=cnt+1,但是你可能得不到最好的结果,计数器,计数器对时钟脉冲进行计数 以递增计数器为例,介绍其Verilog HDL设计方法递增计数器基本引脚:时钟输入端:clk复位端:rst计数使然端:en计数输出端:cnt,计数器设计代码,module cnt_en(en,rst,clk,cnt);parameterWIDTH=8;inputen,rst,clk;outputWIDTH-1:0q;regWIDTH-1:0q;always(posedge clk or posedge rst)beginif(rst=1b1)cnt=8b00000000;elsecnt=cnt+1;endendmodule,Verilog HDL参考设计(1),module count(clk,cnt);input clk;output 2:0 cnt;reg 2:0 cnt;always(posedge clk)beginif(cnt=7)cnt=0;elsecnt=cnt+1;endendmodule,module cnt(clk,cnt);input clk;output 2:0 cnt;reg 2:0 cnt;reg 2:0 next_cnt;always(cnt)begincase(cnt)3h0:next_cnt=3h1;3h1:next_cnt=3h2;3h2:next_cnt=3h3;3h3:next_cnt=3h4;3h4:next_cnt=3h5;3h5:next_cnt=3h6;3h6:next_cnt=3h7;3h7:next_cnt=3h0;default:next_cnt=3b000;endcaseendalways(posedge clk)cnt=next_cnt;endmodule,Verilog HDL参考设计(2),问题思考,1.上述描述的是一个模为多少的计数器?2.请自行设计一个同步模12计数器3.在2基础上进行修改,设计一个带异步复位的模12计数器4.同步复位的模12计数器如何设计?,项目设计1,一、目的(1)实现带计数允许和复位端的十进制、六进制和60进制计数器;(2)掌握计数器类型模块的描述方法;(3)掌握Veriog HDL模块的层次化设计方法。,二、说明 计数器是数字电路系统中最基本的功能模块之一。设计十进制、六进制和100进制计数器,要求计数器有计数允许和复位输入及进位输出功能。计数时钟可以用1Hz信号,用LED显示计数值。本设计要求用仿真和测试两种手段来验证计数器的功能。实验时,可以通过修改十进制计数器的设计得到六进制、100进制计数器。,三、设计要求(1)完成各模块的Verilog HDL设计编码;(2)进行功能仿真;(3)下载并验证计数器功能;(4)如果60进制计数器要求用6进制和10进制计数器搭建电路,请画出设计连接图,并完成设计编码和验证。,分频器设计,在硬件电路设计中时钟信号是最重要的信号之一。在数字电路中,常需要对较高频率的时钟进行分频操作,得到较低频率的时钟信号。,分频器设计,2的整数次幂的分频器设计;偶分频电路设计;占空比为1:15的分频电路设计。,用VerilogHDL语言完成对时钟信号 CLK 的 2 分频,4 分频,8 分频,16 分频。这也是最简单的分频电路,只需要一个计数器即可。,2、4、8、16分频电路设计,2的整数次幂的分频器,module div1(clk,rst,clk2,clk4,clk8,clk16);inputrst,clk;outputclk2,clk4,clk8,clk16;wireclk2,clk4,clk8,clk16;reg3:0cnt;always(posedge clk or posedge rst)beginif(rst=1b1)cnt=4b0000;elsecnt=cnt+1;endassignclk2=cnt0;assignclk4=cnt1;assignclk8=cnt2;assignclk16=cnt3;endmodule,电路的功能仿真波形,6分频电路设计与实现 对于分频倍数不是 2 的整数次幂的情况,我们只需要对源代码中的计数器进行一下计数控制就可以了,如下面用VHDL设计一个对时钟信号进行 6 分频的分频器,电路的仿真波形图,在进行硬件设计的时候,往往要求得到一个占空比不是 1:1 的分频信号,这时仍采用计数器的方法来产生占空比不是 1:1 的分频信号。下面源代码描述的是这样一个分频器:将输入的时钟信号进行 16 分频,分频信号的占空比为 1:15,也就是说,其中高电位的脉冲宽度为输入时钟信号的一个周期。,占空比1:15分频电路设计,占空比为1:15的分频电路设计,module div1_15(clk,rst,clk16);inputrst,clk;outputclk16;regclk16;reg 3:0cnt;always(posedge clk or posedge rst)beginif(rst=1b1)cnt=4b0000;elsecnt=cnt+1;endalways(posedge clk or posedge rst)beginif(rst=1b1)clk16=1b0;else if(clk16=15)clk16=1b1;else clk16=1b0;endendmodule,电路仿真波形图,偶分频电路设计,module div6(clk,rst,clk6);inputrst,clk;outputclk6;regclk6;reg1:0cnt;always(posedge clk or posedge rst)beginif(rst=1b1)cnt=2b00;else if(cnt=2)begincnt=2b00;clk6=clk6;end elsecnt=cnt+1;endendmodule,

    注意事项

    本文(FPGA中verilog时序逻辑电路设计.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开