文档介绍:电子科技大学基于FPGA的电子秒表的设计学院:物理电子学院摘要本文主要介绍了如何利用VHDL语言在PFGA开发板上开发一个具有启动、停止、分段和复位功能的电子秒表,着重介绍了电子秒表的基本原理和实现方案以及在Xilinx公司的ISE软件开发平台上利用VHDL语言编程实现,使用ModelSim仿真软件对VHDL程序做了实时仿真,并完成了综合布局布线,最终下载到芯片上实现功能。关键词:FPGA,VHDL,ISE,自顶向下。目录电子科技大学 1摘要 2第一章 引言 5第二章 FPGA和VHDL简介以及开发流程 6 FPGA概述 6 FPGA开发环境简介 7 VHDL语言简介 7 VHDL语言的开发流程 9第三章 数字秒表的设计 12 实验任务及要求 12系统需求和解决方案 13 分频器设计 14 消抖电路设计 14 控制模块 15 计数器 16 模块设计之数据锁存器 16 八选一多路复用电路 17 扫描段选电路 17 数码管段选电路 18第四章 数字秒表仿真实验结果 20 分频器仿真 20 段选电路仿真 20 模八计数器 20 计数器程序仿真 21 锁存器程序仿真 21 多路复用器程序仿真 21 按键消抖程序仿真 22参考文献 23引言秒表是体育竞赛中不可或缺的一个工具,其可以直观的衡量运动员能力,考量运动员的水平,目前,用于控制秒表的秒表控制系统主要有PLC控制器,单片机控制其和PLD控制器等多种形式。其中PLC控制器的特点为编程方便,容易扩展输入输出通路,但系统硬件成本较高了单片机控制其的特点为可塑性强,控制模式灵活多样,单系统组成除单片机外,还需要较多外围电路。而使用VHDL语言设计秒表控制系统的方法,则可将程序下载到可编程逻辑器件中组成实际电路,从而实现了数字系统硬件的软件化,不仅非常发辫,而且非常实用。FPGA和VHDL简介以及开发流程可编程逻辑器件(PLD,ProgrammableLogicDevices)是大规模集成电路技术发展的产物,它使数字系统的设计从电路级深入到了芯片级,大大提高了系统的可靠性,而且结合EDA技术,只需在计算机上修改和更新程序就可以实现硬件功能重构与性能升级,不需要额外的修改硬件电路,使硬件设计成为软件设计,方便快捷,提高了实现的灵活性,产品的开发设计周期大大缩短,开发程度显著降低。其中应用最广泛的是现场编程门阵列(FPGA,FieldProgrammableGateArray)和复杂可编程逻辑器件(plexProgrammableLogicDevice)[] 张义和,=[M],北京:中国电力出版社,2008:2-11。20世纪70年代发展起来的可编程逻辑器件的发展大致经历了这样的过程:由70年代初期的只能完成简单数字逻辑功能的可编程只读存贮器(PROM)、紫外线可按除只读存贮器(EPROM)、电可擦除只读存贮器(EEPROM)和PLA,然后到70年代80年代初的只用于规模较小的数字电路的较复杂可编程芯片PLA和GAL,再到80年代中期的功能齐全、能实现较大规模电路设计的可编程逻辑器件CPLD和FPGA,最后到90年代的器件编程和器件测试技术"在这一发展进程中,PLD的结构配置和功能得到改善、集成度越来越高、速度和灵活性得到了很大的提高[] [J].Eleetronproduetionworld,2000,(9):26一28。目前,可编程器件的发展速度极快,工作频率可达数百兆赫兹,片上逻辑资源已达数百万门,可以嵌入功能强大的32位微处理器构成片上可编程逻辑系统:SOPC(SystemOnProgrammableChip)。 FPGA概述FPGA是20世纪90年代发展起来的,其密度已超过25×104门水平,内部门延时小于3ns。这种期间完成某种特定的功能是完全由用户通过软件进行配置和编程来实现的,而且可以反复编写,它具有芯片逻辑资源丰富、成本低、功耗低等优势。此外,它的另一个突出特点是现场变成,在FPGA工作的现场,可以不痛过计算机把存于FPGA外的ROM中的变成数据加载给FPGA,通过简单的设备就能改变FPGA中的编程数据,从而改变FPGA执行的逻辑功能。这种方法也叫做ICR(InCircuitReconfiguration,在电路上直接配置)编程。FPGA的这个特点为工程技术人员维修、改进、更新电路逻辑功能提供了方便。大部分FPGA采用基于SRAM的查找表(LUT,Look-Up-Table)结构。查找表本质上就是一个RAM。若逻辑函数具有n个输入项的的话,就需要由输入个数为n、容易为2n个位的RAM单元存放函数值,RAM的地址线器输入线的作用,地址即输入线的作用,地址即输入变量,RAM输出为逻辑函数值。每输入一个信号进行逻辑运算就等于输入一个地址进行查表,地址所对应的内容就是输出。 FPGA开