毕业设计(论文)基于FPGA的对数字频率计的设计.doc
《毕业设计(论文)基于FPGA的对数字频率计的设计.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于FPGA的对数字频率计的设计.doc(24页珍藏版)》请在三一办公上搜索。
1、 本 科 毕 业 论 文题目:基 于 FPGA 的 对 数 字 频 率 计的 设 计 学 院:计 算 机 信 息 与 工 程 学 院专 业:电 子 信 息 科 学 与 技 术 班 级:2 0 0 6 级 电 子 班 姓 名: 学 号: 指导老师: 基于FPGA的数字频率计的设计摘要:现场可编程门阵列的出现给现代电子设计带来了极大的方便和灵活性,使复杂的数字电子系统设计变为芯片级设计,同时还可以很方便地对设计进行在线修改。本文以设计个四位显示的十进制数字频率计为例,在片FPGA芯片上实现多位数字频率计的设计,来完成对FPGA和Quartus2的学习。在设计中,所有频段均采用直接测频法对信号频率进
2、行测量,克服了逼近式换挡速度慢的缺点。关键词:数字频率计;Verilog HDL;现玚可编程门阵列(FPGA);直接测量法 Construction of the Digital Cymometer Based on FPGAHONG XiaoningAbstract:The appearance of FPGA(Field Programmable Gate Array)leads to the convenience and flexibility of the modern electronic construction,which changes the complicated sys
3、tem construction into the on chip construction.On the other hand,itCan also make some online modification expediently. W ith a casewhich describes an quadbit shownon thedecinaldigitalfrequency, the author introduces the construction method and the realization steps on a single FPGA chip. During the
4、construction process, the signal measurement,which overcomes the shortcoming of frequency of all approxmate the Frequency Channel is measured by the way of direct shift speed. Keyw ords: design of the digital cymom eter; Verilog HDL;FPGA (Field Programmable GateA rray);direct frequency m easurem ent
5、目录前言41、系统总体设计42:各个模块的实现62.1:1000进制计数器62.2:50KHz分频器72.3:14位锁存器(DFF14bite)72.4:14位计数器(CNT14bite)82.5:数码管动态显示(DISPLAY)93:各个模块的的仿真103.1:1000进制计数器103.2:50KHz分频器103.3:14位锁存器(DFF14bite)113.4:14位计数器(CNT14bite)123.5:系统顶层仿真13总结14致谢15参考文献15符录16前言随着电子技术和计算机应用技术的深入发展以及EDA设计技术的不断进步与完善,不仅给电子系统的设计和应用带来了新的设计思路和发展机遇,
6、也对传统的电子设计手段提出了严峻的挑战。传统的电子系统设计,是以各种不同的集成电路芯片为基础,按照功能要求在印制电路板上将不同的芯片拼接、组合,构成实现某种功能的电子系统。这样的设计方法不仅繁琐,而且设计过程中的错误和不足之处不能及早的发现;进入调试阶段后,一旦发妯错误或缺陷,也不能现场更正。这将使研发的时间变长,研发的成本加大。能够克服上述缺点的是片上可编程系统(简称SOPC)。微电子技术、计算机应用技术的飞速发展,不仅使得电子系统的小型化、微型化进程加快,而且给电子系统设计带来了前所未有的变革。大规模FPGA芯片问世,为电子系统设计提供了硬件基础础,几乎大多数电子系统都可以在一块芯片上实现
7、。ALTERA公司的Quartus2软件就是EDA设计的最优秀的软件之一,使用它不仅可以灵活地设计电子系统,而且还可以对设计方案进行模拟仿真,及早发现错误和缺陷。使用FPGA的好处不仅表现在设计的初级阶段,即使在电子系统设计完成之后,甚至投入实际使用的过程中,还可以根据实际需要添加功能。本次写作是以设计频率计为实例来学习Verilog HDL语言和Qartus2软件。1、系统总体设计在Quartus2软件中,可使用多种编程语言。本文以Verilog HDL为编程语言。采用Verilog HDL语言设计一个复杂的电路系统,运用自顶向下的设计思想,将系统按功能逐层分割的层次化设计方法进行设计。在顶
8、层对内部各功能块的连接关系和对外的接口关系进行了描述,而功能块的逻辑功能和具体实现形式则由下 一层模块来描述。根据本数字频率计实现原理,运用自顶向下的设计思想。系统总框图如下:50K分频器1000进制计数器14位计数器14位锁存器动态数码管显示1KHz1Hz测试信号数据显示数据1KHz50MHZ显示信号 1-150MHz的时钟信号经过分频,产生1KHz的信号,分别送到1000进制计数模块和动态显示模块。经过1000进模块的信号生成1Hz的信号,作为14位计数器的控制信号。进入动态显示的1KHz信号作为动态输出的时序信号。测试信号通过14位的计数器后,由控制信号将其转换为输出显示的数据,再经过1
9、4位的锁存器缓冲再送到动态显示模块中。通过动态显示模块最终生成显示信号。在这次论文中,将整个所要设计的频率计做为顶层,下面有五个模块:CNT1000(1000进制计数器)、CNT50000(50KHz分频器)、DFF14bite(14位锁存器)、CNT14bite(14位计数器),动态数码管显示(DISPLAY)。每个模块都是独立的,都能单独使用。每个模块都是最小的子模块,就直接用Verilog HDL语言来描述。设计的系统顶层电路如图所示: 1-22:各个模块的实现各个模的实现是独立的,都运用Verilog HDL作为编程语言。2.1:1000进制计数器作用:在此次设计中,这一模块用来将输入
10、信号的频率降低为原来的1/1000,用作分频器。由总框图可知,当50MHz的时钟信号经过分频后,得到了1KHz的时钟信号,再经过此模块,就得到一个1Hz的时钟信号。 2-1生成方式:Verilog HDL设计中定义三个端口(一个输入端,一个输出端,q_c没有用到),一个计数变量。当输入端的时钟发生上升沿跳变时,计数变量自加1,当计数达到1000(16进制为3e7)的时候,输出端就产生一脉冲信号,作为下一模块的输入变量。图2-1为代码的生成图。2.2:50KHz分频器作用:由总框图可以知,这一模块的作用是将输入的50MHz的时钟信号转换为1KHz的时钟信号输出。1KHz的信号用于动态显示模块的位
11、选和段选。作为计数信号的时钟信号。2-2生成方式:用Verilog HDL编程语言写其代码,则设计中定义两个端口(一个输入端,一个输出端),一个计数变量。当输入端的时钟发生上升沿跳变时,计数变量自加1,当计数达到50000(16进制为C34F)的时候,输出端就产生一脉冲信号,作为下一模块的输入变量。2.3:14位锁存器(DFF14bite)作用:在总框图中,14位锁存器用作显示数据的输出缓冲。当计数模块送出所计数得到的数值时,就会锁存在锁存器中。当时钟信号到来时,就会将锁存的数据送到动态显示模块中显示出来。所以14位的锁存器是作为一个数据输出的缓冲器。生成方式:使用Quartus2软件中的锁存
12、模块,如下图所示:2-3当时钟信号到来时,输入端就将数据D13.0锁存并输出为Q13.0,直到下一个时钟信号的到来,再重复上一过程。以Verilog HDL来编写代码,应有一个14位的输入端,一个时钟信号输入端和一个14位的输出端;当时钟信号发生变化时,输出端就将输入端此时输入的值。2.4:14位计数器(CNT14bite)作用:这一模块用来接收被测信号,并转换成被测信号的频率。如图(6)所示,测试信号由模块的CLK接收;当ENABL信号为0时,计数完成,并将所得的数据保持,并送到下一个模块;CLR信号为0,将所有计数清零,进入下一次计数。生成方式:使用Quartus2软件来设计,其模块图如下
13、:2-4用Verilog HDL编写代码时,应有三个输入端,一个13位的输出端和一个计数的变量。当输入端CLK发生上升沿跳变时,计数变量自加1,并将其转换为相应的二进制数(将十进制的每一位用四位二进制数表示);当ENABL的输入信号为0时,就将计数变量的值输出,并将原有的计数清零。2.5:数码管动态显示(DISPLAY)作用与生成方式:将缓冲器里的值转换为动态输出的数据值。模块电路如图所示:2-5使用Verilog HDL语言时,CLK信号则作为时钟信号,内设一变量用来记数CLK的脉冲数,作为时间延迟;24位的输入端口,用作输入要显示的数据,此次论文用了输入端口中的低13位;7段数码管的7位输
14、出端口,用作输出显示的数据;6位的位选输出端,输出的数据为位选信息。在程序的内部设有十个变量,其中六个变量(LED1Q,LED2Q,LED3Q,LED4Q,LED5Q,LED6Q)每个变量四位,用来接收24位的输入变量;四位变量led_xx用作段选;七位变seg_out用作数据输出即7段数码管的7位输出端口的输出数据;六位变量led_out用作位选信号是,初始值为1(二进制的000001),每左移一次,选中高一位的数据显示,当发生溢出时,对led_out再次赋值1(二进制的000001);8位变量delay用作延时信号。3:各个模块的的仿真各个模块是独立的,所以每个模块可以单独设计并验证。3.
15、1:1000进制计数器仿真结果如图所示:3-1仿真时钟的周期为40ns,得到的输出端CQ1000的周期为40us。因为1000进制计数器的功能就是将输入信号的频率频率降低为原来的1/1000,即周期为原来的1000倍。所以这一模块符合要求。3.2:50KHz分频器仿真结果如图所示:3-2仿真时钟周期为40ns,输出端OUT_1KHz输出为2ms。因为这一模块的功能是将输入信号的频率降低为原来的1/50000,即周期为原来的50000倍。所以这一模块符合要求。3.3:14位锁存器(DFF14bite)仿真结果如图所示:3-3由输入和输出对比可知:输出的数据都是以输入的数据在时钟跳变的时候的值。这
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 FPGA 数字频率计 设计
链接地址:https://www.31ppt.com/p-3979122.html