四位二进制减法计数器

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

成绩评定表学生姓名xxx班级学号xxx专业通信工程课程设计题目四位二进制减计数器评语组长签字:成绩日期20年月日课程设计任务书学院信息科学与工程学院专业通信工程学生姓名xxxxx班级学号xxxxx课程设计题目四位二进制减计数器(缺0100,0101,0110,1000,)实践教学要求与任务:1、了解数字系统设计方法2、熟悉VHDL语言及其仿真环境、下载方法3、熟悉Multisim环境4、设计实现四位二进制减计数器(缺0100,0101,0110,1000)工作计划与进度安排:第一周熟悉Multisim环境及QuartusⅡ环境,练习数字系统设计方法,包括采用触发器设计和超高速硬件描述语言设计,体会自上而下、自下而上设计方法的优缺点。第二周在QuartusⅡ环境中用VHDL语言实现四位二进制减计数器(缺0100,0101,0110,1000)显示结果波形,并下载到目标芯片上,在实验箱上观察输出结果。在Multisim环境中仿真实现四位二进制减计数器(缺0100,0101,0110,1000),并通过虚拟器验证其正确性。指导教师:201年月日专业负责人:201年月日学院教学副院长:201年月日摘要QuartusII是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(AlteraHardwareDescriptionLanguage)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。Multisim是InteractiveImageTechnologies(ElectronicsWorkbench)公司推出的以Windows为基础的仿真工具,适用于板级的模拟/数字电路板的设计工作。它包含了电路原理图的图形输入、电路硬件描述语言输入方式,具有丰富的仿真分析能力。Multisim为用户提供了丰富的元器件,并以开放的形式管理元器件,使得用户能够自己添加所需要的元器件。本次数电课程设计使用QuartusII仿真环境以及VHDL下载和Multisim仿真环境来编译实现四位二进制同步减法计数器。在Multisim中选用四个JK触发器来实现四位二进制减法计数器。运用卡诺图求解时序方程。逻辑电路图中,四个小红灯即为显示器,从右到左显示时序图中的十二种状态,其中,灯亮表示“1”,灭表示“0”,从而达到计数目的。关键字:VHDL硬件描述语言、四位二进制减计数器、QUARTUSⅡ、Multisim、目录一.课程设计目的…………………..…………………………………………….…1二.课设题目实现框图…………………………………………………………..….1三.实现过程…………………………………………………………………...……1(一)VHDL的编译和仿真…………………………………………….……….11.建立工程……………………………………………………………….12.VHDL源程序……………………………………………………………43.编译及仿真过程.....................................................................................64.引脚锁定及下载……………………………………………………….95.仿真结果分析........................................................................................11(二)电路设计..................................................................................................111求驱动方程.............................................................................................122.基于Multisim的设计电路图………………………………...……...153.逻辑分析仪显示的波形………………………………………...……154.仿结果分析……………………………………………………………16四.设计体会………………………………………………………………………16五.参考文献..............................................................................................................17一、课程设计目的1.了解同步减计数器的工作原理和逻辑功能;2.学会用VHDL语言对计数器进行编译和仿真;3.掌握QuartusII的使用方法;4.掌握Multisim的使用方法。二、课程设计实现框图状态图111111101101110010111010000000010010001101111001(缺少0100,0101,0110,1000)三、实现过程(一)VHDL的编译和仿真1.建立工程创建一个工程,具体操作过程如下:(1)点击File–NewProjectWizard创建一个新工程,如图1;图1(2)点击Next,为工程选择存储目录、工程名称、顶层实体名等,并点击Next,若目录不存在,系统可能提示创建新目录,如图2所示,点击“是”按钮创建新目录;图2(3)系统提示是否需要加入文件,在此不添加任何文件,如图3;图3(4)点击Next,进入设备选择对话框,如图4,这里选中实验箱的核心芯片CYCLONE系列FPGA产品EP1C6Q240C8;图4(5)点击Next,系统显示如图5,提示是否需要其他EDA工具,这里不选任何其他工具;图5(6)点击Next后,系统提示创建工程的各属性总结,若没有错误,点击Finish,工程创建向导将生成一个工程,,在窗口左侧显示出设备型号和该工程的基本信息等。2.VHDL源程序libraryIEEE;useIEEE.STD_LOGIC_1164.ALL;useIEEE.STD_LOGIC_UNSIGNED.ALL;entitycount10isport(CP,r:instd_logic;q:outstd_logic_vector(3downto0));endcount10;architecturebehavioralofcount10issignalcount:std_logic_vector(3downto0);beginprocess(cp,r)beginifr='0'thencount=1111;elsifcp'eventandcp='1'thenifcount=1001thencount=0111;elsecount=count-1;ifcount=0111thencount=0011;elsecount=count-1;ifcount=0000thencount=1111;elsecount=count-1;endif;endif;endif;endif;endprocess;q=count;endbehavioral;3.编译和仿真过程(1)点击File-New创建一个设计文件,选择设计文件的类型为VHDLFile,如图6;图6(2)在编辑窗口中编辑程序,如图7;图7(3)输入程序后,存盘;(4)点击Processing-StartCompilation编译该文件,系统将开始编译,结束后,给出提示信息和编译结果,如图8所示:图8(5)建立时序仿真文件,选择“VectorWaveformFile”,如图9;图9(6)出现的界面中,在Name空白处击右键,Insert→InsertNodeorBus,单击,单击,再单击→OK→OK,并对其进行仿真,如图10所示;图10(7)仿真结果如图11:图11(8)仿真后存盘。4.引脚的锁定及下载各引脚的锁定如表1所示:表1引脚的锁定和下载分别如图12和图13所示:图12信号名称引脚cp28q3114q2115q1116q0117r58图135.仿真结果分析结果分析:由仿真波形图可以清晰的看出减法计数器的工作过程,由1111起依次递减,最后减至0000后再由1111起进行下一个周期的循环,其中缺少0100,0101,0110,1000两个状态。当复位键复位后,回到1111重新开始循环。2.Multism实现过程1·求驱动方程相关结构示意框图和状态转换图见上(二)所示步骤。选择四个时钟脉冲下降沿触发的JK触发器,因要使用同步电路,所以时钟方程应该为CPCPCPCPCP3210(1)求状态方程由所示状态图可直接画出如图2.1所示电路次态13nQ12nQ11nQ10nQ的卡诺图,再分解开便可以得到如图2.2所示各触发器的卡诺图。要的逻辑门外,没有专门的运算电路;计算结果由电路中的各个触发器记忆和表示;计数器计满之后自动归零,若再输入CP脉冲又会从零开始计数,在CP脉冲作用下,它总是周而复始循环工作的。b.Q13n的卡诺图:nQ1nQ0nQ3nQ20001111000100001XX0X11111110X011nQ1nQ0nQ3nQ20001111000111100000010000101XXXXXXXX0011XXXX11101111001110110110XXXX011110101001c.`12nQ的卡诺图:nQ1nQ0nQ3nQ20001111000100001XX1011011110X100d.Q11n的卡诺图:nQ1nQ0nQ3nQ200‘01111000101001XX1X11101O10X110e.Q10n的卡诺图:nQ1nQ0nQ3nQ20001111000100101XX1X11100110X1O1(2)状态方程nnnnnnnQQQQQQQ13230113nnnnnnnnnnQQQQQQQQQQ12301301212nnnnnnnnQQQQQQQQ023010111nnnnnnQQQQQQ1232301n0Q(3)驱动方程JK触发器的特性方程nnnQKQJQ1将状态方程与特性方程比较,可得驱动方程,如下:3Jn0n1QQnnnQQQK0123nnnQQQJ3012nnnQQQK0132nnnQQQJ2301nQ01K1J0nnnnnQQQQQK1232302.基于Multisim的设计电路图根据上面计算出的结果的不同J和K值选择不同的元件进行电路的连接。电路图3.逻辑分析仪显示的波形逻辑分析仪显示的波形如图15所示:4.仿真结果分析结果分析:由图15可以清楚地看到在一个周期内,由大到小,依次完成了减计数器的功能。由于缺省了0100,0101,0110、1000这两个状态,波形仿真中状态发生了跳变,即由1001跳变到0111,由0111跳到0010,完成一个周期计数后,下一周期继续从1111开始,不断循环往复。四、设计体会在本次数字电路课程设计中,我受益匪浅。我原本对二进制加法计数器这一节学习不是很透彻,对于相关设计过程和分析方法并不大熟练。在同学和老师的讲解下,最终还算顺利完成。这对我以后学习相关的课程以及进行更高层次的数字电路设计都奠定了不错的基础。在设计过程中,出现了各种各样的问题,有些是单一原因引起的,有的是综合原因引起的,这些都很考验我的毅力与坚持。但是我掌握了研究这类问题的方法,即问题解决的过程就是要从问题所表现出来的情况出发,通过反复推敲,作出相应判断,逐步找出问题的症结所在,从而一举击破。对于数字电路设计,尤其在使用Multism进行逻辑电路的连接与分析时,这种分析解决问题的能力就更为重要。要在复杂的电子器件和密密麻麻的连线中找出头绪来,并不是一件很容易的事情。往往要从新再来一次,但是这样的问题就出在计算上,尤其是在化简卡诺图时,务必小心谨慎,一

1 / 20
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功