eda课程设计数字秒表有扩展_第1页
eda课程设计数字秒表有扩展_第2页
eda课程设计数字秒表有扩展_第3页
eda课程设计数字秒表有扩展_第4页
eda课程设计数字秒表有扩展_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

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

文档简介

1、 . . . Xxxxxxxx 大 学课 程 设 计2013 年 7 月 12 日课 程 硬件课程设计 题 目 电子秒表设计 院 系 计算机与信息技术学院 专业班级 计算机科学与技术 11-1 班学生 XX 学生学号 指导教师 . . . / 26东北石油大学课程设计任务书课程 硬件课程设计题目 电子秒表设计 专业 学号 主要容、基本要求等一、主要容:利用 KX_DN 教学实验箱、微机和 Quartus软件系统,使用 VHDL 语言输入方法设计数字秒表。它主要由显示译码器、分频器、十进制计数器、报警器和计数器组成。秒共有 6 个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共

2、有 6 个计数器与之相对应,6 个计数器的输出全都为 BCD 码输出,这样便于同显示译码器的连接。要求可以利用层次设计方法和 VHDL 语言,完成硬件设计设计和仿真。最后在 KX_DN 教学实验箱中实现。二、基本要求:1.四个 10 进制计数器:用来分别对百分之一秒、十分之一秒、秒和分进行计数;2.两个 6 进制计数器:用来分别对十秒和十分进行计数;3.显示译码器:完成对显示的控制;4. 能任意启动和归零。三、扩展要求1.随意停止与启动2.可以多次记录数据并且可以读出各次对数据按照规写出论文,要求字数在 4000 字以上,并进行答辩。论文容包括概述(学习、调研、分析、设计的容摘要)、EDA 技

3、术的现状和发展趋势、对 KX_DN 教学实验箱和Quartus软件的掌握程度、数字钟的设计过程(包括原理图或程序设计、编译、仿真分析、硬件测试的全过程),论文中含有原理图、程序、仿真波形图与其分析报告。完成期限 第 1920 周 指导教师专业负责人2013 年 6 月 25 日 . . . I / 26摘 要EDA 技术是在电子 CAD 技术基础上发展起来的计算机软件系统,是指以计算机为工作平台,融合了应用电子技术、计算机技术、信息处理与智能化技术的最新成果,进行电子产品的自动设计。 本文通过硬件语言 VHDL 的描述,完成可以记录两次的秒表的设计和实现,先设计秒表的各个底层模块,运用底层各个

4、模块产生的进位将各个模块连接起来实现一个普通秒表。然后再将两个普通秒表用选择电路连接在一起,完成可以记录两次的秒表。本次设计的目的就是在掌握 EDA 初步使用的基础上,运用 VHDL 语言对数字秒表进行设计,将理论和实践相结合,提高与计算机硬件有关设计能力,提高分析、解决计算机技术实际问题的能力。通过课程设计深入理解计算机结构与控制实现的技术,达到课程设计的目标。关键词:电子秒表;电子设计自动化;硬件描述语言;Quartus . . . II / 26目 录第 1 章 概 述 11.1 EDA 的概念11.2 硬件描述语言VHDL41.3 Quartus II 概述6第 2 章 实验原理 8第

5、 3 章 电子秒表设计 93.1 分频电路设计93.2 10 位计数器设计103.3 6 位计数器设计113.4 电子秒表设计133.5 扩展功能153.6 电子秒表下载实现18结论 20参考文献 21 . . . 0 / 26第 1 章 概 述1.1 EDA 的概念EDA 技术是在 20 世纪 60 年代中期从计算机辅助设计(CAD) 、计算机辅助制造(CAM) 、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。EDA 是电子设计自动化(Electronic Design Automation)的缩写。EDA 技术就是以计算机为工具,设计者在 EDA 软件平台上,用硬件描

6、述语言HDL 完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。EDA 技术的出现,极提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。 EDA 是电子技术设计自动化,也就是能够帮助人们设计电子电路或系统的软件工具。该工具可以在电子产品的各个设计阶段发挥作用,使设计更复杂的电路和系统成为可能。在原理图设计阶段,可以使用 EDA 中的仿真工具论证设计的正确性;在芯片设计阶段,可以使用 EDA 中的芯片设计工具设计制作芯片的版图;在电路板设计阶段,可以使用 EDA 中电路板设计工具设计多层电路板。

7、特别是支持硬件描述语言的 EDA 工具的出现,使复杂数字系统设计自动化成为可能,只要用硬件描述语言将数字系统的行为描述正确,就可以进行该数字系统的芯片设计与制造。21 世纪将是 EDA 技术的高速发展期,EDA 技术将是对 21 世纪产生重大影响的十大技术之一。 利用 EDA 工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC 版图或 PCB 版图的整个过程的计算机上自动处理完成。硬件描述语言 : 硬件描述语言(HDL)是一种用于进行电子系统硬件设计的计算机高级语言,它采用软件的设计方法来描述电子系统的逻辑功能

8、、电路结构和连接形式。 常用硬件描述语言有 HDL、Verilog 和 VHDL 语言。 . . . 1 / 261.1.1 EDA 技术与应用现在对 EDA 的概念或畴用得很宽。包括在机械、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有 EDA 的应用。目前 EDA 技术已在各大公司、企事业单位和科研教学部门广泛使用。例如在飞机制造过程中,从设计、性能测试与特性分析直到飞行模拟,都可能涉与到 EDA 技术。在教学方面:几乎所有理工科的高校都开设了 EDA 课程。主要是让学生了解EDA 的基本原理和基本概念、硬件描述系统逻辑的方法、使用 EDA 工具进行电子电路课程的模拟仿

9、真实验并在作毕业设计时从事简单电子系统的设计,为今后工作打下基础。在科研方面:主要利用电路仿真工具进行电路设计与仿真;利用虚拟仪器进行产品调试;将 FPGA 器件的开发应用到仪器设备中。在产品设计与制造方面:从高性能的微处理器、数字信号处理器一直到彩电、音响和电子玩具电路等,EDA 技术不单是应用于前期的计算机模拟仿真、产品调试,而且也在后期的制作、电子设备的研制与生产、电路板的焊接、器件的制作过程等有重要作用。 1.1.2 EDA 技术发展趋势过去的几年里,可编程器件市场的增长主要来自大容量的可编程逻辑器件CPLD 和 FPGA,其未来的发展趋势如下:(1)向高密度、高速度、宽频带方向发展设

10、计方法和设计效率的飞跃,带来了器件的巨大需求,这种需求又促使器件生产工艺的不断进步,而每次工艺的改进,可编程逻辑器件的规模都将有很大扩展。(2)向在系统可编程方向发展采用在系统可编程技术,可以像对待软件那样通过编程来配置系统硬件的功能,从而在电子系统中引入“软硬件”的全新概念。它不仅使电子系统的设计和产品性能的改进和扩充变得十分简便,还使新一代电子系统具有极强的灵活性和适应性,为许多复杂信号的处理和信息加工的实现提供了新的思路和方法。(3)向可预测延时方向发展 . . . 2 / 26为了适应未来复杂高速电子系统的要求,可编程逻辑器件的高速可预测延时是非常必要的。(4)向混合可编程技术方向发展

11、已有多家公司开展了这方面的研究,并且推出了各自的模拟与数字混合型的可编程器件,相信在未来几年里,模拟电路与数模混合电路可编程技术将得到更大的发展。(5)向低电压、低功耗方面发展集成技术的飞速发展,工艺水平的不断提高,节能潮流在全世界的兴起,也为半导体工业提出了向降低工作电压、降低功耗的方向发展。1.1.3 开发工具的发展趋势(1)具有混合信号处理能力由于数字电路和模拟电路的不同特性,模拟集成电路 EDA 工具的发展远远落后于数字电路 EDA 开发工具。(2)高效的仿真工具一方面是要建立合理的仿真算法;另一方面是要更好地解决系统级仿真中,系统模型的建模和电路级仿真中电路模型的建模技术。(3)理想

12、的逻辑综合、优化工具逻辑综合、优化工具就是要把设计者的算法完整高效地生成电路网表。1.1.4 系统描述方式的发展趋势(1)描述方式简便化图形化的描述方式具有简单直观、容易掌握的优点,是未来主要的发展趋势。(2)描述方式高效化和统一化随着 EDA 技术的不断成熟,软件和硬件的概念将日益模糊,使用单一的高级语言直接设计整个系统将是一个统一化的发展趋势。随着科技的进步,电子产品的更新日新月异,EDA 技术作为电子产品开发研制的源动力,已成为现代电子设计的核心。特别是 EDA 技术在我国尚未普与,掌握和普与这一全新的技术,将对我国电子技术的发展具有深远的意义。 . . . 3 / 261.2 硬件描述

13、语言VHDL1.2.1 VHDL 的简介VHDL 语言是一种用于电路设计的高级语言。它在 80 年代的后期出现。最初是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种使用围较小的设计语言 。但是,由于它在一定程度上满足了当时的设计需求,于是他在 1987 年成为 A I/IEEE 的标准(IEEE STD 1076-1987) 。1993 年更进一步修订,变得更加完备,成为 A I/IEEE 的 A I/IEEE STD 1076-1993 标准。目前,大多数的 CAD 厂商出品的 EDA 软件都兼容了这种标准。自 IEEE 公布了 VHDL 的标准版本,IEEE-1076(

14、简称 87 版)之后,各 EDA 公司相继推出了自己的 VHDL 设计环境,或宣布自己的设计工具可以和 VHDL 接口。此后 VHDL 在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。1993 年,IEEE 对VHDL 进行了修订,从更高的抽象层次和系统描述能力上扩展 VHDL 的容,公布了新版本的 VHDL,即 IEEE 标准的 1076-1993 版本, (简称 93 版) 。现在,VHDL 和Verilog 作为 IEEE 的工业标准硬件描述语言,又得到众多 EDA 公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在新的世纪中,VHDL 于

15、 Verilog 语言将承担起大部分的数字系统设计任务。1.2.2 VHDL 语言的特点VHDL 的程序结构特点是将一项工程设计,关于用 VHDL 和原理图输入进行CPLD/FPGA 设计的粗略比较:在设计中,如果采用原理图输入的设计方式是比较直观的。你要设计的是什么,你就直接从库中调出来用就行了。这样比较符合人们的习惯。在对一个设计实体定义了外部界面后,一旦其部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成外部分的概念是 VHDL 系统设计的基本点。应用 VHDL 进行工程设计的优点是多方面的。(1)与其他的硬件描述语言相比,VHDL 具有更强的行为描述能力,从而决定了成为

16、系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。 . . . 4 / 26(2)VHDL 丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。(3)VHDL 语句的行为描述能力和程序结构决定了他具有支持大规模设计的分解和已有设计的再利用功能。符合市场需求的大规模系统高效,高速的完成必须有多人甚至多个代发组共同并行工作才能实现。(4)对于用 VHDL 完成的一个确定的设计,可以利用 EDA 工具进行逻辑综合和优化,并自动的把 VHDL 描述设计转变成门级网表。(5)VHD

17、L 对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行独立的设计。1.2.3 VHDL 的设计流程它主要包括以下几个步骤:1.文本编辑:用任何文本编辑器都可以进行,也可以用专用的 HDL 编辑环境。通常 VHDL文件保存为.vhd 文件,Verilog 文件保存为.v 文件2.功能仿真:将文件调入 HDL 仿真软件进行功能仿真,检查逻辑功能是否正确(也叫前仿真,对简单的设计可以跳过这一步,只在布线完成以后,进行时序仿真)3.逻辑综合:将源文件调入逻辑综合软件进行综合,即把语言综合成最简的布尔表达式。逻辑综合软件会生成.edf 或.edif 的

18、EDA 工业标准文件。4.布局布线:将.edf 文件调入 PLD 厂家提供的软件中进行布线,即把设计好的逻辑安放CPLD/FPGA。5.时序仿真:需要利用在布局布线中获得的精确参数,用仿真软件验证电路的时序。 (也叫后仿真) 通常以上过程可以都在 CPLD/FPGA 厂家提供的开发工具。 . . . 5 / 261.3 Quartus II 概述Quartus II 是 Altera 公司的综合性 PLD 开发软件,支持原理图、VHDL、VerilogHDL 以与 AHDL(Altera Hardware Description Language)等多种设计输入形式,嵌自有的综合器以与仿真器,

19、可以完成从设计输入到硬件配置的完整 PLD 设计流程。 Quartus II 可以在 XP、Linux 以与 Unix 上使用,除了可以使用 Tcl 脚本完成设计流程外,提供了完善的用户图形界面设计方式。具有运行速度快,界面统一,功能集中,易学易用等特点。 Quartus II 支持 Altera 的 IP 核,包含了 LPM/MegaFunction 宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。对第三方 EDA 工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA 工具。 此外,Quartus II 通过和 DSP Builder 工具与

20、Matlab/Simulink 相结合,可以方便地实现各种 DSP 应用系统;支持 Altera 的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。Maxplus II 作为 Altera 的上一代 PLD 设计软件,由于其出色的易用性而得到了广泛的应用。目前 Altera 已经停止了对 Maxplus II 的更新支持,Quartus II 与之相比不仅仅是支持器件类型的丰富和图形界面的改变。Altera 在Quartus II 中包含了许多诸如 SignalTap II、Chip Editor 和 RTL Viewer 的设计辅助

21、工具,集成了 SOPC 和 HardCopy 设计流程,并且继承了 Maxplus II 友好的图形界面与简便的使用方法。Altera Quartus II 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。 . . . 6 / 261.3.1 软件的启动方式方法一、直接双击桌面上的图标 ,可以打开 Quartus II 7.2 软件;方法二、执行:开始程序AlteraQuartus II 7.2Quartus II 7.2 TalkBack Install菜单命令,可以打开软件。启动软件后,若你的电脑没有连接到 Internet 互联网,会

22、出现如下图所示的提示,提示你没有连接到 Altera 的官方,将无法获得更新的资源。点击确定继续,因为这不影响软件的正常使用。 图 1-1 打开页面 . . . 7 / 26第 2 章 实验原理根据实验对要求本次的设计是运用 VHDL 语言在 Quartus II 7.2 TalkBack Install 环境下设计并运行一个电子秒表。该秒表可以精确到百分之一秒并且记录对围是 00 分 00 秒 00 毫秒59 分 59 秒 99 毫秒。在设计的过程中需要运用分层的结构进行,运用例化语句在顶层实体中队各个部件进行例化,使之达到电子秒表的要求。在设计时运用 10 进制计数器和 6 进制计数器对秒

23、表的各个位置进行计数和显示,在百分之一秒和十分之一秒对位置各用一个带进位对 10 进制计数器来对其计数和显示。秒和分的位置也运用一个带进位的 10 进制计数器对其进行计数,十秒的位置着需要一个带进位的 6 进制计数器对其进行计数,而十分的位置需要一个不带进位对 6 进制计数器对其进行计数。将前一个位置的进位接到下一个位置的时钟信号以完成各个位置计数情况和前面位置计数情况的。完成位置之间的在顶层实体的例化语句中完成。本系统设计采用自顶向下的设计方案,系统的整体组装设计原理图如图 2-1所示,它主要由控制模块、时基分频模块,计时模块和显示模块四部分组成。各模块分别完成计时过程的控制功能、计时功能与

24、显示功能。数字秒表计时控制电路控制状态机计时电路显示电路时基分频电路计数器六进制计数器十制计数器图 2-1 系统设计原理框图 . . . 8 / 26第 3 章 电子秒表设计根据实验容和实验原理,写出各个电路的 VHDL 语言,并且对各个电路进行仿真,并根据时序仿真图观察设计的电路是否正确。各个电路设计完成之后根据实验容和实验对扩展的要求设计出合适对顶层实体其中包括可以多次记录的秒表需要的硬件电路的 VHDL 语言顶层实体描述。3.1 分频电路设计将输入的时钟信号频率改变为我们需要的时钟频率libraby ieee; use ieee.std_logic_1164.all; use ieee.

25、std_logic_unsigned.all;entity counter is port ( clk: in std_logic ; 输入的时钟信号 5MHz co: buffer std_logic); 输出的时钟信号 100Hzend counter; architecture bhv of counter is beginprocess(clk)variable coutinterger:=0;begin if clkevent and clk=1 thencout:=cout+1;if cout=25000 then co=0; elsif cout50000 then co 0);

26、 elsif clk10event and clk10=1 then if en10=1 then if cqi 0); end if; end if; end if; if cqi=9 then cout10=1; else cout10=0; . . . 10 / 26 end if; cq10 0); . . . 11 / 26 elsif clk6event and clk6=1 then if en6=1 then if cqi 0); end if; end if; end if; if cqi=5 then cout6=1; else cout6=0; end if; cq6cl

27、kk,co=clk1); 例化语句u2:cnt10 port map(clk10=clk1,rst10=rstt,en10=enn,cq10=sett(3downto0),cout10=clk2);u3:cnt10 port map(clk10=clk2,rst10=rstt,en10=enn,cq10=sett(7downto 4),cout10=clk3);u4:cnt10portmap(clk10=clk3,rst10=rstt,en10=enn,cq10=sett(11downto 8),cout10=clk4);u5:t6 port map(clk6=clk4,rst6=rstt,e

28、n6=enn,cq6=sett(15 downto 12),cout6=clk5);u6:cnt10portmap(clk10=clk5,rst10=rstt,en10=enn,cq10=sett(19downto16),cout10=cl . . . 13 / 26k6);u7:cnt6 port map(clk6=clk6,rst6=rstt,en6=enn,cq6=sett(23 downto 20);set=sett;end architecture one; 图 3-7 电子秒表 RTL 图 图 3-8 电子秒表时序仿真图3.5 实验扩展根据实验的容可以适当的添加一些有实际作用和可行

29、性的功能,如可以记录 . . . 14 / 26并显示多个数据。根据扩展的容设计相应的电路和模块来完成扩展的容。比如记录和显示多个数据,可以用多个秒表进行计数,在秒表电路的后面可以添加一个选择电路,运用选择电路选择需要输出的那个秒表的数值。3.5.1 选择电路设计 根据输入的 rea 信号,在显示器上显示出不同秒表记录的数值。library ieee;use ieee.std_logic_1164.all;entity choose is port ( lk: in std_logic;控制信号 s1: in std_logic_vector(23 downto 0);秒表一的数据 s2: i

30、n std_logic_vector(23 downto 0);秒表二的数据 o : out std_logic_vector(23 downto 0);输出的数据end entity;architecture one of choose is begin process(lk)begin if lk=1 then o=s1; else oclk1,enn=enn1,rstt=rst1,set=a); u3: clock port map (clkk=clk1,enn=enn2,rstt=rst1,set=c); u5: choose port map (lk=rea, s1=a,s2=c,o

31、=set1);end architecture one;图 3-10 可多次记录秒表 RTL 图 . . . 16 / 26 图 3-11 可多次记录秒表时序仿真图3.6 电子秒表下载实现新建一个工程,工程名为 clocks,在工程中建立多个 VHDL 文件包括 :cnt10.vhd、cnt6.vhd、counter.vhd、clock.vhd 和 clocks.vhd。编译顶层文件,对编译的结果进行仿真,引脚分配,下载到硬件中等等。1.编译程序并且验证 VHDL 语言是否正确无误 ,采用功能仿真。2.建立波形图文件,并对输入端进行赋值 ,并运行得到如图 3-11 的波形图。3.进行引脚分配,

32、如图 3-12 所示。4.下载到实验室的芯片(KX_DN 系列)中并运行,如图 3-13 所示。 . . . 17 / 26图 3-12 引脚分配图 . . . 18 / 26 图 3-13 程序下载到芯片效果图结 论通过此次课程设计,让我对 EDA 这门技术有了更深的体会,并更好的学会了 . . . 19 / 26使用 Quartus软件进行硬件设计。在编写程序的过程中,遇到了很多问题,使我发现自己以前学习上存在的不足。通过与同学探讨和请教老师,终于把问题都解决了,并加深了对数字时钟原理和设计思路的了解。同时我也掌握了做课程设计的一般流程,为以后的电子设计这块积累了一定的经验,为以后从事相关工作有一些帮助。最终解决了问题,攥写成报告。通过对设计对实现和对报告对撰写,深深体会到了 VHDL 语言和 EDA 技术的一些技巧和设计思想,在完成设计的过程中,应该具有很清晰地思路,才可以使电路更完美和简便,要敢想敢做但是不应该有投机取巧的心理。在完成每一步的时候都有意想不到的收获也有可能导致错误,所以在设计对过程中要集中精神。在写报告的过程中,更加凸显了细心二字。不可自认为完美,必须按照格式要求来撰写自己的报告,所以必须做到足够的精确。利用 EDA 工具,电子设计师可以从概念、算法、协议等开始设计电子系统,

温馨提示

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

评论

0/150

提交评论