四位二进制减计数器_第1页
四位二进制减计数器_第2页
四位二进制减计数器_第3页
四位二进制减计数器_第4页
四位二进制减计数器_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 成成 绩绩 评评 定定 表表学生姓名班级学号120306专 业通信工程课程设计题目四位二进制减计数器评语组长签字:成绩日期 2014 年 7 月 15 日课程设计任务书课程设计任务书学 院信息科学与工程学院专 业通信工程学生姓名班级学号120306课程设计题目四位二进制减计数器(缺 1001,1010)实践教学要求与任务实践教学要求与任务: :1、了解数字系统设计方法2、熟悉 VHDL 语言及其仿真环境、下载方法3、熟悉 Multisim 环境4、设计实现四位二进制减计数器(缺 1001,1010)工作计划与进度安排工作计划与进度安排: :第一周 熟悉 Multisim 环境及 Quartu

2、s环境,练习数字系统设计方法, 包括采用触发器设计和超高速硬件描述语言设计,体会自上而 下、自下而上设计方法的优缺点。第二周 在Quartus环境中用 VHDL 语言实现四位二进制减计数器(缺 1001,1010)显示结果波形,并下载到目标芯片上,在实验箱上观察输出结果。在 Multisim 环境中仿真实现四位二进制减计数器(缺1001,1010) ,并通过虚拟器验证其正确性。 指导教师: 2014 年 6 月 19 日专业负责人:2014 年 6 月 19 日学院教学副院长:2014 年 6 月 20 日摘 要Quartus II 是 Altera 公司的综合性 PLD/FPGA 开发软件,

3、支持原理图、VHDL、VerilogHDL 以及 AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整 PLD 设计流程。Multisim 是 Interactive Image Technologies (Electronics Workbench)公司推出的以 Windows 为基础的仿真工具,适用于板级的模拟/数字电路板的设计工作。它包含了电路原理图的图形输入、电路硬件描述语言输入方式,具有丰富的仿真分析能力。Multisim 为用户提供了丰富的元器件,并以开放的形式管理元器

4、件,使得用户能够自己添加所需要的元器件。 在 QuartusII8.1 软件中,建立名为 wq 的工程,用四位二进制减法计数器的VHDL 语言实现了四位二进制减法计数器的仿真波形图,同时进行相关操作,锁定了所需管脚,将其下载到实验箱。 在 Multisim 软件中,通过选用四个时钟脉冲下降沿触发的 JK 触发器和同步电路,画出其时序图,卡诺图,建立相关方程,做出相关计算,完成四位二进制减法计数器(缺 1001,1010)的驱动方程。在 Multisim 软件里画出了四位二进制减法计数器的逻辑电路图。分析由红绿灯的亮灭顺序及状态,和逻辑分析仪里出现波形图,证明四位二进制减法计数器设计成功。 关键

5、字:VHDL 语言;四位二进制减计数器;QUARTUS;Multisim 1.课程设计目的.12.设计框图.13.实现过程.23.1 QUARTUS实现过程.2 3.1.1 建立工程.2 3.1.2 VHDL 源程序.4 3.1.3 波形仿真.5 3.1.4 引脚锁定与下载.7 3.1.5 仿真结果分析.93.2 MULTISIM实现过程 .9 3.2.1 求驱动方程.9 3.2.2 画逻辑电路图.11 3.2.3 逻辑分析仪的仿真.12 3.2.4 结果分析.134.总结.145.参考文献.15目 录11.课程设计目的1.了解四位二进制减法计数器的工作原理和逻辑功能;2.学会用 VHDL 语

6、言对计数器进行编译和仿真;3.掌握 QuartusII 的使用方法;4.掌握 Multisim 的使用方法。2.设计框图状态转换图是描述时序电路的一种方法,具有形象直观的特点,即其把所用触发器的状态转换关系及转换条件用几何图形表示出来,十分清新,便于查看。在本课程设计中,四位二进制同步减法计数器用四个 CP 下降沿触发的 JK触发器实现,其中有相应的跳变,即跳过了 1001 1010 两个状态,这在状态转换图中可以清晰地显示出来。具体结构示意框图和状态转换图如下: 四位二进制同步减法计数器CP输入减法计数脉冲C输出进位信号 A:结构示意框图 1111 1110 1101 1100 1011 1

7、000 0111 0000 0001 0010 0011 0100 01010110 (缺 1001,1010)B:状态转换图23.实现过程3.1. Quartus实现过程3.1.1 建立工程(1)点击 File New Project Wizard 创建一个新工程。点击 Next,为工程选择存储目录、工程名称、顶层实体名等,并点击 Next,若目录不存在,系统可能提示创建新目录,如图 1 所示,点击“是”按钮创建新目录;图 1 选择存储目录、工程名称、顶层实体名(2)系统提示是否需要加入文件,在此不添加任何文件,如图 2;3 图 2 是否添加文件(3)点击 Next,进入设备选择对话框,如图

8、 3,这里选中实验箱的核心芯片 CYCLONE 系列 FPGA 产品 EP1C6Q240C8;图 3 设备选择(4)点击 Next,系统显示如图 4,提示是否需要其他 EDA 工具,这里不选任何其他工具;图 4 是否需要其他 EDA 工具4(5)点击 Next 后,系统提示创建工程的各属性总结,若没有错误,点击Finish,工程创建向导将生成一个工程,在窗口左侧显示出设备型号和该工程的基本信息等;图 5 创建工程的各属性总结3.1.2 VHDL 源程序library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL

9、;entity wq isport(CP,r:in std_logic; q:out std_logic_vector(3 downto 0); end wq;architecture behavioral of wq is signal count:std_logic_vector(3 downto 0); begin process(cp,r) begin if r=0 then count=1111; elsif cpevent and cp=1 then if count=1011 then count=1000; else count=count-1; if count=0000th

10、en5 count=1111; else count=count-1; end if; end if; end if; end process; qNew 创建一个设计文件,选择设计文件的类型为 VHDL File,如图 6;图 6 创建设计文件 (2)在编辑窗口中编辑程序,并存盘,如图 7;6图 7 编辑程序(3)点击 Processing-Start Compilation 编译该文件,系统将开始编译,结束后,给出提示信息和编译结果,如图 8 所示;图 8 编译(5)建立时序仿真文件,选择“Vector Waveform File” ,如图 9;图 9 建立时序仿真文件(6)出现的界面中,

11、在 Name 空白处击右键,InsertInsert Node or Bus,单击,单击,再单击 OKOK,并对其进行仿真,如图 107所示;图 10 仿真(7)仿真结果,如图 11 所示;图 11 仿真结果(8)仿真后存盘 3.1.4 引脚锁定与下载8各引脚的锁定如表 1 所示: 表 1 锁引脚引脚的锁定和下载分别如图 12 和图 13 所示: 图 12 锁引脚信号名称引脚cp28q3101q2100q199q098r539图 13 下载3.1.5 仿真结果分析仿真波形图可以看出减法计数器的工作过程:由 1111 起依次递减,最后减至 0000 后再由 1111 起进行下一个周期的循环,其中

12、缺少 1001,1010 两个状态。当复位键复位后,回到 1111 重新开始循环。3.2 Multism 实现过程3.2.1 求驱动方程选择四个时钟脉冲下降沿触发的 JK 触发器,因要使用同步电路,所以时钟方程应该为CPCPCPCPCP3210(1)求状态方程由所示状态图可直接画出如表 2 所示电路次态的卡诺图,13 nQ12 nQ11 nQ10nQ再分解开便可以得到如表 3 (a) (b) (c) (d)所示各触发器的卡诺图。表 2 次态的卡诺图13 nQ12 nQ11 nQ10nQ由上述卡诺图可求出、表达式如下所示:13 nQ12 nQ11 nQ10nQnQ1nQ0nQ3nQ2000111

13、10001000010000111111100X11nQ1nQ0nQ3nQ2000111100011110000001000010100110100 01100101111011110011101101100111XXXX1000XXXX10表 3 (a) 的卡诺图13 nQnQ1nQ0nQ3nQ200011110001000010 111110111101X0X表 3(b) 的卡诺图12 nQnQ1nQ0nQ3nQ200011110001010011010111010101X0X表 3(c)的卡诺图11 nQ11nQ1nQ0nQ3nQ20001111000100101100111100110

14、1X0X表 3(d) 的卡诺图 10nQ根据卡诺图进行相应化简即得到状态方程,如下: nnnnnnnnnnnnnnnnnnnnnnnnQQQQQQQQQQQQQQQQQQQQQQQQQQQQ01001n201301110121n20n212012313n2313 (2)求驱动方程由于 JK 触发器的特性方程为nnnQKQJQ1用状态方程与特性方程做比较,可得对应驱动方程,如下: 1100011010120121230123KJQQKQJQQKQQJQQKQQQJnnnnnnnnnnnn123.2.2 画逻辑电路图根据所选用的触发器和时钟方程、输出方程、驱动方程,便可以画出如图 14 所示的逻辑

15、电路图图 14 逻辑电路图 3.2.3 逻辑分析仪的仿真逻辑分析仪显示的波形如图 15 所示:13图 15 逻辑分析仪波形检查电路能否自启动:把无效状态 1001 和 1010 带入输出方程和和状态方程进行计算,结果如下:0000100110101/0/由此可见,在 CP 操作下都能回到有效状态,即电路能够自启动。3.2.4 结果分析 Multism 是一种虚拟仪器,可以用来验证电路的设计的正确性。根据相关计算,得出时序电路的时钟方程、状态方程、驱动方程,从而选择合适触发器来连接实现。本设计中,选用四个时钟脉冲下降沿触发的 JK 触发器来实现四位二进制减法计数器。逻辑电路图中,四个小红灯即为显

16、示器,灯亮表示“1”,灭表示“0”,从而达到计数目的。由于其中缺了 1001,1010 两种状态,所以在计数过程中会发生跳变,即先从 1011 跳到 1000,再由 0000 直接跳回到 1111,周而复始。逻辑分析仪类似于Quartus环境下的波形仿真,是对计数器的另一种直观的描述。其中,高电平表示“1”,低电平表示“0”,也可以对计数器的功能进行测试及检验。144.总结在本次数字电路课程设计中,我花了较多的时间查阅资料,进行反复练习,使我对二进制减法计数器掌握得更加熟练。这对我以后学习相关的课程以及进行更高层次的数字电路设计都奠定了不错的基础。在设计过程中,出现了各种各样的问题,有些是单一

17、原因引起的,有的是综合原因引起的,这些都很考验我的毅力与坚持。但是我掌握了研究这类问题的方法,即问题解决的过程就是要从问题所表现出来的情况出发,通过反复推敲,作出相应判断,逐步找出问题的症结所在,从而一举击破。对于数字电路设计,尤其在使用 Multism 进行逻辑电路的连接与分析时,这种分析解决问题的能力就更为重要。要在复杂的电子器件和密密麻麻的连线中找出头绪来,并不是一件很容易的事情。往往要重新再来一次,但是这样的问题就出在计算上,尤其是在化简卡诺图时,务必小心谨慎,一个字符写错或者漏掉一些信息,就会导致驱动方程错误,逻辑电路就不能实现最初的设计功能。 在学习过数字电路技术基础简明教程之后,我已经算是掌握了一定的数字电路设计的基础以及

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论