当前位置:首页 > 嵌入式 > 嵌入式动态
[导读]摘要:本文介绍了一种基于FPGA的多数值分频器的设计,该分频器可以实现占空比及分频系数可调,其分频数值可以是整数、小数和分数。文章给出了使用Altera公司的Cyelon eII系

摘要:本文介绍了一种基于FPGA的多数值分频器的设计,该分频器可以实现占空比及分频系数可调,其分频数值可以是整数、小数和分数。文章给出了使用Altera公司的Cyelon eII系列EP2C5Q208C型FPGA芯片中实现后的仿真结果和测试结果,这些结果表明设计的正确性和可行性。分频器采用VHDL语言编程实现,用户可以自行设置分频器功能,这种分频器设计具有很强的实用性和可移值性。

FPGA是数字系统主流控制器之一,成为目前硬件设计的研究重点。工程人员在数字系统的设计过程中,总会遇到各种各样数值的分频要求,比如偶数分频、奇数分频、半整数分频、小数分频等等,通常一些数字系统设计中,系统不仅对信号频率有要求严格,而且对占空比也有严格的要求。整数分频器的实现比较简单,可以采用标准的计数器或可编程逻辑器件得以设计实现。但0.5倍整数分频和等占空比的奇数分频实现起来就比较困难,小数分频和分数分频就更加困难难。计数器构成的分频器,大多只能实现整数分频,或者只能实现半整数分频和奇数分频。而实现小数分频的多数是专用分频器,针对这一问题,本人首先设计了各种数值的分频器,然后增加一个控制模块,用拔码开关选择分频类型,即由拨码的二进制数确定是偶数分频、奇数分频、小数分频还是分数分频。各种数值分频器由控制模块决定其分频的工作状态,最后综合起来成为通用分频器。根据分频器分频原理,摸索出了一种简单的设计方法,设计了任意数值分频器。

1 偶数分频器的设计

偶数分频最易于实现,可以利用计数器实现。假设要设计M=2N的偶数分频,当计数值计数到0到K-1时(K用于调节占空比),输出的电平为1,计数器的计数值K到2N-1时,输出的状态为0。计数器计数到2N-1时计数器复位为0。如此循环下去,便可实现占空比为K/2N偶数分频,这里M和K都是可调整的预置数,K调整占空比,M调节分频系数。图1中M取值是6实现的是6分频。即输出时钟频率是输入时钟频率的1/6。从图1的仿真结果可以看出k=3=m/2,输出时钟占空比为50%。

 

 

2 奇数分频器的设计

想要实现非50%占空比的奇数分频,比如实现占空比为20%(1/5)、40%(2/5)、60%(3/5)、80%(4/5)的分频器,我们可以采用类似于偶数分频的方案就可以实现。但如果要实现占空比为50%的奇数分频,就不能用偶数分频中所采用的方案了。占空比50%奇数分频实现起来会比较麻烦一点,这是因为计数值为奇数,前半个和后半个周期所包含的不是整数个输入时钟脉冲clkin的周期。实现的方法很多,这里介绍一种占用资源少的方法。例如对时钟脉冲CLKIN进行5分频,前半个周期包含2.5个clkin周期,后半个周期包含2.5个clkin周期。需要定义两个计数器,CNT1和CNT2,分别对输入时钟的上升沿和下降沿进行计数,当计数值为0~((n/2)-1)时,输出时钟信号进行翻转,同时给计数器一个时钟复位信号,下一个时钟的上升沿到来时,计数器重新开始计数,如此循环即可。计数器CNT1和CNT2计数方法完全一样,只是翻转边沿不同。然后把这两个计数值输入一个组合逻辑作或运算,CLKOUT=CNT1+CNT2。图2是CLKIN的5分频。

 

 

推广为一般方法:欲实现占空比为50%的2N+1分频器,则需要对分频时钟上升和下降沿分别进行1/(2N+1)分频,然后将两个分频所得的时钟信号作或运算便可得到占空比为50%的2N+1分频器。

3 小数分频器的设计

实现小数分频器的方法很多,但其原理都基本一样,即通过可变分频和多次平均的方法得到。本设计采用双模前置小数分频的方法设计。假设要进行m、n分频(m、n都是整数,且n<10),因为只有一位小数,所以总共要进行10次分频,总的规律是进行n次m+1分频,10-n次m分频。假设要进行k.mn分频(k、m、n都是整数且m、n<10),由于小数是2位,所以总共要进行100次分频,分频的规律是进行mn次k+1分频,100-mn次K分频。也就是说不管是几位小数总要进行两种系数的分频,两种分频究竟如何交叉进行,可以根据一定的规律计算出来,下面以2.7分频为例进行讲解。由上面的分析知道2.7分频要进行7次3分频,3次2分频。总分频值为:(7×3+3×2)/(7+3)=2.7,将小数部分7按倍累加,假设累加的值为A,如果A<10则进行2分频,A<10的话下一次则加上7,此后,如果A≥10则进行3分频,3分频过后再将累加值减去3后与10比较以决定下一次分频是7分频还是2分频,计算过程见表1。图3是2.7小数分频仿真波形。小数分频器部分VHDL核心代码如下:

 

 

 

 

 

 

4 分数分频器设计

分数分频器设计与小数分频器的设计思想相似,假设进行分频,总分频次数是m决定的,分频规律是:进行n次k+1分频和m-n次k分频。两种分频交替进行,计算方法也和小数分频相似,是进行k分频还是k+1分频,要看累计值是大于分母还是小于分母。分频计算过程见表2,只要在13次分频中,进行7次3分频,6次2分频就可以的到,总分频值为(7×3+6×2)/(7+6)=33/13。为了两种分频均匀,将分子累加,小于分母进行2分频,大于等于分母作3分频。表2是 的分频规律。图4是33/13分频器仿真波形。

 

 

 

5 多数值分频器的实现

将上述各模块整合在一起,需要增加一个控制模块,这样就构成了多数值分频器。顶层原理图见图5。

 

 

当B=00时,实现整数分频,当B=01时实现占空比50菰的奇数分频,B=10时实现小数分频,B=11时实现分数分频。其中M、K控制整数分频的分频系数以及占空比。小数分频时M、N分别调整整数部分和小数部分。分数分频时K调整整数部分,M,N调整分母和分子值,虽然预置端口较多,但可调整性很好。

6 结束语

文中给出了基于FPGA的多数值分频器的设计方法,设计采用自顶而下的设计方法,进行功能模块的划分,该分频器可以实现偶数、奇数、小数、分数的分频,有良好的可移值性,本设计选用EP2C5Q208C型FPGA芯片实现,从综合配置后的配置报告可以看出,本分频器占用FPGA资源很小。仿真结果和硬件测试结果验证了这个设计的有效性。对相关人员有一定的参考价值。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在数字化浪潮席卷全球的今天,FPGA技术正成为驱动创新的核心引擎。2025年8月21日,深圳将迎来一场聚焦FPGA技术与产业应用的盛会——2025安路科技FPGA技术沙龙。本次沙龙以“定制未来 共建生态”为主题,汇聚行业...

关键字: FPGA 核心板 开发板

在现代电子系统中,现场可编程门阵列(FPGA)凭借其开发时间短、成本效益高以及灵活的现场重配置与升级等诸多优点,被广泛应用于各种产品领域。从通信设备到工业控制,从汽车电子到航空航天,FPGA 的身影无处不在。为了充分发挥...

关键字: 可编程门阵列 FPGA 数字电源

2025年8月4日 – 提供超丰富半导体和电子元器件™的业界知名新品引入 (NPI) 代理商贸泽电子 (Mouser Electronics) 即日起开售Altera®的Agilex™ 3 FPGA C系列开发套件。此开...

关键字: FPGA 边缘计算 嵌入式应用

内窥镜泛指经自然腔道或人工孔道进入体内,并对体内器官或结构进行直接观察和对疾病进行诊断的医疗设备,一般由光学镜头、冷光源、光导纤维、图像传感器以及机械装置等构成。文章介绍了一款基于两片图像传感器和FPGA组成的微型3D内...

关键字: 微创 3D内窥镜 OV6946 FPGA

运用单片机和FPGA芯片作为主控制器件 , 单片机接收从PC机上传过来的显示内容和显示控制命令 , 通过命令解释和数据转换 , 生成LED显示屏所需要的数据信号和同步的控制信号— 数据、时钟、行同步和面同步 。FPGA芯...

关键字: 单片机 FPGA LED显示屏

在异构计算系统中,ARM与FPGA的协同工作已成为高性能计算的关键架构。本文基于FSPI(Fast Serial Peripheral Interface)四线模式,在150MHz时钟频率下实现10.5MB/s的可靠数据...

关键字: ARM FPGA FSPI

在全球FPGA市场被Xilinx(AMD)与Intel垄断的格局下,国产FPGA厂商高云半导体通过构建自主IP核生态与智能时序约束引擎,走出差异化高端化路径。本文深入解析高云半导体FPGA工具链的两大核心技术——全栈IP...

关键字: FPGA 高云半导体

2025年6月12日,由安路科技主办的2025 FPGA技术沙龙在南京正式召开,深圳市米尔电子有限公司(简称:米尔电子)作为国产FPGA的代表企业出席此次活动。米尔电子发表演讲,并展出米尔基于安路飞龙派的核心板和解决方案...

关键字: FPGA 核心板 开发板

高 I/O、低功耗及先进的安全功能,适用于成本敏感型边缘应用

关键字: FPGA I/O 机器视觉

本文讨论如何为特定应用选择合适的温度传感器。我们将介绍不同类型的温度传感器及其优缺点。最后,我们将探讨远程和本地检测技术的最新进展如何推动科技进步,从而创造出更多更先进的温度传感器。

关键字: 温度传感器 CPU FPGA
关闭