《数字逻辑课程设计D触发器的设计.doc》由会员分享,可在线阅读,更多相关《数字逻辑课程设计D触发器的设计.doc(20页珍藏版)》请在三一办公上搜索。
1、课 程 设 计 报 告课程名称 数字逻辑课程设计 课 题 D触发器的设计 专 业 计算机科学与技术 班 级 计算机1002 学 号 201003010207 姓 名 唐自鸿 指导教师 刘洞波 陈华光 陈多2011年 12月 08日课程设计任务书课程名称 数字逻辑课程设计 课 题 D触发器的设计 专业班级 学生姓名 学 号 指导老师 审 批 任务书下达日期: 2011年 12月 08日任务完成日期: 2011年 12月 17日 目 录一设计内容与要求-二系统分析-三详细设计-四总结-五附录(源代码)-一、设计内容与设计要求1设计内容:本课程是一门专业实践课程,学生必修的课程。其目的和作用是使学生
2、能将已学过的数字电子系统设计、VHDL程序设计等知识综合运用于电子系统的设计中,掌握运用 VHDL或者Verilog HDL设计电子系统的流程和方法,采用Quartus II等工具独立应该完成1个设计题目的设计、仿真与测试。加强和培养学生对电子系统的设计能力,培养学生理论联系实际的设计思想,训练学生综合运用数字逻辑课程的理论知识的能力,训练学生应用Quartus II进行实际数字系统设计与验证工作的能力,同时训练学生进行芯片编程和硬件试验的能力。题目一 4线-16线译码器电路设计;题目二 16选1选择器电路设计;题目三 4位输入数据的一般数值比较器电路设计题目四 10线-4线优先编码器的设计题
3、目五 8位全加器的设计题目六 RS触发器的设计;题目七 JK触发器的设计;题目八 D触发器的设计;题目九 十进制同步计数器的设计;题目十 T触发器的设计;每位同学根据自己学号除以10所得的余数加一,选择相应题号的课题。参考书目1EDA技术与VHDL程序开发基础教程雷伏容,李俊,尹霞清华大学出版社978-7-302-22416-72010TP312VH/362VHDL 电路设计技术王道宪贺名臣刘伟国防工业出版社7-118-03352-92004TN702/623VHDL 实用技术潘松,王国栋7-810657-81065-290-72000TP312VH/14VHDL 语言100 例详解北京理工大
4、学ASIC研究所7-9006257-900625-02-X1999TP312VH/35VHDL编程与仿真王毅平等人民邮电出版社7-115-08641-9200073.9621/W38V6VHDL程序设计教程邢建平曾繁泰清华大学出版社7-302-11652-02005TP312VH/27/37VHDL电路设计雷伏容清华大学出版社7-302-14226-22006TN702/1852设计要求:l 课程设计报告规范课程设计报告应包含如下几个部分1) 功能描述说明设计器件的功能,包括真值表(功能表),函数表达式,逻辑电路图2) 详细设计按照VHDL语言开发流程写出整个开发的详细过程,可以根据如下步骤适
5、当导出程序,程序界面截图到课程设计报告对应模块。3) 调试分析以及设计体会a.仿真或程序下载调试(附界面截图)。b.设计过程中遇到的问题以及解决问题的方法。c.课程设计过程经验教训、心得体会。4) 书写格式见附带说明。5) 附录a.参考书目b.源程序清单(带注释)l 考核方式指导老师负责验收程序的运行结果,并结合学生的工作态度、实际动手能力、创新精神和设计报告等进行综合考评,并按优秀、良好、中等、及格和不及格五个等级给出每位同学的课程设计成绩。具体考核标准包含以下几个部分:1) 平时出勤 (占10%)2) 系统需求分析、功能设计、数据结构设计及程序总体结构合理与否(占10%)3) 程序能否完整
6、、准确地运行,个人能否独立、熟练地调试程序(占40%)4) 设计报告(占30%)5) 注意:不得抄袭他人的报告(或给他人抄袭),一旦发现,成绩为零分。6) 独立完成情况(占10%)。l 课程设计验收要求1) 运行所设计的系统。2) 回答有关问题。3) 提交课程设计报告纸质稿。4) 提交源程序或设计报告文档电子稿。5) 依内容的创新程度,完善程序情况及对程序讲解情况打分。二、进度安排上机时间:十五周周五14:00-18:00十六周周二14:00-18:00十六周周五 14:00-18:00附带说明:课程设计报告装订顺序:封面、任务书、目录、正文、评分、附件(程序清单)。 正文的格式:一级标题用3
7、号黑体,二级标题用四号宋体加粗,正文用小四号宋体;行距为22。正文的内容:一、课题的主要功能;二、详细设计;三、程序调试;四、总结;五、附件(所有程序的原代码,要求对程序写出必要的注释)。二、系统分析1.D触发器的功能 状态转移用表格的形式描述触发器在输入信号作用下,触发器的下一个稳定状态(次态)Qn+1与触发器的原稳定状态(现态)Qn和输入信号状态之间的关系。真值表SetResetDCKQnQn+1 010_10101_0111111110002.D触发器的状态方程Qn+1=D3.逻辑电路图QQ & & & &1DCP三、详细设计1、打开Quartus软件,建立一个新的工程: (1) 如图1
8、-1 所示,运行Quartus II 软件。 2)单击菜单FileNew Project Wizard. 3) 输入工程的路径、工程名以及顶层实体名。 4)单击Next按钮,本实验没有包含已有文件,单击Next按钮。 5)设置我们的器件信息。 6)单击Next 2、 建立Verilog HDL文件: 1)单击FileNew菜单项,选择弹出窗口中的Verilog HDL File项,单击OK按钮以建立打开空的Verilog HDL文件。 2)在编辑窗口输入Verilog HDL源文件并保存实体名,文件名必须和保存的顶层实体名必须一致。 3)编译工程 单击Processing/Start Comp
9、liation开始编译,编译过程可能出现若干错误信息,参考提示原因改正程序直到完全正确能够进行编译为止。 3、 建立矢量波形文件 1)单击File/New命令,在弹出的窗口中找到 other file中的Vactoe Waveform File项打开矢量波形窗口。 2)双击窗口左边的空白区域,单击Edit/End Time设置时钟频率,单击Edit/Insert Node and Bus对话框。 3)单击Node Finder 按钮,打开以下对话框,选择Filter下列表中的Pins:all,并点击List按照以下列出的所有端口,通过按钮把这些端口加入到右面的窗口中,单击OK完成端口的添加4)
10、回到波形编辑窗口,对所有输入端口设置输入波形,具体可以通过左边的工具栏,或通过对信号的单击鼠标哟见的弹出式菜单中完成操作,最后保存次波形文件。 4、进行功能仿真 1)单击AssignmentsSettings.,在弹出对话框将Simiulation mode 设置为Functional,即功能仿真。指定仿真波形文件后单击OK完成设置。 2)单击ProcessingGenetate Functional Simulation Netlist以获得功能仿真网络表。 3)单击ProcessingStart Simulation进入仿真页面。 5、进入时序仿真 如果功能仿真无误,可以进入时序仿真,时序
11、仿真是增加了相关延迟的仿真,是最接近实际情况的仿真。1) 单击AssignmentsSettings,在弹出对话框中将Simulation mode设置为Timeing即时仿真。指定仿真波形文件后单击OK完成设置。2) 单击ProcessingStart Simulation进入到仿真界面。6、器件的下载(一)指定器件引脚:单击AssignmentsAssingnments Plns 为每一个引脚赋值当我们分配引脚完成后,选择FileSave 菜单,将创建的图形文件保存。选择ToolsCompiler Tool 菜单,出现如图1-10 所示的编辑工具界面
12、。点击“Start”按钮开始对此工程进行逻辑分析、综合适配、时序分析等。(二)分配引脚及下载到开发板芯片 如果设计正确则如图1-10 所示完全通过各种编译,如果有错误则返回图形编辑工作区域进行修改,直至完全通过编译为止。图1-10 编辑工具界面(1)选择AssignmentsAssignment Editor 菜单,在如图1-11 所示的Assignment Editor窗口中选择Pin 标签页,在Edit 中选择输入/输出引脚及对应的CPLD 引脚(2) 引脚分配完成后,选择ToolsCompiler Tool 菜单,在如图1-10 所示的编辑工具界面
13、中点击“Start”按钮,对此工程进行逻辑分析、综合适配、时序分析等。完成后可选择AssignmentsTiming Closure Floorplan 菜单,观察引脚分配的结果。经过编辑后会生成可以配置到CPLD 的POF 文件,此时就可以将设计配置到芯片中。(3) 使用TDN-CM+实验系统及CPLD 开发板,如图1-12 所示进行实验接线,将下载电缆插入CPLD 开发板的JTAG 下载接口中。仔细检查确保接线无误后打开电源。(4) 在Quartus II 软件中,选择ToolsProgrammer 菜单,出现如图1-13 所示的编程配置界面。点击“
14、Add File”按钮添加需要配置的POF 文件,选中Program/Configure,点击“Start”按钮就可以对芯片进行配置。1、 新建工程(如图) 2、 保存并编辑源程序 New project wizard3、编译并检测原程序Compier toolReport and Start compilation4、模拟前的准备工作制作网表(Netlist)5、设置波形图(Vector Waveform File)6、时序模拟Edit(end time)7、edit(Insert/insert note and bus.)然后在点击Node Finder8、 Simulator Tool9
15、9、Report10、配置引脚(Assignments/ Assignments pins)三、调试程序 问题以及解决问题的方法: 调试程序时程序有很多错误,主要是文件名、实体名和触发器的顶级实体名不一致导致程序进行 Start Compliation 错误,改正就好了。四总结 通过一个星期的的课设,虽然比较累但也学到一些知识:1、 触发器是数字系统中非常重要的器件,它应用于有记忆功能的逻辑电路之中。不同的触发器在状态的变化有不同的动作特点,用Verilog HDL语言描述时,需要分析真值表,掌握其触发方式,结合触发器本身的特点充分应用if语句,让程序简单易读。2、 D触发器只有一个激励端,D
16、触发器具有存储的特性,在每一个触发脉冲作用后,输出将激励端(D端)信号保存起来,因此D触发器常作为数据寄存器。这一点在程序的设计中叶应该特别注意。3、 在程序的编写过程中,我们应该首先分析各个端口的优先级顺序,这一点就可以利用if语句首先进行判断。这一点是用VHDL语言进行设计数字逻辑电力的共同点,是我们学习过程中必须掌握的内容。在此次课设中,我们将课本理论知识与实际应用联系起来。按照书本上的知识和老师教授的方法,首先分析此次实验设计的任务和要求,然后按照分析的结果进行实际操作,检测和校正,再进一步完善电路.通过这次的电路设计,我们加深了对课本知识的认识理解,对电路设计方法和实际电路连接也有了一定的初步认识。总之,从此次实验我获益很多。计算机与通信学院课程设计评分表课题名称: 项 目评 价设计方案的合理性与创造性设计与调试结果设计说明书的质量答辩陈述与回答问题情况课程设计周表现情况综合成绩 教师签名: 日 期: