ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:117.13KB ,
资源ID:7354102      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7354102.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(EDA课程设计论文康艺.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

EDA课程设计论文康艺.docx

1、EDA课程设计论文康艺大 庆 石 油 学 院课 程 设 计课 程 硬件课程设计 题 目 数字钟设计 院 系 计算机与信息技术学院 专业班级 计算机科学与技术07-1班 学生姓名 康艺 学生学号 070702140105 指导教师 李军 2009年 7 月 10 日大庆石油学院课程设计任务书课程 硬件课程设计题目 数字钟设计专业 计算机科学与技术 姓名 康艺 学号 070702140105主要内容、基本要求等一、主要内容:利用EL教学实验箱、微机和Quartus软件系统,使用VHDL语言输入方法设计数字钟。要求可以利用层次设计方法,分为秒模块、分模块,时模块、扫描模块、LED和扬声器编码模块等,

2、规定好模块与模块之间的接口,最后用原理图输入法连接各模块,将各模块合起来联试,仿真;也可以不分模块的直接编写整个程序,最后进行调试仿真和测试。二、基本要求:1掌握多位计数器相连的设计方法。 2掌握十进制,六进制,二十四进制计数器的设计方法。 3继续巩固多位共阴级扫描显示数码管的驱动,及编码。 4掌握扬声器的驱动。 5LED灯的花样显示。 6掌握EPLD技术的层次化设计方法。7.按照规范写出论文,要求字数在4000字以上,并进行答辩。论文内容包括概述(学习、调研、分析、设计的内容摘要)、EDA技术的现状和发展趋势、对EL教学实验箱和Quartus软件的掌握程度、数字钟的设计过程(包括原理图或程序

3、设计、编译、仿真分析、硬件测试的全过程),论文中含有原理图、程序、仿真波形图及其分析报告。完成期限 第20周 指导教师 李军 专业负责人 袁满 2009年 6 月 29日摘 要本文介绍了利用EL教学实验箱和微机上的Quartus等软件系统,使用VHDL语言输入方法和原理图设计数字钟。VHDL的英文全名是Very-High-Speed Integrated Circuit HardwareDescription Language,诞生于1982年。1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言 。自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各ED

4、A公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,(简称93版)。本文简单介绍EDA技术的发展史、说明Quartus的使用过程,阐述了数字钟的设计与实现的相关过程。关键词: EDA(电子设计自动化);VHDL(硬件描述语言);数字钟;Quartus目录第1章 概 述 1 1.1 EDA的概念 11.1.1 EDA技术及应用 2

5、1.1.2 EDA技术发展趋势 2 1.2 EDA的工作平台 31.2.1 EDA硬件工作平台 31.2.2 EDA 的软件工作平台 3第2章 数字钟原理图设计 4 2.1 数字钟原理流程图: 4 2.2 数字钟原理图: 5第3章 数字钟程序设计 6 3.1 数字钟详细分析 63.1.2实验原理 6 3.2 数字钟的设计过程 63.2.1设计规划 63.2.2设计说明 7 3.3 VHDL设计 73.3.1 数字钟源程序(VHDL语言编译) 7结 论 13参考文献 14第1章 概 述1.1 EDA的概念EDA是电子设计自动化(Electronic Design Automation)的缩写。由

6、于它是一门刚刚发展起来的新技术,涉及面广,内容丰富,理解各异,所以目前尚无一个确切的定义1。但从EDA技术的几个主要方面的内容来看,可以理解为:EDA技术是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计电子系统到硬件系统的一门新技术。可以实现逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化,逻辑布局布线、逻辑仿真。完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片2。EDA技术是伴随着计算机、集成电路、电子系统的设计

7、发展起来的,至今已有30多年的历程。大致可以分为三个发展阶段。20世纪70年代的CAD(计算机辅助设计)阶段:这一阶段的主要特征是利用计算机辅助进行电路原理图编辑,PCB布同布线,使得设计师从传统高度重复繁杂的绘图劳动中解脱出来。20世纪80年代的QAE(计算机辅助工程设计)阶段:这一阶段的主要特征是以逻辑摸拟、定时分析、故障仿真、自动布局布线为核心,重点解决电路设计的功能检测等问题,使设计能在产品制作之前预知产品的功能与性能3。20世纪90年代是EDA(电子设计自动化)阶段:这一阶段的主要特征是以高级描述语言,系统级仿真和综合技术为特点,采用“自顶向下”的设计理念,将设计前期的许多高层次设计

8、由EDA工具来完成4。EDA是电子技术设计自动化,也就是能够帮助人们设计电子电路或系统的软件工具。该工具可以在电子产品的各个设计阶段发挥作用,使设计更复杂的电路和系统成为可能。在原理图设计阶段,可以使用EDA中的仿真工具论证设计的正确性;在芯片设计阶段,可以使用EDA中的芯片设计工具设计制作芯片的版图;在电路板设计阶段,可以使用EDA中电路板设计工具设计多层电路板。特别是支持硬件描述语言的EDA工具的出现,使复杂数字系统设计自动化成为可能,只要用硬件描述语言将数字系统的行为描述正确,就可以进行该数字系统的芯片设计与制造5。21世纪将是EDA技术的高速发展期,EDA技术将是对21世纪产生重大影响

9、的十大技术之一。 硬件描述语言:硬件描述语言(HDL)是一种用于进行电子系统硬件设计的计算机高级语言,它采用软件的设计方法来描述电子系统的逻辑功能、电路结构和连接形式。常用硬件描述语言有HDL、Verilog和VHDL语言6。1.1.1 EDA技术及应用电子EDA技术发展迅猛,逐渐在教学、科研、产品设计与制造等各方面都发挥着巨大的作用。在教学方面:几乎所有理工科(特别是电子信息)类的高校都开设了EDA课程。主要是让学生了解EDA的基本原理和基本概念、硬件描述系统逻辑的方法、使用EDA工具进行电子电路课程的模拟仿真实验并在作毕业设计时从事简单电子系统的设计,为今后工作打下基础。具有代表性的是全国

10、每两年举办一次的大学生电子设计竞赛活动。在科研方面:主要利用电路仿真工具进行电路设计与仿真;利用虚拟仪器进行产品调试;将FPGA器件的开发应用到仪器设备中。在产品设计与制造方面:从高性能的微处理器、数字信号处理器一直到彩电、音响和电子玩具电路等,EDA技术不单是应用于前期的计算机模拟仿真、产品调试,而且也在后期的制作、电子设备的研制与生产、电路板的焊接、器件的制作过程等有重要作用。可以说电子EDA技术已经成为电子工业领域不可缺少的技术支持7。 1.1.2 EDA技术发展趋势 EDA技术在进入21世纪后,由于更大规模的FPGA器件的不断推出,在仿真和设计两方面支持标准硬件描述语言的功能强大的ED

11、A软件不断更新、增加,使电子EDA技术得到了更大的发展。电子技术全方位纳入EDA领域,EDA使得电子领域各学科的界限更加模糊,更加互为包容,突出表现在以下几个方面:使电子设计成果以自主知识产权的方式得以明确表达和确认成为可能;基于EDA工具的ASIC设计标准单元已涵盖大规模电子系统及IP核模块;软硬件IP核在电子行业的产业领域、技术领域和设计应用领域得到进一步确认;SoC高效低成本设计技术的成熟。随着半导体技术、集成技术和计算机技术的迅猛发展,电子系统的设计方法和设计手段都发生了很大的变化。可以说电子EDA技术是电子设计领域的一场革命。传统的“固定功能集成块十连线”的设计方法正逐步地退出历史舞

12、台,而基于芯片的设计方法正成为现代电子系统设计的主流。作为高等院校有关专业的学生和广大的电子工程师了解和掌握这一先进技术是势在必行,这不仅是提高设计效率的需要,更是时代发展的需求,只有掌握了EDA技术才有能力参与世界电子工业市场的竞争,才能生存与发展。随着科技的进步,电子产品的更新日新月异,EDA技术作为电子产品开发研制的源动力,已成为现代电子设计的核心。所以发展EDA技术将是电子设计领域和电子产业界的一场重大的技术革命,同时也对电类课程的教学和科研提出了更深更高的要求。特别是EDA技术在我国尚未普及,掌握和普及这一全新的技术,将对我国电子技术的发展具有深远的意义。 1.2 EDA的工作平台1

13、.2.1 EDA硬件工作平台1.计算机2.EDA实验开发系统:EL教学实验箱。1.2.2 EDA 的软件工作平台PLD(Programmable Logic Device)是一种由用户根据需要而自行构造逻辑功能的数字集成电路。目前主要有两大类型:CPLD(Complex PLD)和FPGA(Field Programmable Gate Array)。它们的基本设计方法是借助于EDA软件,用原理图、状态机、布尔表达式、硬件描述语言等方法,生成相应的目标文件,最后用编程器或下载电缆,由目标器件实现。生产PLD的厂家很多,但最有代表性的PLD厂家为Altera、Xilinx和Lattice 公司。

14、我们采用了Quartus软件作为开发工具。第2章 数字钟原理图设计2.1 数字钟原理流程图:图2-1 数字钟流程图2.2 数字钟原理图:第3章 数字钟程序设计3.1 数字钟详细分析3.1.1数字钟原理: 数字钟由分频器、计数器、译码显示、报时等电路组成。数字钟的主体是计数器,它记录并显示接收到的秒脉冲个数,其中秒和分为模60计数器,小时是模24计数器,分别产生3位BCD码。BCD码经译码,驱动后接数码管显示电路。秒模60计数器的进位作为分模60计数器的时钟,分模60计数器的进位作为模24计数器的时钟。分频器将输入的频率分为设计所需的两个时钟。为了实现手动调整时间,在外部增加了S2(调整分钟),

15、S1(调整小时)按键,当这两个按键为高电平时,电路正常计时,当为低电平时,分别调整分钟和小时。同时在外部还增加了一个复位按键Rst和扬声器SPK(整点报时)。3.1.2实验原理在同一EPLD芯片EPF10K10上集成了如下电路模块: 1时钟计数: 秒60进制BCD码计数; 分60进制BCDD码计数; 时24进制BCDD码计数;同时整个计数器有清零,调分,调时功能。在接近整数时间能提供报时信号。2具有驱动8位八段共阴扫描数码管的片选驱动信号输出和八段字形译码输 出。编码和扫描可参照“实验四”。3扬生器在整点时有报时驱动信号产生。4. LED灯按个人口味在整点时有花样显示信号产生。3.2 数字钟的

16、设计过程3.2.1设计规划 基于硬件描述语言(VHDL),利用EL教学实验箱及Quartus软件设计数字钟,实现实验要求的时钟计数功能,清零、调节分钟和小时功能,扬声器整点报时功能,8位八段共阴扫描数码管显示和LED花样显示。3.2.2设计说明本章节主要介绍用VHDL语言来描述数字钟,使用的是整体程序法,所有功能集成在同一程序中。3.3 VHDL设计3.3.1 数字钟源程序(VHDL语言编译)library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.a

17、ll; -entity daclk is port( Clk : in std_logic; -时钟输入 Rst : in std_logic; -复位输入 S1,S2 : in std_logic; -时间调节输入 SPK : out std_logic; -扬声器输出 Display : out std_logic_vector(7 downto 0); -八段码管显示输出 SEG_SEL : buffer std_logic_vector(2 downto 0) ; -八段码管扫描驱动 lam :out std_logic_vector(2 downto 0) ); end daclk;

18、 -architecture behave of daclk is signal Disp_Temp : integer range 0 to 15; signal Disp_Decode : std_logic_vector(7 downto 0); signal SEC1,SEC10 : integer range 0 to 9; signal MIN1,MIN10 : integer range 0 to 9; signal HOUR1,HOUR10 : integer range 0 to 9; signal Clk_Count1 : std_logic_vector(13 downt

19、o 0); signal Clk1Hz : std_logic; signal Music_Count : std_logic_vector(2 downto 0); signal count : std_logic_vector(1 downto 0); signal lamp :std_logic_vector(2 downto 0); begin process(Clk) -产生1Hz 时钟的分频计数器 begin if(Clkevent and Clk=1) then if(Clk_Count110000) then Clk_Count1=Clk_Count1+1; else Clk_

20、Count1=00000000000001; end if; end if; end process; Clk1Hz=Clk_Count1(13); process(Clk1Hz,Rst) begin if(Rst=0) then -系统复位 SEC1=0; SEC10=0; MIN1=0; MIN10=0; HOUR1=0; HOUR10=0; elsif(Clk1Hzevent and Clk1Hz=1) then if(S1=0) then -调节小时 if(HOUR1=9) then HOUR1=0; HOUR10=HOUR10+1; elsif(HOUR10=2 and HOUR1=

21、3) then HOUR1=0; HOUR10=0; else HOUR1=HOUR1+1; end if; elsif(S2=0) then -调节分钟 if(MIN1=9) then MIN1=0; if(MIN10=5) then MIN10=0; else MIN10=MIN10+1; end if; else MIN1=MIN1+1; end if; elsif(SEC1=9) then SEC1=0; if(SEC10=5) then SEC10=0; if(MIN1=9) then MIN1=0; if(MIN10=5) then MIN10=0; if(HOUR1=9) the

22、n HOUR1=0; HOUR10=HOUR10+1; elsif(HOUR10=2 and HOUR1=3) then HOUR1=0; HOUR10=0; else HOUR1=HOUR1+1; end if; else MIN10=MIN10+1; end if; else MIN1=MIN1+1; end if; else SEC10=SEC10+1; end if; else SEC1=SEC1+1; end if; end if; end process; process(Clk) -整点报时 begin if(Clkevent and Clk=1) then Music_Coun

23、t=Music_Count+1; if(MIN10=5 and MIN1=9 and SEC10=5) then if(SEC1 MOD 2)=0) then SPK=Music_Count(2); else SPK=0; end if; elsif(MIN10=0 and MIN1=0 and SEC10=0 and SEC1=0) then SPK=Music_Count(1); else SPK=0; end if; end if; end process; process(clk1Hz) -LED灯 begin lam=lamp; if (rising_edge(clk1Hz) the

24、n count = count + 1; if (count = 10) then if (count =00) then lamp = 001 ; elsif (count = 01) then lamp= 010 ; elsif(count=10) then lamp = 100 ; end if; else count Disp_TempDisp_TempDisp_TempDisp_TempDisp_TempDisp_TempDisp_TempDisp_Temp=SEC1; end case; end process; process(Clk) -扫描累加 begin if(Clkeve

25、nt and Clk=1) then SEG_SEL=SEG_SEL+1; DisplayDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_DecodeDisp_Decode=00000000; end case; end process; end behave;3.3.2 实验连线:输入接口:1.清零,调小时,调分钟信号Rst,S1,S2的引脚分别连接按键开关。2.计数时钟信号CLK引脚同32HZ(或更高)时钟源相

26、连。 输出接口:1.扫描显示的驱动信号管脚SEG_SEL1,SEG_SEL2,SEG_SEL3接实验箱上的SEL0SEL2,Display(7 downto 0)分别接八位数码管显示模块的AG。2.扬声器驱动信号的管脚SPK同扬声器驱动接口SPEAKER IN相连。3.到时花样LED灯显示的信号管脚LAMP0LAMP2同3个LED灯相连。4.到时LED灯闪烁提示的ENHOUR接LED灯。结 论 通过此次课程设计,让我对EDA这门技术有了更深的体会,并更好的学会了使用Quartus软件进行硬件设计。 此次课程设计时基于VHDL语言进行的数字钟设计,在课程设计时,我逐渐掌握了VHDL语言的语句及语法等的使用。但在学习过程中,也遇到了很多困难,由于刚刚学习EDA不久,所以很多细节内容都不是很了解,尤其时VHDL语言的运用。我先上网找了一些资料和程序,一点点的看,慢慢摸索着学习写语句。最后在老师和同学的帮助下,终于完成了数字钟的设计。以后我会利用更多时间来学习EDA技术。EDA技术有着非

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1