四川工商学院EDA技术与SOPC基础课程设计III目录前言.....................................................................11选题背景及目的........................................................11.1选题背景.........................................................11.2选题目的.........................................................22软件的开发环境........................................................22.1FPGA的基本结构..................................................22.2FPGA系统设计流程................................................42.3FPGA开发编程原理................................................43总体设计方案..........................................................53.1电子钟功能概述...................................................53.2电子钟设计流程...................................................64具体实现过程..........................................................64.1具体实现过程.....................................................64.1.1新建工程文件夹.............................................64.1.2新建工程...................................................64.1.3添加代码...................................................74.1.4编译与综合.................................................84.1.5仿真.......................................................84.1.6编程下载...................................................95系统模块设计..........................................................95.1分频模块.........................................................95.1.1分频器.....................................................95.1.2功能及其作用...............................................95.1.3代码.......................................................95.1.4分频器模块封装............................................105.1.5分频器模块仿真............................................105.2计数模块........................................................115.2.1计数器....................................................115.2.2功能及其作用..............................................115.2.3代码......................................................11四川工商学院EDA技术与SOPC基础课程设计IV5.2.4计数模块封装..............................................115.2.5计数模块波形仿真..........................................125.3显示模块........................................................125.3.1功能及其作用..............................................125.3.2显示模块代码..............................................135.3.2-1显示模块代码................................................135.3.3显示模块封装图............................................135.3.4管脚分配及下载配置........................................145.4系统顶层文件....................................................155.4.1系统顶层设计..............................................155.4.2顶层模块原理连线图.........................................166设计结果............................................................166.1实物照...........................................................167总结................................................................16附录....................................................................18参考文献................................................................24四川工商学院EDA技术与SOPC基础课程设计1四川工商学院EDA技术与SOPC基础课程设计1基于FPGA的电子时钟设计前言EDA技术作为现代电子技术的核心,不仅在硬件实现方面融合了大规模集成电路制造技术、IC版图设计技术、ASIC测试和封装技术、FPGA和CPLD编程下载技术等。在本次设计中使用QuartusII工具软件,QuartusII是Altera公司新近推出的EDA工具软件。选用的硬件描述语言是Verilog,VerilogHDL也是目前应用极为广泛的一种硬件描述语言,是一种以文本形式来描述数字系统硬件的结构和行为语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能。FPGA(Field-ProgrammableGateArray),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。Verilog的设计初衷是成为一种基本语法与C语言相近的硬件描述语言。这是因为C语言在Verilog设计之初,已经在许多领域得到广泛应用,C语言的许多语言要素已经被许多人习惯。一种与C语言相似的硬件描述语言,可以让电路设计人员更容易学习和接受。不过,Verilog与C语言还是存在许多差别。另外,作为一种与普通计算机编程语言不同的硬件描述语言,它还具有一些独特的语言要素,例如向量形式的线网和寄存器、过程中的非阻塞赋值等。总的来说,具备C语言的设计人员将能够很快掌握Verilog硬件描述语言。数字电子钟给人们带来了极大的方便,随着科技的进步数字时钟有着很大的变化与进步,具有电子闹钟和数字闹钟等功能,然而传统的时钟已经不能满足人们的需求。基于FPGA的电子时钟更能扩展其功能。1选题背景及目的1.1选题背景当今电子产品正向功能多元化,体积最小化,功耗最低化的方向发展。它与传统的电子产品在设计上的显著区别是大量使用大规模可编程逻辑器件,使产品的性能提高,体积缩小,功耗降低。同时广泛运用现代计算机技术,提高产品的自动化程度和竞争力,缩短研发周期。EDA技术正是为了适应现代电子技术的要求,吸收众多学科最新科技成果而形成的一门新技术。EDA是电子设计自动化(ElcctronicDesignAutomation)的缩写,是90年代初从CAD(计算机辅助设备),CAM(计算机辅助制造),CAT(计算机辅助测试)和CAE(计算四川工商学院EDA技术与SOPC基础课程设计2机辅助工程)的概念发展而来的。EDA技术是以计算机为工具,根据硬件描述语言Verilog完成设计文件,自动的完成逻辑编译,化简,分割,综合及优化,布局布线,仿真以及对特定目标芯片的适配编译和编程下载等工作。典型的EDA工具中必须包含两个特殊的软件包,即综合器和适配器,综合器的功能就是将设计者在EDA平台上完成的针对某个系统项目的Verilog原理图或状态图形描述,针对给定的硬件系统组件,进行编译,优化,转换和综合,最终获得我们将实现的功能的描述文件。综合器在工作前,必须给定要实现的硬件结构参数,它的功能就是将软件描述与给定的硬件结构用一定的方式联系起来,也就是说综合器是软件描述与硬件实现的一座桥梁。综合过程就是将电路的高级语言描述转换成低级的,可与目标器件CPLD相映射的网表文件。适配器的功能是将由综合器产生的网表文件配置与指定的目标器件中,产生最终的下载文件。适配器所选的目标器件(CPLD芯片)必须包含于在综合器中已指定的目标器件系列。本次数字钟设计利用Verilog硬件描述语言和图形输入相结合的编程方式,并通过可编程逻辑器件FPGA进行硬件设计,用LED数码管动态显示计时结果。数字钟可以由各种技术实现,如单片机等。利用可编程逻辑器件具有其他方式没有的特点,它具有成功率高,理论与实践结合紧密,体积小,容量大,I/O口丰富,易编程和加密等特点,并且它还具有开放的界面,丰富的设计库,模块化的工具等优良性能,应用非常方便。1.2选题目的现在是一个知识爆炸的新时代。新产品、新技术层出不穷,电子技术的发展更是日新月异。可以说,电子技术的应用无处不在,电子技术正在不断地改变我们的生活,改变着我们的世界。钟表的数字化给人们生产生活带来了极大的方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、定时启闭电路、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用,有着非常现实的意义。2软件的开发环境2.1FPGA的基本结构FPGA具有掩膜可编程门阵列的通用结构,它由逻辑功能块排成阵列,并由可编程的互连资源连接这些逻辑功能块来实现不同的设计。FPGA一般由3种可编程电路和一个用于存放编程数据的静态存储器SRAM组成。这3种四川工商学院EDA技术与SOPC基础课程设计3可编程电