当前位置:首页 > 工业控制 > 电子设计自动化

摘 要:一种通用的基于CPLD的片内振荡器的设计方法,其振荡频率能在一定范围内调整。本设计使基于CPLD的片上系统设计无需外部时钟源,加大了系统的集成度并降低了设计成本。
关键词:片内振荡器 复杂可编程逻辑器件 片上系统

在绝大部分数字系统设计中,时钟是不可或缺的部分,通常采用外接有源或者无源振荡器来提供时钟信号。外接时钟的优点是性能稳定,设计简便;缺点是会增加电路板面积,而且高频设计时对电路板布线和加工的要求比较严格,可能增加系统成本和设计难度。基于可编程逻辑器件FPGA/CPLD的设计提供了另外一种选择,即采用片内的可编程资源实现振荡器功能。这种设计可以将振荡部分同时集成到FPGA/CPLD中,减少了外部资源的使用。
环形振荡器是最简单的振荡器设计方法,在分立器件和专用集成电路(ASIC)设计中一直受到关注[1,2,3]。但是在这类设计中,振荡频率随电压变化的特性使其应用受到限制,所以要在工艺或电路设计方面考虑振荡频率的稳定问题[2][3]。随着电路制造技术的发展,稳压电路已经物美价廉;另外,FPGA/CPLD厂商为用户在片内预设了一些特定模块,为振荡器的片内实现提供了方便。如Altera公司的MaxII系列CPLD芯片,允许用户通过软件Quartus II的MegaWizard Plug-in Manager功能来调用系统提供的参数化模块库(LPM)。其中的IO/MAXII Oscillator[4]模块即是一个能在芯片内部实现片内振荡器的软核,其工作频率范围为3.33MHz~5.56MHz,用户不可以调整工作频率。在做仿真应用时,可选择3.33或5.56MHz;在实际应用中,会自动给出3.33~5.56MHz范围内的振荡频率。该片上振荡器模块只能下载在MaxII系列芯片内的用户闪存存储器(UFM)上,振荡输出可以驱动芯片引脚和内部逻辑,该UFM资源一旦作为振荡器使用,便不能再实现并联接口(PIO)、串连接口(SPI)和IIC接口等其他功能。
本文介绍一种通用的基于CPLD的片内振荡器设计方法,它基于环形振荡器原理,只占用片上普通逻辑资源(LE),无需使用专用逻辑资源(如MaxII中的UFM),从而提高了芯片的资源利用率;振荡频率可在一定范围内调整,振荡输出可以驱动内部逻辑和外部器件引脚。本设计有较大的通用性,可方便地在不同CPLD器件间移植,使一些基于CPLD的片上系统(SoC)设计无需使用外部时钟信号源,从而降低设计成本和难度,增加系统集成度。通过在Altera公司的MAX7000系列EMP7128LC84-15芯片上的实验说明实现的方法。实验实现的频率范围在8MHz~62MHz。仿真和硬件测试结果表明了该设计方法的正确性和可行性。
1 基于CPLD的片内环形振荡器
环形振荡器原理如图1所示。由奇数个非门组成的环形非门级联串使电路处于无稳定状态,静态下任何一个非门的输入和输出都不可能稳定在高电平或低电平,而只能处于周而复始的高低电平转换状态,从而产生自激振荡[5]。振荡周期为T=2Ntpd,其中N是非门的个数,tpd是每个非门的传输延迟时间,改变电路中非门的数量可以改变电路的振荡频率。
图1所示的环形振荡器即使采用电路原理图输入,经电子设计自动化(EDA)软件综合后,也得不到对应的电路结构。实际上,EDA综合工具不是从电路结构出发,而是从电路输入和输出的逻辑关系出发给出综合结果,所以,奇数个非门的级联将被综合为一个非门,而偶数个非门的级联被综合为一个缓冲或一条联线。为能在CPLD器件中实现图1的环形振荡器结构,本文将图1中单端口输入元件改成二端口输入元件,即用二输入与非门代替图1的第一个非门,其余偶数个非门则用二输入与门代替,二端口元件的一个输入端口连接上级输出,另一输入端口作为控制端引出。振荡器正常工作时控制端全部置高电平。采用Synplify Pro 7.7综合后的原理图如图2所示。该电路完全可实现图1的功能。


为了保证正反馈,图1结构的非门级联必须是奇数个。图2中的与非门起到反相作用,其他与门则起延时缓冲的作用。可以通过改变门的数量以及选择门的种类(与门、与非门等)改变osc输出端的振荡频率,而不受“奇数”个门的限制,只要保障第一个门得到正反馈就可以产生振荡。而图1的结构必须改变偶数个非门才能达到改变振荡频率的目的,因而图2结构在CPLD芯片中实现时可以节省逻辑资源。控制端oscena[n-1,0]为振荡使能控制端,置高电平时,与非门的输入和输出在缓冲级联链的反馈作用下产生自激振荡,振荡器正常工作;控制端的任意一位置零使振荡器停振。所以oscena既可单独使用,也可互联后作为一个端使用。实验证明,图2结构能够保证门延时的等间隔特性。


2 CPLD片内振荡器的实现和优化
2.1 CPLD片内振荡器的实现
基于上述方法的片内环形振荡器设计有很大的通用性,可在不同CPLD芯片间方便地移植。本文以Altera公司的MAX7000S系列CPLD芯片的实现和测试为例说明。MAX7000S系列基于先进的多矩阵构架设计,采用CMOS工艺制造,容量高达256个逻辑单元LE(Logic Element),每16个宏单元组成一个逻辑阵列块LAB(Logic Array Block),速度达3.5ns的管脚到管脚延时,同时支持多种I/O电压标准。
从EDA软件综合后的报告可以看出,图2所示电路中每个门占用了一个逻辑单元。也就是说,电路内LE的延时将作为门的延时tpd,而且需要将振荡使能端引出到I/O引脚,当所实现振荡频率较低时,需要较多的门电路单元,这将占用一定的逻辑和引脚资源,从而降低芯片资源的利用率,所以在低频情况下使用时,要综合考虑系统需要的振荡频率,尽量用较少的门电路实现环形振荡器,以提供较高振荡频率,再设计分频电路以取得合适的振荡频率,从而提高芯片的资源利用率。综合器的这一处理,从客观上保证了设计者可以选择不同的门来实现图2的结构,仍然可以保证振荡间隔的一致性。实验也证实了这个结果。
2.2 电源电压的影响
电压会影响振荡电路的工作频率[6],电压增大会导致电路振荡频率增加,反之振荡频率减小。CPLD芯片一般有两个相对独立的供电端口,即核心电压(VCCINT)和引脚电压(VCCIO)。其中核心电压给芯片内部可编程逻辑电路资源提供电源,引脚电压为芯片的I/O引脚提供电源,以适应各种输出标准(如LVCOMOS、LVTTL、SSTL-2、SSTL-3等)。对振荡频率有影响的是CPLD芯片的核心电压,对此电压应采取稳压措施,稳压措施要视不同的应用要求而定。最简单的措施是采用高性能的稳压芯片给CPLD芯片分别提供两部分电压。随着半导体技术的发展,简单而廉价的稳压芯片已具有较高的性能,如National公司的LM2678系列芯片[7]在有效输入变化范围内,稳压输出误差在±2%以内。
2.3 CPLD片内振荡器优化
通过EDA软件对设计做优化有可能提高所设计的振荡器的性能,减少对CPLD片内资源的占用。当采用MAX+plusII10.2软件设计时,软件优化开关设置为:(1)本设计选用MAX系列芯片,故选择对该芯片的多层综合选项(Multi-Level Synthesis for Max5000/7000/9000Device)。(2)在面积和速度优化选项中,选择对面积的优化,使振荡器部分尽可能分配到同一个LAB中。(3)打开“Slow Slew Rate”以降低开关噪声,打开“XOR Synthesis”以减少芯片面积的占用。
3 电路仿真及测试结果
本文以Altera公司的MAX+plus II 10.2为设计工具,在MAX7000S系列芯片上实现并测试。图3为选用EMP7128LC84-15芯片的时序仿真结果。其中 p0~p7分别为环形振荡电路中单个门之后的电路节点;oscena[7...0]为各延时门电路的控制端(即所有二输入门中多余的输入端)。


表1列出了以EPM7128LC84-15为目标芯片、采用Tektronic TDS2012示波器对用不同门数实现的片内振荡器的测试数据。F1和F2分别表示片内振荡器输出和二分频输出的测量数据。图4给出了测量数据的曲线。


表1数据表明,通过增加门电路的数量可以有规律地减小振荡电路的工作频率,由每个逻辑单元实现的门电路单元延时tpd在7.5~10ns之间。


本文介绍的基于CPLD的片内振荡器设计方法,在改变该振荡器电路中门电路数量时,可以有规律地将振荡频率控制在8MHz~62MHz范围内。振荡器的片内设计使基于CPLD的片上系统(SoC)设计无需外接时钟信号源,加大了系统的集成度并降低了设计成本。本方法有很大的通用性,可以方便地在不同CPLD芯片间移植。仿真和测试数据表明该设计方法具有正确性和可行性。
参考文献
[1] 高永红,徐婕.一种实用的电压控制环形振荡器.微电子技术,2002,30(6):41-42.
[2] 徐志伟,郑增钰.一种结构新颖的压控环形振荡器.微电子学,2000,30(3):193-194.
[3] 胡二虎,汪东旭.一种频率稳定的集成CMOS环形振荡器.微电子学,2003,33(3):259-260.
[4] Alter Corporation.Max II Device Handbook.www.altera.com.cn,2005
[5] 清华大学电子学教研组.数字电子技术基础(第四版).北京:高等教育出版社,1998.
[6] 王博,郭林.CMOS环形振荡器的噪声分析.微电子学,2003,33(3):221-223.
[7] National Semiconductor.LM2678 Simple Switcher High Efficiency 5A Step-down Voltage Regulator Specification.www.national.com,1998.

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

Holtek 新推出 BS45F2345 Touch A/D Flash MCU,特点内建高精准度振荡器、精准的 ADC 参考电压、8 路触控按键及支持SLCD 功能。其中触控可通过 CS (Conductive Sus...

关键字: MCU 电磁炉 振荡器

晶振,即晶体振荡器,是许多电子设备中的关键元件,为电路提供稳定的时钟信号。当晶振出现故障或损坏时,会对电子设备的性能产生影响。本文将详细讨论晶振坏了的现象。

关键字: 晶振 振荡器 电子设备

晶振,即晶体振荡器,是一种利用晶体物理特性制作的电子元件,它在现代电子设备中发挥着重要的作用。本文将详细介绍晶振的作用和原理。

关键字: 晶振 振荡器 电子元件

晶振,也称为晶体振荡器,是一种基于晶体振荡原理的电子元件。晶振在许多电子设备中都扮演着关键的角色,提供稳定的计时基准。然而,有时晶振可能会损坏或性能下降,这就需要我们进行测量以确定其好坏。本文将详细介绍如何测量晶振的好坏...

关键字: 晶振 振荡器 电子元件

晶体振荡器是一种使用逆压电效应的电子振荡器电路,即当电场施加在某些材料上时,它会产生机械变形。因此,它利用压电材料的振动晶体的机械共振来产生具有非常精确频率的电信号。

关键字: 晶振电路 逆压电效应 振荡器

振荡器是电子工程和物理学中的一个重要概念,是指能够产生一定频率和波形的信号源。振荡器是无线电通信、电视、雷达、微波通信、频率计数器等电子设备中必不可少的组成部分。本文将介绍振荡器的定义、分类及其应用。

关键字: 振荡器 信号源。

石英晶体振荡器是一种基于石英晶体的电子元件,它在许多电子设备中起着关键的作用。本文将介绍石英晶体振荡器的电气符号、工作原理以及其在电子设备中的作用。

关键字: 振荡器 石英晶体振荡器 石英晶体

为增进大家对晶振的认识,本文将对晶振被烧坏的两类情况以及晶振常见问题解决方案予以介绍。

关键字: 晶振 指数 振荡器

2022年7月8日,香港晶体有限公司(下称“香港晶体”)与世强先进(深圳)科技股份有限公司(下称“世强先进”)签署代理协议,授权世强先进代理其旗下MHz晶振、KHz晶振、振荡器(XO)、温度补偿型振荡器(TCXO)、高保...

关键字: 世强 振荡器 KHz晶振

我们首先定义表征频率产生器件性能通常使用的判据。选择流程一般从最基本的判据开始,那就是输出频率范围。为了生成整个频谱范围内的频率,人们设计了各种各样的器件,支持从单音到跨越多个倍频程的频率。然而,当根据输出频率选择器件时...

关键字: ADI 频率 振荡器
关闭
关闭