实验6指导书 基于FPGA的分频器的设计
- 格式:doc
- 大小:25.00 KB
- 文档页数:1
内蒙古科技大学本科生毕业设计说明书(毕业论文)题目:基于FPGA的奇偶分频器的设计与实现学生姓名:学号:专业:电子信息工程班级:电信10-1班指导教师:基于FPGA的奇偶分频器的设计与实现摘要分频器作为一种最基本的数字电路,广泛的应用在各种复杂的逻辑电路设计中,对于FPGA芯片来说,虽然能用自带的锁相环来产生一部分我们所需的频率,但是,用VHDL语言实现分频能从同一时钟较为方便、快捷的生成多个所需要的频率,同时能够实现信号的同步,因此,分频器的应用非常广泛。
本设计应用软件为开发平台,运用VHDL语言编程实现整数的奇偶分频的设计,在本设计中实现了0、2、4、6、8、10、12、14偶数的整数分频器设计和1、3、5、7、9、11、13、15奇数的整数分频器设计。
通过仿真结果,验证了设计的正确性。
关键词:FPGA;分频器;VHDL语言;Quartus ⅡDesign and implementation of FPGA-based parity dividerAbstractDivider as a basic digital circuits, widely used in a variety of complex logic circuit design, the FPGA chip, although able to own a part of our phase-locked loop to produce the desired frequency, but using VHDL language divide from the same clock frequency is more convenient and efficient to generate multiple needs, while able to achieve synchronization signal, and therefore, the divider is widely used.The design of application software development platform, the use of VHDL language programming odd integer divider design, the design is implemented in an even integer divider 0,2,4,6,8,10,12,14 design and 1,3,5,7,9,11,13,15 odd integer divider design. The simulation results verify the correctness of the design.Key words: FPGA; divider; VHDL language;Quartus Ⅱ目录摘要 (I)Abstract...................................................................................................................... I I 第一章绪论. (1)1.1 课题来源 (1)1.2 选题的意义和目的 (2)1.3 课题研究现状 (3)1.4 本文组织结构 (4)第二章EDA技术 (6)2.1 FPGA技术 (6)2.2 Quartus Ⅱ软件简介 (7)2.3 VHDL语言 (8)2.3.1 VHDL简介 (8)2.3.2 VHDL特点 (9)2.3.3 VHDL组成 (10)第三章奇偶分频器设计与仿真 (12)3.1 偶数分频 (12)3.1.1 原理分析 (12)3.1.2 设计与仿真 (12)3.2 奇数分频 (17)3.2.1 原理分析 (17)3.2.2 设计与仿真 (18)第四章系统设计 (23)4.1 设计的任务 (23)4.2 系统设计 (23)4.3 其余模块设计 (27)4.3.1 encoder_12模块 (27)4.3.2 mux21模块 (29)4.3.3 数码管显示驱动模块 (30)第五章下载与测试 (35)5.1 BTYG-EDA实验概述 (35)5.2 BTYG-EDA实验开发系统特点 (35)5.3 引脚分配 (35)5.4 验证 (36)第六章结论与展望 (37)6.1 结论 (37)6.2 展望 (37)参考文献 (39)致谢 (40)第一章绪论1.1课题来源分频器作为数字系统设计中一类重要的电子电路,在数字电路的迅速发展历程中,通常要运用分频器来实现设计中希望获取的时钟频率。
基于FPGA的多种形式分频器设计与实现摘要FPGA(现场可编程门阵列),它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。
它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
本文通过VHDL语言编程在FPGA上实现多种形式的分频器的设计。
包括偶数分频,奇数分频,半整数分频,占空比可调分频,小数分频,并在这基础上实现了五种分频的集成。
并举例说明了分频器的应用。
关键词:FPGA,VHDL,分频器设计;the design and implement of various formsof points on the frequency based on FPFAAbstractFPGA(Field Programmable Gata Array),it is the future development product based on programmable devices, such as PAL,GAL,CPLD and so on. It is half a custom circuit in the field of ASIC. It not only solves the shortage of custom circuit, but also overcomes the limited defect of the existing programmable device gate circuit. This article realize the design and implement of various forms of points on the frequency through VHDL language.It Includes the even points frequency, an odd points frequency, half integer points frequency, occupies emptiescompared adjustable points frequency, decimal points frequency, And achieves the integration of five points frequency on this basis.It also illustrates the application of frequency device.目录第一章绪论 (1)第一节FPGA概述 (1)第二节VHDL语言的概述 (1)第三节分频器的概述 (2)第四节本文研究内容 (2)第二章VHDL语言 (3)第一节VHDL语言结构 (3)一、实体(ENTITY) (3)二、结构体(ARCHITECTURE) (3)三、程序包、库及配置 (4)第二节VHDL的数据类型与描述语言 (4)一、VHDL语言的对象 (4)二、VHDL语言的主要描述语句 (5)第三章多种形式分频器设计 (6)第一节设计任务 (6)一、设计的任务 (6)第二节系统设计与仿真 (6)一、顶层框图设计 (6)二、顶层文件设计 (7)三、模块设计 (8)第三节分频器的应用 (34)结论 (35)谢辞 (36)参考资料 (37)第一章绪论第一节 FPGA概述FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。
第1章 本课题内容1 课题目的频率合成技术是现代通信系统的重要组成部份,是对一个高精度和高稳固度的基准频率进行加、减、乘、除四那么运算,产生具有一样稳固度和基准度的频率。
分频器是数字逻辑电路设计中常常利用的一个大体电路。
通常,整数分频能够很容易地用计数器或状态机来实现。
但在某些场合下,时钟源与所需要的频率并非成整数关系,现在便需要采纳小数分频器进行分频。
一样来讲,小数分频电路能够分为半整数分频电路和非半整数分频电路两类。
关于小数分频的FPGA 设计,目前普遍采纳的方式是双模前置小数分频,和一种由双模前置小数分频改良而取得的小数分频——用一个半整数分频器和一个整数分频器代替双模前置小数分频中的两个整数分频器。
尽管这两种方案输出时钟的占空比误差和抖动性能方面有所不同,但其工作原理却是一致的。
双模前置小数分频器在理论上能够实现任意小数分频。
但在实际的电路设计中,不可能真正实现任意小数分频。
小数分频器的精度受操纵计数器的阻碍,而操纵计数器的设计会受硬件资源的限制,尽管FPGA 有相当丰硕的硬件资源。
另外,基于FPGA 实现的双模前置小数分频器在两个整数分频时钟之间的切换点上,有时候会显现毛刺,而时钟是不该该有毛刺存在的。
现在,就要结合脉冲删除技术,设计出一种能够进行任意小数分频且可不能显现毛刺的小数分频方案,并通过编程实现。
本文利用VHDL 硬件描述语言的设计方式,通过MAXPLUS II 开发平台,利用Altera 公司的FPGA 器件,设计并实现了一种不同占空比的任意小数分频器。
2 小数分频的大体原理假设时钟源的频率为f 0 ,期望取得的频率为f 1 ,那么其分频比X 为: X=10f f (式1-1) 其中,X>1。
假设M<X<M+1,M 为整数,那么有 X=M+212N N N +=2121)1(N N N M N M +⨯++⨯ (式1-2)其中,N 1和N 2均为整数。
当N 1和N 2取不同的正整数时,从)(212N N N +能够取得任意一个小数,就能够够从理论上实现任意小数分频比的分频。
FPGA结课论文学院:专业:班级:姓名:目录1、引言 (3)2、2N分频器的设计 (3)3、任意整数N分频器的设计 (4)4、半整数分频器设计 (5)5、由分频方法直接获得秒脉冲的设计方法 (6)6、总结 (7)基于FPGA的分频器设计)1 引言分频器是数字系统中常用来对某个给定时钟的频率进行再分频,以得到所需之各种信号频率的常用基本电路之一。
广泛应用于工业控制中的变频需要,电声技术的转化等。
基于FPGA 实现的分频电路一般有两种方法:一是使用FPGA 芯片内部提供的锁相环电路,如 ALTERA 提供的 PLL(Phase Locked Loop),Xilinx 提供的 DLL(Delay Locked Loop);二是使用硬件描述语言,如VHDL、Verilog HDL 等。
使用锁相环电路有许多优点,如可以实现倍频、相位偏移、占空比可调等。
但 FPGA 提供的锁相环个数极为有限,不能灵活满足使用要求。
而用硬件描述语言实现的分频电路消耗不多的逻辑单元就可以实现对时钟的操作,具有成本低、灵活可编程等优点。
2 2N分频器的设计分频系数为2N的分频器的实现最简单,可采用二进制加或减法计数器的设计来实现。
计数器可直接从Altera公司提供的宏功能模块LPM中调用,也可文本输入或原理图输入方式构成。
以一个4bit的二进制加法计数器为例进行分析说明。
以原理图输入方式设计四位二进制加法计数器如图1所示,经编译、时序模拟后得到仿真波形如图2所示:图1 四位二进制加法计数器图2 四位二进制加法计数器仿真波形从仿真波形可以看出分别由Q0、Q1、Q2、Q3得到的脉冲波形频率正是时钟信号CP的1/2、1/4、1/8和1/16。
亦即分频系数是2、4、8和16。
假设FPGA的CP所接石英晶体是20MHz,则不同引脚所得到的频率分别为10 MHz、5 MHz、2.5 MHz和1.25 MHz。
由上讨论推广可知,N位二进制计数器输出端的每一位输出信号其占空比为50%,从低到高排列分频系数正好为21、22、23、24……。
基于FPGA的等占空比的整数分频器的设计摘要:本文给出了一种基于FPGA的等占空比任意整数的分频器设计方法。
首先简要的介绍了整数和半整数分频的原理,在此基础上给出了一种等占空比任意整数分频器的方法。
在文中给出了N_in=5时的分频仿真设计结果,证实本设计方法的正确性和可行性。
关键词:等占空比;任意整数;分频器1 引言分频器是数字集成电路和FPGA设计的基础,是使用效率非常高的设计。
在数字电路设计中,经常会遇到分频器的设计。
对于偶整数分频器的设计非常简单,但是对等占空比的奇分频实现较为困难。
本文通过在设计非等占空比的基础上,经过二分频设计出等占空比的奇分频器,并将器与偶整数分频器巧妙结合称可以实现等占空比任意整数的分频器设计。
2 基本设计原理2.1 偶整数分频器设计由于偶整数的半分频仍为整数,所以设计比较简单。
从数字电路的角度来看,单极D触发器便可实现2分频器的设计。
即只要将D触发器的反相输出与输入相连接,便可在输出端输出时钟信号的2分频信号。
最一般的设计是采用模N 计数器和2分频器组合实现等占空比偶整数分频器。
2.2 半整数分频器设计半整数分频器的分频系数为N—0.5,其电路可由一个异或门,一个模N计数器和二分频器组成。
其中,模N计数器可以设置成带预置的计数器,这样可以实现任意分频系数为N-0.5的分频器。
半整数分频器的特点就是当二分频的输出q发生跳变的外部输入时钟clk周期里,模N计数器的状态变化了两次,从原本需要N个clk才能完成的计数循环减少了0.5个clk,使模N计数器变成了(N-0.5)计数器,得到半整数输出。
3电路实现通过上面的偶整数和半整数的原理介绍,我们可以看到两者的区别主要就在于半整数分频器设计中输出信号的反馈回来和时钟信号异或。
所以我们可以设计这样的一个电路,通过外部的控制信号来选择当前所需要的分频类型是偶整数分频还是奇整数分频,从而控制输出信号与输入时钟信号的异或结果。
即当选择偶整数分频时,异或结果仍为输入时钟信号,反之为输出信号与输入时钟信号的异或。
邵阳学院课程设计第1章绪论1.1 课题背景当今社会是数字化的社会,是数字集成电路广泛应用的社会。
数字集成电路本身在不断地进行更新换代。
它由早期的电子管、晶体管、小中规模集成电路,发展到超大规模集成电路( VLSIC ,几万门以上)以及许多具有特定功能的专用集成电路。
但是,随着微电子技术的发展,设计与制造集成电路的任务已不完全由半导体厂商来独立承担。
系统设计师们更愿意自己设计专用集成电路(ASIC )芯片,而且希望ASIC 的设计周期尽可能短,最好是在实验室里就能设计出合适的ASIC 芯片,并且立即投入实际应用之中,因而出现了现场可编程逻辑器件(FPLD),其中应用最广泛的当属现场可编程门阵列( FPGA)和复杂可编程逻辑器件(CPLD)。
1.2 研究的目的及意义目的是一方面使我们能够进一步理解课程内容,基本掌握 EDA 技术和系统知识,增加集成电路应用知识,培养我们的实际动手能力以及分析、解决问题的能力。
另一方面也可以是我们更好地巩固和加深对基础知识的理解,学会设计中小型数字系统的方法,独立完成调试过程,增强我们理论联系实际的能力,提高电路分析和设计能力。
通过实践引导我们在理论指导下有所创新,为专业课的学习和日后工程实践奠定基础。
通过设计,一方面可以加深我们对理论知识的理解,另一方面也可以提高我们考虑问题的全面性,将理论知识上升到一个实践的阶段。
1.3EDA的发展历程及应用1.3.1 EDA 的发展历程随着集成电路和计算机技术的飞速发展,EDA (Electronic Design Automation)应运而生,它是一种高级、快速、有效的电子设计自动化技术。
EDA 技术以计算机为工具,代替人完成数字系统的逻辑综合、布局布线和设计仿真等工作。
设计者只需要完成对系统功能的描述,然后就可以由计算机来处理这些描述,得到设计结果,修改设计也很方便。
利用EDA 工具进行设计,可以极大的提高设计效率。
EDA 技术的发展经历了一个由浅到深的过程。
基于FPGA任意倍数分频器设计目录1 绪论 (1)1.1课题分析 (1)1.2FPGA概述 (2)1.3VHDL语言和QUARTUS II简介 (4)1.3.1 VHDL语言简介 (4)1.3.2 QUARTUS II简介 (6)2 分频基本原理 (8)2.1等占空比偶数分频方法 (8)2.2等占空比的奇数分频方法 (8)2.3分数分频方法 (9)2.4小数分频方法 (9)2.5任意倍数分频器 (10)3 任意倍数分频器设计 (12)3.1设计思想 (12)3.2顶层框图设计 (13)3.3顶层文件设计 (13)3.4 模块设计 (14)3.4.1 偶数分频模块的设计 (14)3.4.2 奇数分频模块的设计 (15)3.4.3 半整数模块设计 (16)3.4.4 占空比可调的分频模块设计 (17)3.4.5 小数分频模块设计 (18)3.4.6 encoder_35模块的设计 (19)3.4.7 led模块的设计 (20)3.4.8 mux51模块的设计 (21)结论 (23)致 (24)参考文献 (25)附录A VHDL源程序 (26)附录A1:偶数分频实现的程序 (26)附录A2奇数分频实现的程序 (28)附录A3半整数分频实现的程序 (30)附录A4占空比可调的分频实现的程序 (32)附录A5小数分频实现的程序 (34)附录A6 ENCODER_35模块实现的程序 (42)附录A7 LED的实现程序 (43)附录A8 MUX51模块的实现程序 (47)附录B顶层文件设计原理图 (48)1 绪论1.1 课题分析随着电子技术的高速发展,FPGA/CPLD以其高速、高可靠性、串并行工作方式等突出优点在电子设计中受到广泛的应用,而且代表着未来EDA设计的方向。
FPGA/CPLD的设计采用了高级语言,如VHDL语言AHDL语言等,进一步打破了软件与硬件之间的界限,缩短了产品的开发周期。
所以采用先进的FPGA/CPLD取代传统的标准集成电路、接口电路已成为电子技术发展的必然趋势[1]。
实验5 基于FPGA的分频器设计预习内容阅读《电工电子实验教程》第6.6节中触发器及时序逻辑电路的内容。
预先学习Quartus II软件的使用方法。
预习实验的内容,自拟实验步骤和数据表格,选择使用器件,完成电路设计,画出原理电路,手写预习报告。
一、实验目的1.了解EDA软件在电子设计当中的重要作用。
2.熟悉并掌握Quartus II开发软件的基本使用方法。
3.运用图解法设计分频器电路,并进行电路仿真。
二、知识要点FPGA(Field-Programmable Gate Array)是一种可编程器件,即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。
它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
FPGA主要生产厂商有:Altera、Xilinx、Actel、Lattice。
FPGA的开发软件包括Altera公司的Quartus II、Xilinx 公司的ISE、Lattice 公司的isplever Base。
Quartus II是Altera公司的第四代可编程逻辑器件集成开发环境,提供从设计输入到器件编程的全部功能。
Quartus II可以产生并识别EDIF网表文件、VHDL网表文件和Verilog HDL网表文件,为其它EDA工具提供了方便的接口;可以在Quartus II集成环境中自动运行其它EDA工具。
利用Quartus II软件的开发流程可概括为以下几步:设计输入、设计编译、设计定时分析、设计仿真和器件编程。
用户通过开发软件提供的设计工具实现自己的电路设计以及相应的配置,当用户通过仿真验证结论后,便可把设计下载至FPGA中,实现设定功能。
三、实验内容设计一个分频电路(使用74LS161和必要的门电路)。
要求得到8分频(输出频率为输入频率的八分之一)信号和32分频信号。
课程设计报告设计名称EDA(VHDL)课程设计专业班级电子0942姓名学号电气与信息工程学院二0一二年一月基于FPGA的半整数分频器设计一、系统设计任务及功能概述本系统是利用VHDL硬件描述语言和原理图输入方式,通过MUX+PLUSⅡ开发软件和ALTER 公司的FLEX系列EPF10K10LC84-4型FPGA方便的完成了半整数分频器电路的设计。
本系统是通过控制单位时间内两种分频比出现的不同次数来获得所需要的小数分频值。
二、系统设计方案和程序设计1.系统设计方案我们采用脉冲吞吐计数器和锁相环技术,先设计两个不同分频比的整数分频器,然后通112entity cont6 isport(clk:instd_logic;rst:instd_logic;en:instd_logic;qa,qb,qc:outstd_logic);end entity cont6;architecturewode of cont6 issignalcount:std_logic_vector(2 downto 0);beginprocess(clk,rst,en)isbeginifrst='1'then count<="000";elsifclk'event and clk='1'thenif en='1'thenif count="101" then count<="000";else count<=count+1;end if;end if;end if;end process;qa<=count(0);qb<=count(1);qc<=count(2);end architecture wode;模六计数器原件生成图如下:图一模六计数器原件生成上面的程序经编译、时序模拟在MAX+PLUSⅡ中可得到如图所示的仿真波形:图2模6计数器仿真波形(2)半整数分频器设计现在通过设计一个分频系数为5.5的分频器给出用FPGA设计半整数分频器的一般方法。
实验6 基于FPGA的分频器设计
预习内容
阅读《电工电子实验教程》第6.6节中触发器及时序逻辑电路的内容。
预先学习Quartus II软件的使用方法。
预习实验的内容,自拟实验步骤和数据表格,选择使用器件,完成电路设计,画出原理电路,手写预习报告。
一、实验目的
1.了解EDA软件在电子设计当中的重要作用。
2.熟悉并掌握Quartus II开发软件的基本使用方法。
3.运用图解法设计分频器电路,并进行电路仿真。
二、知识要点
FPGA(Field-Programmable Gate Array)是一种可编程器件,即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。
它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
FPGA主要生产厂商有:Altera、Xilinx、Actel、Lattice。
FPGA的开发软件包括Altera公司的Quartus II、Xilinx 公司的ISE、Lattice 公司的isplever Base。
Quartus II是Altera公司的第四代可编程逻辑器件集成开发环境,提供从设计输入到器件编程的全部功能。
Quartus II可以产生并识别EDIF网表文件、VHDL网表文件和V erilog HDL网表文件,为其它EDA工具提供了方便的接口;可以在Quartus II集成环境中自动运行其它EDA工具。
利用Quartus II软件的开发流程可概括为以下几步:设计输入、设计编译、设计定时分析、设计仿真和器件编程。
用户通过开发软件提供的设计工具实现自己的电路设计以及相应的配置,当用户通过仿真验证结论后,便可把设计下载至FPGA中,实现设定功能。
三、实验内容
设计一个分频电路(使用74LS161和必要的门电路)。
要求得到8分频(输出频率为输入频率的八分之一)信号和32分频信号。
本次实验使用软件Quartus II。
四、实验要求
画出逻辑电路图。
画出仿真波形,并对实验结果进行说明。
五、思考题
1.查阅资料说明CPLD的概念。
2.查阅资料简要说明FPGA与CPLD的区别。
3.总结使用Quartus II软件的设计过程。
六、报告要求
在实验报告中写出详细的设计思路和设计过程。
画出仿真原理图和仿真结果。
列出元器件清单。
写出实验结果及实验总结。
回答思考题。