1、本科毕业论文(20 届)基于 FPGA 数字时钟的设计所在学院 专业班级 通信工程 学生姓名 学号 指导教师 职称 完成日期 年 月 - I -目录摘要 .IIIAbstract.IV前言.1第一章 FPGA 简介 .21.1 FPGA 概述 .21.2 FPGA 基本结构 .21.3 FPGA 的工作原理 .41.4 FPGA 的设计流程 .41.4.1 设计输入.51.4.2 设计仿真.61.4.3 实现.6第二章 数字时钟设计及 MAX+PLUSE II 的介绍 .72.1 数字时钟的原理 .72.2 数字时钟的构成 .72.3 数字钟的功能要求 .82.4 MAXPLUS开发平台简介
2、.92.5 MAXPLUS的功能 .92.6 MAXPLUS的设计向导 .9第三章 程序设计与实验仿真.113.1 主程序代码设计与仿真结果 .113.1.1 主程序源代码 .113.1.2 实验仿真结果 .153.2 24 进制代码设计与仿真结果 .153.2.1 24 进制源代码 .153.2.2 实验仿真结果 .173.3 60 进制代码设计与仿真结果 .183.3.1 60 进制源代码 .183.3.2 实验仿真结果 .20- II -3.4 去抖代码设计与仿真结果 .223.4.1 按键抖动产生原因分析.223.4.2 按键消抖电路设计原理.223.4.3 按键消抖电路设计.223.
3、4.4 去抖源代码.233.4.5 实验仿真结果.25总结.28参考文献.29附录.30致谢.36- III -基于 FPGA 数字时钟的研究摘要本文是在前人研究成果的基础上,面向实际应用的需求在 MAXPLUS开发环境下,用 VHDL 硬件描述语言设计了一个可以在 FPGA 芯片上实现的数字时钟.通过将设计代码下载到 FPGA 的开发平台 Altera DE2 开发板上进行了功能验证. 采用 VHDL硬件描述语言描述数字时钟的功能,完成对各模块的功能仿真,通过分析仿真波形表明设计的数字时钟完成了预期的功能。随着现代芯片工艺的改进,FPGA 的等效系统门达到到几百万门,而且工作频率也随之提高。
4、FPGA 也就大量的在电子产品中出现。在通信行业,传输网,医疗仪器,各种电子仪器,安防监控,电力系统,汽车电子,消费类电子中都大面积的使用。FPGA 器件高集成度、可现场修改、开发周期短等优点满足了从军用到民用、从高端到低端的大多数电子设计领域的需求。纵观现场可编程逻辑器件的发展历史,其之所以具有巨大的市场吸引力,根本在于:FPGA 不仅可以使电子系统小型化、低功耗、高可靠性,而且其开发周期短、开发软件投入少、芯片价格不断降低,促使 FPGA 越来越多地取代了 ASIC 的市场;越来越多的功能模块集成到了 FPGA 中,实现你想实现的任何数字电路,可以定制各种电路;减少受制于专用芯片的束缚,真
5、正为自己的产品量身定做,在设计的过程中可以灵活的更改设计。数字电路的发展经历了由电子管、半导体分立器件到集成电路等几个时代。从 60年代开始,数字集成器件以双极型工艺制成了小规模逻辑器件。随后发展到中规模逻辑器件;70 年代末,微处理器的出现,使数字集成电路的性能产生质的飞跃。数字集成器件所用的材料以硅材料为主,在高速电路中,也使用化合物半导体材料,例如砷化镓等。逻辑门是数字电路中一种重要的逻辑单元电路 。近年来,可编程逻辑器件PLD 特别是现场可编程门阵列 FPGA 的飞速进步,使数字电子技术开创了新局面,不仅规模大,而且将硬件与软件相结合,使器件的功能更加完善,使用更灵活。关键词:数字时钟
6、;FPGA 技术;VHDL 语言设计- IV -Based on FPGA digital clock research AbstractThis paper is on the basis of predecessors achievements, the demand for practical application in MAXPLUS development environment, use VHDLhardware description language design a chip in the FPGA realizing digital clock. Through FPGA
7、 design code downloaded to the development platform Altera DE2 development board. Validate the function by VHDL language description hardware description digital clock function and the completion of the function of each module, through the analysis and simulation waveform simulation shows that this
8、design digital clock finish the expected function. With modern chip technology improvement, FPGA equivalent system door to door, and work to millions of frequency increases. The FPGA also lots of appeared in electronic products. In communications industry, transmission network medical devices and va
9、rious kinds of electronic equipment, safety monitoring, power system, automotive electronics, consumer electronics in the use of large area. The FPGA device high level of integration, the modification, short development cycle has advantages such as civil, the army used to satisfy the most from high-
10、end to low-end electronic design field needs. Throughout field programmable logic devices on the development of history, its of great attraction to market, depend on: the FPGA can not only make electronic systems, miniaturization, low power consumption, high reliability, and its developing software
11、short development cycle, less input, chip prices are lower, prompting the FPGA increasingly replaced the ASIC market; More and more function module integration, realize you to FPGA any digital circuit to realize, can customize various circuit; Reduce the fetter, is subject to the special chip really
12、 for their products tailored, in design process can be flexible change the design. The development of digital circuit experience from vacuum tubes, semiconductor division device to integrated circuits and so on several times. Since the 1960s, digital integrated devices to start a bipolar workmanship
13、 the small-scale logic devices. Then - V -developed to scale logic devices in; In the late 1970s, microprocessors has made the performance of digital IC produce quality leap. Digital integrated device used materials with silicone material is given priority to, in high-speed circuit, also use compoun
14、d semiconductor materials, such as gaas, etc. Logic gates is one of the most important digital circuit logical unit circuit. In recent years, programmable logic devices PLD especially field programmable gates array FPGA rapid progress, make digital electronic technology opened new situation, not onl
15、y large scale, and will combine the hardware and software of the device and make use of more functional perfect, more flexible.Keywords:Digital clock, FPGA technology, VHDL language design - 1 -前言当今社会的标志之一就是信息产品的广泛使用,而且产品的性能是越来越强,产品的复杂程度也越来越高,更新步伐更是越来越快。支撑信息电子产品高速发展的基础就是微电子制造工艺水平的提高和电子产品设计开发技术的发展。前者
16、以微细加工技术为代表,而后者的代表就是电子设计自动化技术。 本设计采用的VHDL是一种全方位的硬件描述语言,具有极强的描述能力,能支持系统行为级、寄存器传输级和逻辑门级三个不同层次的设计;支持结构、数据流、行为三种描述形式的混合描述、覆盖面广、抽象能力强,因此在实际应用中是越来越广泛。ASIC是专用的系统集成电路,是一种带有逻辑处理的加速器。而FPGA是特殊的ASIC芯片,与其他的ASIC芯片相比,它具有设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定以及可实时在线检测等优点。钟表的数字化给人们生活带来了极大的方便,且大大地扩展了钟表原先的报时功能。如定时自动报警、定时
17、启闭器、定时开关烘箱,各种定时电气的自动启用等,所有这些都是以钟表数字化为基础的。因此,研究数字时钟及扩大其应用,有着非常实用的意义。- 2 -第一章 FPGA 简介1.1 FPGA 概述FPGA是现场可编程门阵列(Fied Programmable Gate Array)的简称,是一种高密度的可编程逻辑器件,与之相应的CPLD是复杂可编程逻辑器件(Complex Programmable Logic Device)的简称,两者的功能基本相同,只是实现原理略有不同,所以有时可以忽略这两者的区别,统称为可编程逻辑器件或CPLD/PGFA。CPLD/FPGA几乎能完成任何数字器件的功能,上至高性能
18、CPU,下至简单的74电路。它如同一堆积木,工程师可以通过传统的原理图输入或硬件描述语言自由的设计一个数字系统。通过软件仿真可以事先验证设计的正确性,在PCB完成以后,利用CPLD/FPGA的在线修改功能,随时修改设计而不必改动硬件电路。使用CPLD/FPGA开发数字电路,可大大缩短设计时间,减少PCB 面积,提高系统的可靠性。这些优点使得CPLD/FPGA技术在20世纪90年代以后得到了飞速的发展,同时也大大推动了EDA软件和硬件描述语言HDL的进步。1.2 FPGA基本结构FPGA具有掩膜可编程门列的通用结构,它是由逻辑功能块排成阵列,由可编程的互联资源连接这些逻辑功能块来实现不同的设计。
19、FPGA一般由3种可编程电路和一个用于存放编程数据的静态存储器SRAM组成的。这3种可编程电路是:可编程逻辑模块(CLBConfigurable Logic Block) 、输入/ 输出模块(IOBI/O Block )和互联资源( IRIntercinnect Resource) 。可编程逻辑模块CLB是实现逻辑功能的基本单元,它们通常规则的排列成一个阵列,散布也整个芯片;可编程输入/输出模块(IOB)主要完成芯片上的逻辑与外部封装脚的接口,它通常L排列在芯片的四周;可编程互联资源包括各种长度的连接线段和一些可编程连接开关,它们将各个CLB之间或CLB、IOB之间及IOB之间连接起来,构成了
20、特定功能的电路。1、CLB 是FPGA 的主要组成部分。图1-1是CLB的基本结构框图,它主要由逻辑函数发生器、触发器、数据选择器等电路组成。 CLB中3个逻辑函数发生器分别是G 、F和H,相应的输出是G、F和H。G有4个输入变量 G1、G2 、G3 和G4;F也有4个输入变量F1、F2、F3 和F4。这两个函数发生器是完全独立的,均可以实现 4输入变量的任意- 3 -组合逻辑函数。逻辑函数发生器H有3个输入信号;前两个是函数发生器的输出 G和F ,而另一个输入信号是来自信号变换电路的输出H1。这个函数发生器能实现 3输入变量的各种组合函数。这3个函数发生器结合起来,可实现多达9变量的逻辑函数
21、。图1.1 CLB基本结构框图CLB中有许多不同规格的输了选择器(四选一、二选一等) ,通过对CLB 内部数据选择器的编程,逻辑函数发生器G、F和H的输出可以连接到 CLB输出端X和Y ,并用来选择触发器的激励输入信号、时钟有效边沿、时钟使能信号及输出信号。这些数据选择器的地址控制信号均是由编程信息提供,从而实现所需的电路结构。CLB中的逻辑函数发生器F和G均为查找表结构,其工作原理类似于 ROM。F 和G 的输入等效于ROM 的地址码,通过查找ROM中的地址表可得到相应的组合逻辑函数输出。另一方面,逻辑函数发生器F和G还可以作为器件内高速RAM或小的可读写存储器使用,它是由信号变换电路控制。
22、2、输入/输出模块IOB。IOB提供了器件引脚和内部逻辑阵列之间的连接。 IOB主要由输入触发器、输入缓冲器和输出触发/锁存器、输出缓冲器组成。- 4 -每个IOB控制一个引脚。它们可被配置为输入、输出或双向 I/O功能。当IOB控制的引脚被定义为输入时,通过该引脚的输入信号先将其送入输入缓冲器。缓冲器的输出分为两路:一路可以直接送到MUX,另一路经延时几纳秒(或者不延时)送到输入通路D触发器,在送到数据选择器。通过编程给数据选择器不同的控制信息,确定送至CLB阵列的 I1和I2是来自输入缓冲器,还是来自触发器。当IOB控制的引脚被定义为输出时,CLB阵列的输出信号OUT也可以有两条传输途径:
23、一条是直接经MUX送至输出缓冲器,另一条是先存入输出通路D 触发器,然后再送至输出缓冲器。IOB输出端配有两只MOS管,它们的栅极均是可编程的,使MOS管导通或截止,分别经上拉电阻接通Vcc、地线或者不接通,用以改善输出波形和负载能力。3、可编程互连资源IR。可编程互连资源IR可以将FPGA内部的CLB和CLB 之间、CLB和 IOB之间连接起来,构成各种具有复杂功能的系统。IR主要是由许多金属线段构成,这些金属线段是带有可编程开关的,通过自动布线实现各种电路的连接 1。1.3 FPGA的工作原理目前,Xilinx公司生产的FPGA 都是采用SRAM工艺的查处表(Look-Up-Table)结
24、构,通过烧写文件改变查找表内容的方法实现对FPGA的重复配置,在使用时需要外接一个片外存储器以保持程序。上电时,FPGA将外部存储器中的数据读入片内RAM,完成配置以后,进入工作状态;掉电后FPGA恢复白片,内部逻辑消失。由数字电路的基本知识可以知道,对于一个n输入的逻辑运算,不管是与非运算还是异或运算等,最多只可能存在2n种结果。所以,如果事先将相应的结果存放于一个存储单元,就相当于实现了与非门电路的功能。FPGA的原理也是如此,它通过烧写文件去配置查找表的内容,从而在相同的电路情况下实现了不同的逻辑功能。查找表(Look-Up-Table)简称为LUT,LUT本质上就是一个RAM。目前FPGA中多使用4输入的LUT ,所以每一个 LUT可以看成是 4位地址线的RAM。当用户通过原理图或HDL 语言描述一个逻辑电路后,PLD/FPGA 开发软件就会自动计算逻辑电路的所有可能结果,并把真值表(即结果)写入RAM,这样,每输入有一个信号进行逻辑运算就等于输入一个地址去进行查找表,找出地址对应的内容,然后输出即可 2。1.4 FPGA 的设计流程