好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

基于fpga任意倍数分频器设计-学位论文.doc

50页
  • 卖家[上传人]:re****.1
  • 文档编号:551867395
  • 上传时间:2023-08-03
  • 文档格式:DOC
  • 文档大小:670KB
  • / 50 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第 III 页 基于FPGA任意倍数分频器设计目 录1 绪论 11.1 课题分析 11.2 FPGA概述 21.3 VHDL语言和QUARTUS II简介 41.3.1 VHDL语言简介 41.3.2 QUARTUS II简介 62 分频基本原理 82.1 等占空比偶数分频方法 82.2等占空比的奇数分频方法 82.3 分数分频方法 92.4 小数分频方法 92.5 任意倍数分频器 103 任意倍数分频器设计 123.1 设计思想 123.2 顶层框图设计 133.3 顶层文件设计 133.4 模块设计 143.4.1 偶数分频模块的设计 143.4.2 奇数分频模块的设计 153.4.3 半整数模块设计 163.4.4 占空比可调的分频模块设计 173.4.5 小数分频模块设计 183.4.6 encoder_35模块的设计 193.4.7 led模块的设计 203.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顶层文件设计原理图 481 绪论1.1 课题分析随着电子技术的高速发展,FPGA/CPLD以其高速、高可靠性、串并行工作方式等突出优点在电子设计中受到广泛的应用,而且代表着未来EDA设计的方向。

      FPGA/CPLD的设计采用了高级语言,如VHDL语言AHDL语言等,进一步打破了软件与硬件之间的界限,缩短了产品的开发周期所以采用先进的FPGA/CPLD取代传统的标准集成电路、接口电路已成为电子技术发展的必然趋势[1]EDA技术代表了当今电子设计技术的最新发展方向,采用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从电路设计、性能分析到设计出IC版图或PCB版图的整个过程在计算机上自动处理完成由于现代电子产品的复杂度和集成度的日益提高,一般分离的中小规模集成电路组合已不能满足要求,电路设计逐步地从中小规模芯片转为大规模、超大规模芯片,具有高速度、高集成度、低功耗的可编程朋IC器件已蓬勃发展起来[2]分频器是数字系统设计中的一种基本电路,我们往往需要通过分频器得到我们所需要的时钟频率,在FPGA的设计中也是使用频率非常高的一种基本设计基于FPGA实现的分频电路一般有两种方法:一种是使用FPGA芯片内部提供的锁相环电路进行分频,如ALTERA提供的PLL(Phase Locked Loop),Xilinx提供的DLL(Delay Locked Loop);第二种是使用硬件描述语言,如VHDL、Verilog HDL等。

      使用锁相环电路进行分频有许多的优点,例如可以实现倍频、相位偏移以及占空比可调等但是由于FPGA内部提供的锁相环个数极为有限,不能满足使用时的要求因此使用硬件描述语言实现分频电路在数字电路设计较为常用,因为它消耗不多的逻辑单元就可以实现对时钟的操作,具有成本低、可编程等优点[3]在数字系统的设计中,设计人员会遇到各种形式的分频需求,如整数、小数、分数分频等在某些数字系统设计中,系统不仅对频率有要求,而且对占空比也有着很严格的要求由计数器或计数器的级联构成各种形式的偶数分频及非等占空比的奇数分频实现起来较为简单,但对半整数分频及等占空比的奇数分频实现较为困难,小数分频和分数分频更困难本论文利用VHDL硬件描述语言,通过QuartusⅡ7.2开发平台,设计了一种能满足偶数分频,奇数分频,半整数分频,占空比可调的分频,小数分频的任意倍数分频器,并可以通过按钮来选择具体由哪一种分频器进行操作,而拨码开关则可以预置一些分频系数,发光二极管则显示具体由那种分频实现,数码管显示分频的系数分频系数设置:偶数分频:2,4,6,8,10,12,14奇数分频:1,3,5,7,9,11,13,15半整数分频:1.5—15.5占空比可调的分频:1:1,1:2,1:3,2:1,2:2,2:3,3:1,3:2,3:3小数分频:1.1—3.31.2 FPGA概述FPGA(Field Programmable Gate Array)现场可编程逻辑门阵列,它是在PAL(Programmable Array Logic)、GAL(generic array logic)、CPLD(Complex Programmable Logic Device)等可编程器件的基础上进一步发展的产物。

      它是作为专用集成电路(Application Specific Integrated Circuit)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点它是当今数字系统设计的主要硬件平台,其主要特点就是完全由用户通过软件进行配置和编程,从而完成某种特定的功能,且可以反复擦写在修改和升级时,不需额外地改变PCB 电路板,只是在计算机上修改和更新程序,使硬件设计工作成为软件开发工作,缩短了系统设计的周期,提高了实现的灵活性并降低了成本以硬件描述语言(Verilog或VHDL)所完成的电路设计,可以经过简单的综合与布局,快速的烧录至FPGA上进行测试,是现代IC设计验证的技术主流这些可编辑元件可以被用来实现一些基本的逻辑门电路(比如AND、OR、XOR、NOT)或者更复杂一些的组合功能比如解码器或数学方程式在大多数的FPGA里面,这些可编辑的元件里也包含记忆元件例如触发器(Flip-flop)或者其他更加完整的记忆块系统设计师可以根据需要通过可编辑的连接把FPGA内部的逻辑块连接起来,就好像一个电路试验板被放在了一个芯片里一个出厂后的成品FPGA的逻辑块和连接可以按照设计者而改变,所以FPGA可以完成所需要的逻辑功能。

      FPGA一般来说比ASIC(专用集成芯片)的速度要慢,无法完成复杂的设计,但是功耗较低但是他们也有很多的优点比如可以快速成品,可以被修改来改正程序中的错误和更便宜的造价厂商也可能会提供便宜的但是编辑能力差的FPGA因为这些芯片有比较差的可编辑能力,所以这些设计的开发是在普通的FPGA上完成的,然后将设计转移到一个类似于ASIC的芯片上另外一种方法是用CPLD(复杂可编程逻辑器件备)FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分目前主流的FPGA仍是基于查找表技术的,已经远远超出了先前版本的基本性能,并且整合了常用功能(如RAM、时钟管理和DSP)的硬核(ASIC型)模块:FPGA芯片主要由6部分完成,分别为:可编程输入输出单元、基本可编程逻辑单元、完整的时钟管理、嵌入块式RAM、丰富的布线资源、内嵌的底层功能单元和内嵌专用硬件模块FPGA的基本特点有:1、采用FPGA设计ASIC电路(专用集成电路),用户不需要投片生产,就能得到合用的芯片。

      2、FPGA可做其它全定制或半定制ASIC电路的中试样片3、FPGA内部有丰富的触发器和I/O引脚4、FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一5、FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程用户可以根据不同的配置模式,采用不同的编程方式 加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可当需要修改FPGA功能时,只需换一片EPROM即可这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能因此,FPGA的使用非常灵活早在1980年代中期,FPGA已经在PLD设备中扎根CPLD和FPGA包括了一些相对大数量的可编辑逻辑单元CPLD逻辑门的密度在几千到几万个逻辑单元之间,而FPGA通常是在几万到几百万CPLD和FPGA的主要区别是他们的系统结构。

      CPLD是一个有点限制性的结构这个结构由一个或者多个可编辑的结果之和的逻辑组列和一些相对少量的锁定的寄存器这样的结果是缺乏编辑灵活性,但是却有可以预计的延迟时间和逻辑单元对连接单元高比率的优点而FPGA却是有很多的连接单元,这样虽然让它可以更加灵活的编辑,但是结构却复杂的多CPLD和FPGA另外一个区别是大多数的FPGA含有高层次的内置模块(比如加法器和乘法器)和内置的记忆体因此一个有关的重要区别是很多新的FPGA支持完全的或者部分的系统内重新配置允许他们的设计随着系统升级或者动态重新配置而改变一些FPGA可以让设备的一部分重新编辑而其他部分继续正常运行CPLD和FPGA还有一个区别:CPLD下电之后,原有烧入的逻辑结构不会消失;而FPGA下电之后,再次上电时,需要重新加载FLASH里面的逻辑代码,需要一定的加载时间FPFA的主要生产商有:Altera,Xilinx,Actel,Lattice其中Altera作为世界老牌可编程逻辑器件的厂家,是当前世界范围内市场占有率最大的厂家,它和Xilinx主要生产一般用途FPGA,其主要产品采用RAM工艺Actel主要提供非易失性FPGA,产品主要基于反熔丝工艺和FLASH工艺。

      1.3 VHDL语言和QUARTUS II简介1.3.1 VHDL语言简介VHDL(VHSIC(Very High Speed Integrated Circuit)Hardware Description Language)是超高速集成电路硬件描述语言,是一种用于电路设计的高级语言它出现于80年代后期,刚开始时它是由美国国防部开发出来的,是为了供美军用来提高设计的可靠性和缩减开发周期的一种使用范围比较小的设计语言 VHDL语言主要应用于数字电路系统的设计目前,国内对它的应用多数集中在FPGA/CPLD/EPLD的设计当中,除此之外,一些较为有实力的单位,也将它用来设计ASICVHDL语言具有多层次描述系统硬件功能的能力,既可以描述系统级电路,又可以描述门级电路而描述既可以采用行为描述、寄存器传输描述或结构描述,也可以采用三者混合的混合级描述另外,VHDL还支持惯性延迟和传输延迟,还可以准确地建立硬件电路模型VHDL支持预定义的和自定义的数据类型,给硬件描述带来较大的自由度,使设计人员能够方便地创建高层次的系统模型VHDL语言具有自顶向下和基于库的设计特点其开发流程:在顶层用方框图或硬件语言对电路的行为进行描述后,进行系统仿真验证和纠错,再用逻辑综合优化工具生成具体的门级逻辑电路的网表,然后通过适配器将网表文件配置于指定的目标器件,产生最终下载文件或配置文件。

      最后把适配后生成的下载或配置文件通过编程器或编程电缆下载到具体的FPGA/CPLD器件中去,以便进行硬件调试和验证,从而实现。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.