基于FPGA的分频器的设计与实现
2016-06-12周庆芳
周庆芳
摘 要:在数字逻辑电路设计中,分频器通常用来对某个给定频率进行分频,以得到所需的频率。整数分频器的实现采用标准的计数器,也可采用可编程逻辑器件实现。有时,时钟源与所需的频率不成整数倍关系可采用小数分频器进行分频。本文在模拟设计频率计脉冲信号时,使用半整数分频器设计电路,且利用VHDL硬件描述语言和原理图输入方式,通过Quartus II以及EPM240T100C5型FPGA方便地完成了半整数分频器电路的设计。
关键词:FPGA;QUARTUSⅡ;VHDL语言;分频器
中图分类号:G64 文献标识码:A 文章编号:1673-9132(2016)25-0023-02
DOI:10.16657/j.cnki.issn1673-9132.2016.25.013
一、分频器的基本原理
(一) 整数分频的基本原理
整数分频包含偶数分频和奇数分频,对于偶数N分频通常使用N/2计数器实现占空比为1:1的N分频器,分频输出信号模为N\2自动取反;对于奇数分频必须分频输出信号为模N计数中的一位[1]。整数分频器的实现,采用可编程逻辑器件设计实现,当时钟源与所需的频率不成整数倍关系,此时可采用小数分频器进行分频。
(二)小数分频的基本原理
小数分频的基本原理是采用脉冲吞吐计数器和锁相环技术先设计两个不同分频比的整数分频器,然后通过控制单位时间内两种分频比出现的不同次数来获得所需要的小数分频值,分频系数为N-0.5(N为整数)时,可控制扣除脉冲的时间,以使输出成为一个稳定的脉冲频率,而不是一次N分频,一次N-1分频[2]。
二、实验目的
使用Quartus II仿真软件,使用半整数分频的方式,通过VHDL语言将整个分频器各个模块的编写使用FPGA实现分频器的整个设计和实现,通过分频器的设计实现掌握基本的整数分频和小数分频的原理,加强对硬件语言的理解,以及对使用组合电路设计复杂器件的能力[3]。
三、设计过程
1.运行Quartus II,新建立一个工程,器件选择EPM240T100C5新片,完成新工程的建立[4]。
2.创建图形设计文件,新建子模块,完成模块的定义以及模块之间的连接,完成分频器顶层设计原理图。
3.将图形设计文件保存。
4.底层的半整数分频器使用 VHDL语言设计一个可预置系数的实现N=1~15的半整数分频器,并且在此过程中调用子模块。编写半整数分频器的底层程序[5]。
5.将设计文件保存。
6.编译源文件。
7.编译无误后建立仿真波形文件[8]。
① 新建一个新的仿真波形文件。
② 将创建的仿真波形文件保存。
③ 在对话框中列出项目中选出使用的输入、输出的引脚。
④ 选择所需要观察的引脚,在波形编辑器窗口中,编辑输入引交的逻辑关系,输入完成后保存仿真波形文件。
⑤ 在仿真工具窗口中可以选择时序仿真或功能仿真,指定仿真波形文件的位置等操作。开始仿真。经过分析仿真结果符合设计的需要。仿真完成后得到仿真波形窗口如图3.1。
8.仿真正确,选择输入/输出引交及对应的CPLD引脚[7]。
9.引脚分配完成,重新对此工程进行逻辑分析、综合适配、时序分析等。完成后观察引交分配的结果。
10.引脚分配完成,经过编辑后会生成可以培植到CPLD的POF文件。此时就可以将设计配置到芯片中。
11.设计配置芯片完成,连接实验箱并验证,所得结果符合实验设计要求。
四、实验结果与分析
实验结果如下表4.1所示,波形的输出是QOUT输出波形经过二次分频的方波。本次设计主要是通过FPGA通过仿真软件对分频器各个模块的设计与实现,本次实验结果通过使用半整数分频的方式通过对分频模为2到14的偶数和3到15的奇数值进行分频,通过实验得到的结果准确。通过使用硬件语言以及FPGA对于分频器的设计与实现,对比MMOS和PMOS管对于分频器的设计,可编程逻辑门电路可以有效地解决前两种元器件在低压的状况下分频器出现无法工作的问题,更好地实现分频器的设计,大大提高时间效率,对比CMOS器件设计,FPGA可以提高分频器的频率[8]。
参考文献:
[1] 刘勇.数字电路[M].电子工业出版社,2007.
[2] 幸云辉,杨旭东.计算机组成原理实用教程[M].清华大学出版社, 2009.
[3] 杨军,周克峰.计算机组成与系统结构指导书[M].云南大学信息学院实验室,2008.
[4] 徐振林.Verilog HDL硬件描述语言[M].机械工业出版社,2000.
[5] 夏宇闻.Verilog数字系统设计教程[M].北京航空航天大学出版社,2008.
[6] 黄宇.基于Quartus 2.0的FPGA/CPLD数字系统设计与应用[M].电子工业出版社,2014.
[7] 梁成志,王诚,赵延宾.Lattice FPGA/GPLD设计[M].人民邮电出版社,2011.
[8] 韩波,唐广.2.4Hz动态CMOS分频器的设计[J].电子设计工程,2006.