1 引言
CPLD(ComplexprogrammableLogicDevice,复杂可编程逻辑器件)和FPGA(FieldprogrammableGatesArray,现场可编程门阵列)都是可编程逻辑器件,它们是在PAL、GAL等逻辑器件基础上发展起来的。同以往的PAL、GAL相比,FPGA/CPLD的规模比较大,适合于时序、组合等逻辑电路的应用。它可以替代几十甚至上百块通用IC芯片。这种芯片具有可编程和实现方案容易改动等特点。由于芯片内部硬件连接关系的描述可以存放在磁盘、ROM、PROM、或EPROM中,因而在可编程门阵列芯片及外围电路保持不动的情况下,换一块EPROM芯片,就能实现一种新的功能。它具有设计开发周期短、设计制造成本低、开发工具先进、标准产品无需测试、质量稳定以及实时在检验等优点,因此,可广泛应用于产品的原理设计和产品生产之中。几乎所有应用门阵列、PLD和中小规模通用数字集成电路的场合均可应用FPGA和CPLD器件。
在现代电子系统中,数字系统所占的比例越来越大。系统发展的越势是数字化和集成化,而CPLD/FPGA作为可编程ASIC(专用集成电路)器件,它将在数字逻辑系统中发挥越来越重要的作用。
在数字逻辑电路设计中,分频器是一种基本电路。通常用来对某个给定频率进行分频,以得到所需的频率。整数分频器的实现非常简单,可采用标准的计数器,也可以采用可编程逻辑器件设计实现。但在某些场合下,时钟源与所需的频率不成整数倍关系,此时可采用小数分频器进行分频。比如:分频系数为2.5、3.5、7.5等半整数分频器。笔者在模拟设计频率计脉冲信号时,就用了半整数分频器这样的电路。由于时钟源信号为50MHz,而电路中需要产生一个20MHz的时钟信号,其分频比为2.5,因此整数分频将不能胜任。为了解决这一问题,笔者利用VIDL硬件描述语言和原理图输入方式,通过MAX+plusII开发软件和ALTERA公司的FLEX系列EPF10K10LC84-4型FPGA方便地完成了半整数分频器电路的设计。
2 小数分频的基本原理
小数分频的基本原理是采用脉冲吞吐计数器和锁相环技术先设计两个不同分频比的整数分频器,然后通过控制单位时间内两种分频比出现的不同次数来获得所需要的小数分频值。如设计一个分频系数为10.1的分频器时,可以将分频器设计成9次10分频,1次11分频,这样总的分频值为:
F=(9×10+1×11)/(9+1)=10.1
从这种实现方法的特点可以看出,由于分频器的分频值不断改变,因此分频后得到的信号抖动较大。当分频系数为N-0.5(N为整数)时,可控制扣除脉冲的时间,以使输出成为一个稳定的脉冲频率,而不是一次N分频,一次N-1分频。
图2模3计数器仿真波形
3 电路组成
分频系数为N-0.5的分频器电路可由一个异或门、一个模N计数器和一个二分频器组成。在实现时,模N计数器可设计成带预置的计数器,这样可以实现任意分频系数为N-0.5的分频器。图1给出了通用半整数分频器的电路组成。
采用VHDL硬件描述语言,可实现任意模N的计数器(其工作频率可以达到160MHz以上),并可产生模N逻辑电路。之后,用原理图输入方式将模N逻辑电路、异或门和D触发器连接起来,便可实现半整数(N-0.5)分频器以及(2N-1)的分频。[page]
4 半整数分频器设计
现通过设计一个分频系数为2.5的分频器给出用FPGA设计半整数分频器的一般方法。该2.5分频器由模3计数器、异或门和D触发器组成。
图3 2.5分频器电路原理图
4.1 模3计数器
该计数器可产生一个分频系数为3的分频器,并产生一个默认的逻辑符号COUNTER3。其输入端口为RESET、EN和CLK;输出端口为QA和QB。下面给出模3计数器VHDL描述代码:
任意模数的计数器与模3计数器的描述结构完全相同,所不同的仅仅是计数器的状态数。上面的程序经编译、时序模拟后,在MAX+PLUSII可得到如图2所示的仿真波形。[page]
4.2 完整的电路及波形仿真
将COUNTER3、异或门和D触发器通过图3所示的电路逻辑连接关系,并用原理图输入方式调入图形编辑器,然后经逻辑综合即可得到如图4所示的仿真波形。由图中outclk与inclk的波形可以看出,outclk会在inclk每隔2.5个周期处产生一个上升沿,从而实现分频系数为2.5的分频器。设inclk为50MHz,则outclk为20MHz。因此可见,该电路不仅可得到分频系数为2.5的分频器(outclk),而且还可得到分频系数为5的分频器(Q1)。
5 结束语
选用ALTERA公司FLEX系列EPF10K10LC84-4型FPGA器件实现半整数分频后,经逻辑综合后的适配分析结果如表1所列。本例中的计数器为2位宽的位矢量,即分频系数为4以内的半整数值。若分频系数大于4,则需增大count的位宽。
表1半整数分频器适配分析结果
关键字:CPLD FPGA 半整数分频器
引用地址:
基于CPLD/FPGA的半整数分频器的设计实例
推荐阅读最新更新时间:2024-05-02 21:24
利用搭载全域硬2D NoC的FPGA器件去完美实现智能化所需的高带宽低延迟计算
随着大模型、高性能计算、量化交易和自动驾驶等大数据量和低延迟计算场景不断涌现,加速数据处理的需求日益增长,对计算器件和硬件平台提出的要求也越来越高。发挥核心器件内部每一个计算单元的作用,以更大带宽连接内外部存储和周边计算以及网络资源,已经成为智能化技术的一个重要趋势。这使得片上网络(Network-on-Chip)这项已被提及多年,但工程上却不容易实现的技术再次受到关注。 作为一种被广泛使用的硬件处理加速器,FPGA可以加速联网、运算和存储,其优点包括计算速度与ASIC相仿,也具备了高度的灵活性,能够为数据中心与边缘计算提供理想的数据处理加速;除此之外,FPGA还在传感器融合和输入数据流整理汇流等领域发挥关键作用,是智能化应用
[嵌入式]
自适应算术编码的FPGA实现
摘要:在简单介绍算术编码和自适应算术编码的基础上,介绍了利用FPGA器件并通过VHDL语言描述实现自适应算术编码的过程。整个编码系统在LTERA公司的MAX+plus Ⅱ软件上进行了编译仿真,测试结果表明:编码器各个模块的设计在速度和资源利用两方面均达到了较优的状态,可以满足实时编码的要求。
关键词:算术编码 自适应 FPGA VHDL 仿真
算术编码是一种无失真的编码方法,能有效地压缩信源冗余度,属于熵编码的一种。算术编码的一个重要特点就是可以按分数比特逼信信源熵,突破了Haffman编码每个符号只不过能按整数个比特逼近信源熵的限制。对信源进行算术编码,往往需要两个过程,第一个过程是建立信源概率表,第二个过程是对信源发出的
[应用]
精心总结单片机、PSOC、FPGA三者的主要区别
PSoC 相当于MCU+可编程模拟外围电路+可编程数字外围电路。 FPGA是可编程数字外围电路。 现在的 单片机 一般是mcu+有限的固定的模拟或数字外围 PSoC 的最大特点就是集成度高,设计灵活。可以看成是MCU,FPGA/CPLD,ispPAC集合。 1.它里面包含MCU(psoc1为m8c,psoc3为51,psoc5为arm Cortex-M3),这是和你讲的那几种是有区别的。它可以很方便的实现系统设计,虽然fpga可以通过设计实现软核,但增加了设计难度,性能也达不到硬核的程度。 2.PSoC还包含可编程数字模块(类似FPGA/CPLD),以及可编程模拟模块(类似ispPAC),即具有处理数字和模拟两种信号的能力,此外,
[电源管理]
基于STD总线的多路数字I/O设计
在工业控制领域,数字I/O以其简单、灵活的特性,得到了广泛的应用。以往对于数字I/O的应用和数量增加的方法通常用GAL和专用I/O芯片采用译码扩展等方式来实现,这种方式尽管能够满足一定程度上的要求,但对于更大数量的I/O应用,比如几十甚至上百路的数字I/O,就勉为其难了。为了满足这种要求,并且进一步提高数字I/O的使用效率,专门针对多路数字I/O进行了基于STD总线的设计,应用Xilinx公司的CPLD进行编程开发,实现了64位数字输入DIN 0~DIN 31和64位数字输出DOUT O~DOUT 31,同时每一路I/O可以独立编程,既可以作为输入又可以作为输出。 1 STD总线 目前,STD标准总线已成为工业控制领域内最
[工业控制]
使用Virtex-5 FPGA实现LTE仿真器
功能强大的可编程逻辑平台使得Prisma Engineering公司能够针对所有蜂窝网络提供可重配置无线测试设备。长期演进(LTE)是移动宽带的最3GPP标准,它打破了现有蜂窝网络的固有模式。LTE与前代UMTS和GSM标准相比,除采用高频谱效率的射频技术外,其架构还得到了大幅简化。LTE系统的无线接入部分Node-B,是连接无线电和整个互联网协议核心网络之间的边缘设备。这种架构无法监测和测试等效于UMTS中间链路上的元件。必须通过无线电接口,才能有效地测试LTE网络元件。 这正是Prisma Engineering公司线路服务器单元(LSU)UeSIM LTE项目的设计组要解决的问题。该仿真器是针对所有LTE测试需求的
[嵌入式]
享誉业界学界的2022年SuperComputing(SC22)又要来了
享誉业界学界的2022年SuperComputing(SC22)又要来了,基于FPGA的硬件数据处理加速器值得关注 11月13-18日,全球极具影响力的高性能计算专业会议“International Conference on High-performance Computing, Networking, Storage and Analysis (SC22)” 将在美国德克萨斯州达拉斯市Kay Bailey Hutchison Convention Center举办。 随着大数据、人工智能、异构计算和计算存储等新技术的兴起,该活动已从传统的高性能计算转向更广阔的领域,因而继续保持着业界最具影响力活动之一的地位。 由IE
[嵌入式]
采用CPLD来替代微处理器的6种方法
随着低功耗CPLD的出现,低功耗电子产品设计人员现在有新的选择来实现以前由微控制器完成的多种功能。本白皮书讨论什么时候适合采用CPLD替代微控制器,什么时候可以采用CPLD作为微控制器的辅助器件。 引言 如果告诉便携式电子设计人员有一种低功耗数字器件能使他们利用软件程序来重新配置硬件工作,他们中的十个会有九个认为这是某种微控制器。这是可以理解的。丰富的特性和封装、大量的软件开发工具,以及庞大的应用代码库,无处不在的微控制器几乎能够用在所有便携式应用中。然而,随着低功耗CPLD的出现,设计人员有了新的选择来实现以前由微控制器完成的功能。 本白皮书讨论什么时候适合采用CPLD来替代微控制器,什么时候可以采用CP
[嵌入式]
用CPLD实现单片机与ISA总线并行通信
摘要: 用ALTERA公司MAX7000系列CPLD芯片实现单片机与PC104 ISA总线接口之间的并行通信,给出系统设计方法及程序源代码。包括通信软件和AHDL设计部分。
关键词: CPLD ISA总线 并行通信
CPLD(Complex Programmable Logic Device)是一种复杂的用户可编程逻辑器件,由于采用连续连接结构。这种结构易于预测延时,从而电路仿真更加准确。CPLD是标准的大规模集成电路产品,可用于各种数字逻辑系统的设计。近年来,由于采用先进的集成工艺和大批量生产,CPLD器件成本不断下降,集成密度、速度和性能大幅度提高,一个芯片就可以实现一个复杂的数字电
[应用]