您好,欢迎访问三七文档
郑州轻工业学院课程设计说明书题目:基于FPGA的电子钟设计姓名:事实上院(系):电子信息工程学院专业班级:电子信息工程14-2学号:1654165416565指导教师:蔡超峰成绩:时间:2017年6月19日至2017年6月25日基于FPGA的电子钟设计郑州轻工业学院课程设计任务书题目基于FPGA的电子钟设计专业、班级电子信息工程14-2学号541401056514姓名***主要内容、基本要求、主要参考资料等:主要内容:要求学生使用VHDL语言设计一个显示时(2位)、分(2位)、秒(2位)的6个数字的多功能电子钟。该电子钟既可以作为闹钟,也可以作为计时器。系统的时钟频率为1024Hz,要求给出复位键、报警键、调整时钟等按键设计。基本要求:1、掌握FPGA的程序设计方法。2、掌握硬件描述语言语法。3、给出设计思路与框图4、程序设计完成后要求在软件中实现功能仿真。主要参考资料:1、周润景.基于QuartusⅡ的FPGA/CPLD数字系统设计实例[M].电子工业出版社.2007,82、林明权马维旻VHDL数字控制系统设计范例.电子工业出版社2003,13、褚振勇.FPGA设计及应用(第三版)[M].西安电子科技大学出版社.2012,4完成期限:2017.6.19—2017.6.25指导教师签名:课程负责人签名:2017年6月18日基于FPGA的电子钟设计摘要伴随着集成电路技术的发展,电子设计自动化(EDA)技术逐渐成为数字电路设计的重要手段。基于FPGA的EDA技术的发展和应用领域的扩大与深入,使得EDA技术在电子信息,通信,自动控制,计算机等领域的重要性日益突出。本设计给出了一种基于FPGA的多功能数字钟方法,采用EDA作为开发工具,VHDL语言和图形输入为硬件描述语言,QuartusII作为运行程序的平台,编写的程序经过调试运行,波形仿真验证,下载到EDA实验箱的FPGA芯片,实现了设计目标。系统主芯片采用CycloneII系列EP2C35F672C8。采用自顶向下的设计思想,将系统分为五个模块:分频模块、计时模块、报时模块、显示模块、顶层模块。用VHDL语言实现各个功能模块,图形输入法生成顶层模块.最后用QuartusII软件进行功能仿真,验证数字钟设计的正确性。测试结果表明本设计实现了一个多功能的电子钟功能,具有时、分、秒计时显示功能,以24小时循环计时;具有校正小时和分钟的功能;以及清零,整点报时功能。关键词:EDA技术;FPGA;数字钟;VHDL语言;自顶向下基于FPGA的电子钟设计目录1绪论..................................................51.1研究背景.........................................51.2研究目的.........................................61.3研究方法和内容...................................62本软件开发环境........................................72.1FPGA简介........................................72.1.1FPGA概述............................................72.1.2FPGA基本结构........................................72.1.3FPGA系统设计流程....................................82.1.4FPGA开发编程原理....................................92.2QuartusII设计平台................................92.2.1软件开发环境及基本流程...............................92.2.2软件的具体设计流程..................................103总体设计方案.........................................114软件设计与功能实现...................................134.1分频模块功能的软件设计与实现....................134.2计时校时模块功能的软件设计与实现................134.3整点报时模块功能的软件设计与实现................134.4扫描译码显示模块功能的软件设计与实现............144.5顶层模块功能的软件设计与实现....................145系统功能调试及分析...................................146结论.................................................15参考文献................................................16基于FPGA的电子钟设计51绪论现代社会的标志之一就是信息产品的广泛使用,而且是产品的性能越来越强,复杂程度越来越高,更新步伐越来越快。支撑信息电子产品高速发展的基础就是微电子制造工艺水平的提高和电子产品设计开发技术的发展。前者以微细加工技术为代表,而后者的代表就是电子设计自动化(electronicdesignautomatic,EDA)技术。ASIC是专用的系统集成电路,是一种带有逻辑处理的加速处理器。而FPGA是特殊的ASIC芯片,与其他的ASIC芯片相比,它具有设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定以及可实时在线检测等优点。本设计采用的VHDL语言是一种全方位的硬件描述语言,具有极强的描述能力,能支持系统行为级、寄存器传输级和逻辑门级三个不同层次的设计;支持结构、数据流、行为三种描述形式的混合描述、覆盖面广、抽象能力强,因此在实际应用中越来越广泛。数字化的钟表给人们带来了极大的方便。近些年,随着科技的发展和社会的进步,人们对数字钟的要求也越来越高,传统的时钟已不能满足人们的需求。多功能数字钟不管在性能还是在样式上都发生了质的变化,有电子闹钟、数字闹钟等等。而基于FPGA的数字钟设计能极大的扩展其功能。1.1研究背景当今电子产品正向功能多元化,体积最小化,功耗最低化的方向发展。它与传统的电子产品在设计上的显著区别是大量使用大规模可编程逻辑器件,使产品的性能提高,体积缩小,功耗降低。同时广泛运用现代计算机技术,提高产品的自动化程度和竞争力,缩短研发周期。EDA技术正是为了适应现代电子技术的要求,吸收众多学科最新科技成果而形成的一门新技术。EDA是电子设计自动化(ElcctronicDesignAutomation)的缩写,是90年代初从CAD(计算机辅助设备),CAM(计算机辅助制造),CAT(计算机辅助测试)和CAE(计算机辅助工程)的概念发展而来的。EDA技术是以计算机为工具,根据硬件描述语言VHDL完成设计文件,自动的完成逻辑编译,化简,分割,综合及优化,布局布线,仿真以及对特定目标芯片的适配编译和编程下基于FPGA的电子钟设计6载等工作。典型的EDA工具中必须包含两个特殊的软件包,即综合器和适配器。综合器的功能就是将设计者在EDA平台上完成的针对某个系统项目的VHDL原理图或状态图形描述,针对给定的硬件系统组件,进行编译,优化,转换和综合,最终获得我们将实现的功能的描述文件。综合器在工作前,必须给定要实现的硬件结构参数,它的功能就是将软件描述与给定的硬件结构用一定的方式联系起来,也就是说综合器是软件描述与硬件实现的一座桥梁。综合过程就是将电路的高级语言描述转换成低级的,可与目标器件CPLD相映射的网表文件。适配器的功能是将由综合器产生的网表文件配置与指定的目标器件中,产生最终的下载文件。适配器所选的目标器件(CPLD芯片)必须包含于在综合器中已指定的目标器件系列。本次数字钟设计利用VHDL硬件描述语言和图形输入相结合的编程方式,并通过可编程逻辑器件FPGA进行硬件设计,用LED数码管动态显示计时结果。数字钟可以由各种技术实现,如单片机等。利用可编程逻辑器件具有其他方式没有的特点,它具有成功率高,理论与实践结合紧密,体积小,容量大,I/O口丰富,易编程和加密等特点,并且它还具有开放的界面,丰富的设计库,模块化的工具等优良性能,应用非常方便。因此,本设计采用可编程逻辑器件FPGA来实现。1.2研究目的现在是一个知识爆炸的新时代。新产品、新技术层出不穷,电子技术的发展更是日新月异。可以说,电子技术的应用无处不在,电子技术正在不断地改变我们的生活,改变着我们的世界。钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、定时启闭电路、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。1.3研究方法和内容本设计主要研究基于FPGA的数字钟,采用EDA作为开发工具,VHDL语言和图形输入为硬件描述语言,采用自顶向下的设计思想,QuartusII软件作为运行程序的平台。设计的数字钟时间以24小时为一个周期,用LED数码管动态基于FPGA的电子钟设计7显示时、分、秒。具有清零和整点报时功能,可以对小时,分钟进行单独校对,使其校正到标准时间。校对时间由按键进行控制,为了保证计时的稳定及准确,须由晶体振荡器提供时间基准信号并经分频得到。2本软件开发环境2.1FPGA简介2.1.1FPGA概述FPGA是现场可编程门阵列(FieldProgrammableGateArray)的简称,与之相应的CPLD是复杂可编程逻辑器件(ComplexProgrammableLogicDevice)的简称,两者的功能基本相同,只是实现原理略有不同,有时可以忽略这两者的区别,统称为可编程逻辑器件CPLD/FPGA。CPLD/FPGA几乎能完成任何数字器件的功能,上至高性能CPU,下至简单的74电路。它如同一张白纸或是一堆积木,工程师可以通过传统的原理图输入或硬件描述语言自由的设计一个数字系统。通过软件仿真可以事先验证设计的正确性,在PCB完成以后,利用CPLD/FPGA的在线修改功能,随时修改设计而不必改动硬件电路。使用CPLD/FPGA开发数字电路,可以大大缩短设计时间,减少PCB面积,提高系统的可靠性。这些优点使得CPLD/FPGA技术在20世纪90年代以后得到飞速的发展,同时也大大推动了EDA软件和硬件描述语言VHDL的进步。2.1.2FPGA基本结构FPGA具有掩膜可编程门阵列的通用结构,它由逻辑功能块排成阵列,并由可编程的互连资源连接这些逻辑功能块来实现不同的设计。FPGA一般由3种可编程电路和一个用于存放编程数据的静态存储器SRAM组成。这3种可编程电路是:可编程逻辑模块(CLB--ConfigurableLogicBlock)、输入/输出模块(IOB--I/OBlock)和互连资源(IR—InterconnectResource)。可编程逻辑模块CLB是实现逻辑功能的基本单元,它们通常规则的排列成一个阵基于FPGA的电子钟设计8列,散布于整个芯片;可编程输入/输出模块(IOB)主要完成芯片上的逻辑与外部封装脚的接口,它通常排列在芯片的四周;可编程互连资源包括各种长度的连接线段和一些可编程连接开关,它们将各个CLB之间或CLB、IOB之间以及IOB之间连接起来,构成特定功能的电路。2.1.3FPGA系统设计流程一般说来,一个比较大的完整的项目应该采用层次化的描述方法:分为几个较大的模块,定义好各功能模块之间的接口,然后各个模块再细分去具体实现,这就是自顶向下的设计方法。目前这种高层次的设计方法已被广泛采用。高层次设计只是定
本文标题:FPGA课程设计
链接地址:https://www.777doc.com/doc-3416429 .html