tag 标签: pll

相关帖子
相关博文
  • 热度 6
    2024-4-20 11:13
    1292 次阅读|
    1 个评论
    基于FPGA的TDC设计中使用PLL来模拟HIT
    基于FPGA的TDC设计中使用PLL来模拟HIT 概述 在进行基于FPGA的TDC设计时,为了测试方便,一般通过PLL来模拟外部“HIT”,这是进行码密度测试基本操作。通常的做法是需要FPGA片外提供两个非同源的时钟,一个用于系统时钟以及TDC的高速锁存时钟,另外一个用于产生模拟HIT。假如使用片内的PLL,那么就没必要这么麻烦了。 读本文之前,还可以参考之前博客 : https://mbb.eet-china.com/blog/1010859-213148.html , https://mbb.eet-china.com/blog/1010859-213159.html 乘除因子的真相 图1:PLL框图 如图1所示为PLL的内部结构框图,那么所谓的PLL的乘除因子与内部的这些counter的关系如下所示: FREF = FIN / N FVCO = FREF × M = FIN × M/N FOUT = FVCO / C = (FREF × M) / C = (FIN × M) / (N × C) 其实我们在讲乘除因子的时候必须搞清楚PLL的几个counter,即M、N以及C计数器。首先我们可以确定的是Megawizard里“Clock multiplication factor”就等于M计数器的值,而“Clock division factor”等于N计数器的值乘以C计数器的值,这些可以从上述公式里找到答案。 在进行PLL输出时钟设置的时候,Megawizard一般不提供,且ALTERA也不建议客户直接去设置M、N以及C计数器,而是通过设置乘除因子来设置PLL,编译器会自动设置这些计数器的值。只有高级应用,即高级用户可以通过特殊方式来设置M、N以及C计数器来配置PLL。另外,应用ECO工具手动修改FPGA设计的时候也可以修改这些计数器以及其他参数。 一个TDC模拟HIT设计实例 有篇参考论文上提到过一个利用FPGA的PLL产生HITs的例子,其中有两个问题一直没弄明白。最近几天通过不断的做实验终于搞清楚了问题,特总结一篇记录与此以备后查。 整个例子如图2所示,外部给FPGA一个100MHz的时钟,第一个PLL由100MHz产生一个387.5MHz的TDC时钟。第二个PLL产生一个33.68MHz的HIT时钟。我所说的问题,第一是为什么20MHz时钟要从FPGA外面兜一圈;第二是作者给出两个PLL的输出时钟之间的相位关系有256种组合,而没有直接给出原因。 图2:关联校准脉冲发生器 首先谈第一个问题,由于作者没有给出其具体使用的器件型号,所以这里我猜测这个20MHz在FPGA外部兜一圈的原因也许是因为作者使用的器件的PLL不支持逻辑时钟作为其输入,而必须是从FPGA引脚来的时钟才能作为PLL的输入,而ALTERA早期的Cyclone系列就有此限制。另外,早期的ALTERA器件也不支持PLL级联,所以也没有从第一个PLL产生一个20MHz来驱动第二个PLL。还有就是《PLL那些事之乘除因子》一文中有提到PLL的输出受限于PLL的FVCO,所以第一个PLL输出一个387.5MHz时钟后,无法再输出33.68MHz或者20MHz。否则,图2完全可以只用一个PLL产生387.5MHz和33.68MHz这两个时钟。 接着谈第二个问题,即387.5MHz和33.68MHz这两个时钟之间为何相位关系就有256种组合呢?分别用CLKH和CLKL来代替387.5MHz和33.68MHz这两个时钟。根据图2,可以得到CLKH=100*,而CLKL=100**。因此将第二个等式代入第一个等式我们得到CLKH=CLKL*5**=CLKL*,反过来也就是2945*TH=256*TL,也即是说低速时钟和高速时钟有256种不同的相位关系组合,因为每256个时钟周期低速时钟和高速时钟关系重复一次。所以,图2所示的使用PLL在FPGA内部产生TDC的模拟HIT输入是可行的。图2所示的这些256种可能的脉冲平均分布在2580ps范围内,那么每两个相邻脉冲的时间间隔就是10.08ps,这个值可以通过求n*29687.5和2580的模来得到(29687.5ps是33.68MHz时钟的周期)。图2还显示了一种增加HIT和TDC时钟之间的时间关系可能性的办法,即通过相移90度得到另外一个33.68MHz时钟,这样模拟的HIT多出一倍,同理,通过改变相移可以继续增加HIT的种类。 改进型模拟HIT 图2所示的模拟HIT产生电路相对比较复杂,原因前面提到了,是由于器件本身限制造成的。笔者自己使用的ArriaGX系列FPGA,该系列FPGA的PLL支持片内级联。也可以通过一个PLL同时产生TDC时钟和模拟HIT时钟。实际应用的时候还是用到了PLL级联,这是因为产生TDC时钟的PLL在产生TDC时钟的时候其FVCO频率已经被确定下来,所以在现有FVCO频率下是否能产生合适的用以模拟HIT的时钟还需认真考虑。 笔者实际使用的TDC时钟是250MHz,那么就需要另外一个PLL产生一个低速时钟,并且相位关系越复杂越好(即相关性越差越好)。为了验证上述分析,笔者作了三个实验,这三个实验分别用PLL产生了三个与250MHz时钟不同相位关系的模拟HIT时钟,实验的结果分别如图3、图4和图5所示。 图3:模拟HIT时钟和TDC时钟有10种相位关系 图4:模拟HIT时钟和TDC时钟有19种相位关系 图5:模拟HIT时钟和TDC时钟有205种相位关系 图3可以明显看出实际测量的结果模拟的HIT和TDC时钟确实只有10种相位关系(不考虑时钟的skew和jitter),而图4虽然看不出19种相位关系,但是时钟的skew,jitter以及延时链的非线性特性,某些相位的HIT很有可能已经重合而连在了一起,但是从数据上还是可以明显分辨出13组独立的数据,那些长连续的数据可以被高度怀疑为两个相邻相位拼接在一起了。图5的测试结果和实际使用随机(random)HIT所得到的测试结果基本相同,如图6所示。 图6:随机HIT测试结果
  • 热度 20
    2016-4-16 12:40
    1154 次阅读|
    0 个评论
    此次笔记记录的是  FPGA 片内时钟管理单元 PLL,该单元可以实现系统时钟的分频、 倍频,是 FPGA 设计开发必备组件之一                  在 FPGA 系统设计中,几乎所有地方都可以用到 PLL ,也有些地方是非用到 PLL 不可。           在某些对系统时钟频率没有固定要求的系统中,外部晶振输入的时钟可以直接作为逻辑驱动时钟,也可以通过 PLL 将该时钟进行降频,以得到较低的工作时钟,在不影响系统功能实现的前提下降低系统功耗。           另外一些应用,则必须在指定频率的时钟信号下才能正常工作,常见于通信协议类应用,如以太网、 USB 、 PCIE 等等,在这些应用中,必须使用指定频率的时钟信号,如果没有刚好满足条件的外部时钟源,则必须通过片内 PLL 生成相应的时钟信号来进行驱动。在某些实时性要求较高的应用中,如数字信号处理,图像处理等等,提高系统工作时钟能够提升系统的性能,这一类应用中,也往往使用 PLL 进行倍频和分频,以得到较高频率的时钟,用以提升系统整体性能。           再有一个常见的应用就是生成两路频率相同,相位不同的时钟供 SDRAM 控制器和 SDRAM 芯片使用。根据 SDRAM 芯片的工作原理, SDRAM 控制器的工作时钟和 SDRAM 芯片的工作时钟需要保持 180 °的相位差才能保证正确的读写数据。所以这里就可以使用 PLL 的相位控制功能来产生两路相位不同的时钟,以分别供控制器和 SDRAM 芯片使用。   下面我们看一下实用PLL设置不同频率控制led闪烁例程: //Top.v module PLL_LED(      Clk, Rst_n, LED ); input Clk; input Rst_n; output  LED; wire c0; //25M wire c1; //75M wire c2; //100M wire locked; pll pll( .areset(~Rst_n), .inclk0(Clk), .c0(c0), .c1(c1), .c2(c2), .locked(locked) ); counter #( .CNT_MAX(25'd24_999_999)    /////////////////// ) counter0( .Clk(c0), .Rst_n(Rst_n), .led(LED ) ); counter #( .CNT_MAX(25'd24_999_999)     /////////////////// ) counter1( .Clk(c1), .Rst_n(Rst_n), .led(LED ) ); counter #( .CNT_MAX(25'd24_999_999)      /////////////////// ) counter2( .Clk(c2), .Rst_n(Rst_n), .led(LED ) ); counter #( .CNT_MAX(25'd24_999_999)      /////////////////// ) counter3( .Clk(Clk), .Rst_n(Rst_n), .led(LED ) ); endmodule module counter(Clk,Rst_n,led); input Clk; //系统时钟 input Rst_n; //全局复位,低电平复位 output reg led; //led输出 reg  cnt; //定义计数器寄存器 parameter CNT_MAX = 25'd24_999_999; //计数器计数进程 always@(posedge Clk or negedge Rst_n) if(Rst_n == 1'b0) cnt = 25'd0; else if(cnt == CNT_MAX) cnt = 25'd0; else cnt = cnt + 1'b1; //led输出控制进程 always@(posedge Clk or negedge Rst_n) if(Rst_n == 1'b0) led = 1'b1; else if(cnt == CNT_MAX) led = ~led; else led = led; endmodule //`tb `timescale 1ns/1ps `define clk_period 20 module PLL_LED_tb; reg Clk; reg Rst_n; wire  LED; PLL_LED PLL_LED( .Clk(Clk), .Rst_n(Rst_n), .LED(LED) );  /////////////////// defparam PLL_LED.counter0.CNT_MAX = 24; defparam PLL_LED.counter1.CNT_MAX = 24; defparam PLL_LED.counter2.CNT_MAX = 24; defparam PLL_LED.counter3.CNT_MAX = 24; initial Clk = 1; always #(`clk_period/2)Clk = ~Clk; initial begin Rst_n = 1'b0; #(`clk_period * 20 + 1); Rst_n = 1'b1; #(`clk_period * 2000); $stop; end endmodule    仿真波形图:
  • 热度 21
    2014-8-30 18:05
    1847 次阅读|
    0 个评论
    “锁相环”(PLL)是现代通信系统的基本构建模块。PLL通常用在无线电接收机或发射机中,主要提供“本振”(LO)功能;也可用于时钟信号分配和降噪,而且越来越多地用作高采样速率模数(A/D)转换的时 钟 源。 随着集成电路加工**能器件的尺寸缩小,器件电源电压也呈下降趋势,包括PLL和其它混合信号功能所用的电源。然而,PLL的关键元件——“压控振荡器”(VCO)的实用技术要求并未随之大幅降低。许多高性能VCO设计仍然采用分立电路来实施,可能要求高达30 V的电源电压。这就给当今的PLL或RF系统设计师提出了挑战:低压PLL IC如何与高压VCO实现接口。电平转换接口通常利用有源滤波电路来实施,这将在下文讨论。 本文将分析说明PLL的基本原理,考察采用高压VCO的PLL设计的当前技术水平,讨论典型架构的利弊,并介绍高压VCO的一些替代方案。 PLL基本原理 锁相环(图1)是一个反馈系统,其中相位比较器或鉴相器驱动反馈环路中的VCO,使振荡器频率(或相位)精确跟踪所施加的参考频率。通常需要用滤波电路,对正/负误差信号求积分并使之平坦,以及提高环路稳定性。反馈路径中常包含分频器,使输出频率(VCO的范围内)为参考频率的倍数。分频器的频率倍数N可以是整数,也可以是小数,PLL相应地称为“整数N分频PLL”或“小数N分频PLL”。 图1. 基本锁相环 PLL是负反馈控制环路,因此达到均衡时,频率误差信号必须为零,以便在VCO输出端产生精确且稳定的频率N × FREF。 PLL有多种实施方法,根据所需频率范围、噪声和杂散性能以及物理尺寸,可以采用全数字式、全模拟式或混合电路。目前,高频(或RF)PLL的常用架构既含有全数字式模块,如反馈分频器和鉴相器等,也含有高精度模拟电路,如电荷泵和VCO等。混合信号PLL的主要特点包括: 参考频率:稳定、精确的基准频率,RF输出将锁相于该频率;通常源于晶振或温度控制晶体振荡器(TCXO)。 鉴频鉴相器(PFD):从参考信号和反馈信号中产生相位误差信号。 电荷泵:将误差信号转换为与相位误差成比例的正/负电流脉冲串。 环路滤波器:对来自电荷泵的电流脉冲求积分,向VCO调谐端口提供干净的电压。 VCO:根据调谐端口上的电压(Vtune),输出一个频率。VCO具有增益KV,用MHz/V表示。VCO输出频率与输入控制电压的基本关系表达式为fo = fc + Kv (Vtune),其中fc为VCO偏移频率。 N分频器:将输出频率倍除为PFD或参考频率。可以简单地采用整数倍除,也可以采用小数倍除(小数N分频器),采用后者的越来越多。小数分频器的实施很简单,只需切换整数分频器的除数便可获得小数平均值(例如,要获得平均值4.25,可以计数到4三次并计数到5一次;这样就计数了17个脉冲,并生成了4个脉冲,因此频率比为17/4 = 4.25)。实践中,借助高分辨率噪声整形转换器所用的技术可以实现更好的效果。因此,小数方法通常采用Σ-Δ结构实施,它具有杂散频率少的优势。 图2显示了当前器件的高度集成电路示例,这是集成VCO的小数N分频PLL IC  ADF4350宽带频率合成器的框图,其输出频率范围为137.5 MHz至4400 MHz。(集成VCO的宽带宽PLL部分简要描述了其功能。) 图2. ADF4350 PLL频率合成器框图 限制PLL性能的主要特性有相位噪声、杂散频率和锁定时间。 相位噪声:相当于时域中的抖动,相位噪声是振荡器或PLL噪声在频域中的表现。它是PLL中各器件所贡献噪声的均方根和。基于电荷泵的PLL可以抑制环路滤波器带宽内的VCO噪声。在环路带宽之外,VCO噪声占主导地位。 杂散:杂散频率由电荷泵定期更新VCO调谐电压而引起,并以与载波相差PFD频率的偏移频率出现。在小数N分频PLL中,小数分频器操作也会引起杂散。 锁定时间:从一个频率变为另一个频率或响应瞬时偏移时,PLL的相位或频率返回锁定范围所需的时间。它以频率或相位建立性能来确定,其作为特性的重要程度视应用而定。 为什么VCO仍然用高压? 高性能VCO是最后几种不为硅集成潮流所动的电子器件之一。仅几年前,手机所用的VCO才完全集成到手机无线电芯片组中。但是,在蜂窝基站、微波点对点系统、军用和航空航天产品以及其它高性能应用中,基于硅的VCO则能力有限,仍然需要采用分立方式来实施VCO。原因如下: 大多数商用分立VCO采用容值可变的变容二极管,作为LC振荡电路的可调谐元件。改变二极管的电压会改变其电容,从而改变振荡电路的谐振频率。 变容二极管的任何电压噪声都会被VCO增益KV(用MHz/V表示)放大,并转换为相位噪声。要使VCO相位噪声保持最小,KV必须尽可能小,但为了实现合理的宽调谐范围,KV必须较大。因此,对于要求低相位噪声和宽调谐范围的应用,VCO制造商通常会设计低增益、输入电压范围较大的振荡器,以满足这些相互矛盾的要求。 窄带VCO的典型电压调谐范围为0.5 V至4.5 V,宽带VCO通常为1 V至14 V,某些情况下可以宽达1 V至28 V。 同轴谐振器振荡器(CRO)是另一种特殊类型VCO,利用极低增益和宽输入调谐电压来实现超低相位噪声,通常用于窄带专用移动无线电和陆地移动无线电应用。 与高压VCO接口 大多数商用PLL频率合成器IC提供电荷泵输出,其上限约为5.5 V;当环路滤波器仅使用无源器件时,VCO要求较高的调谐电压,该输出不足以直接驱动VCO。为了达到较高的调谐电压,必须利用运算放大器电路实施有源环路滤波器拓扑结构。 实现这种结构的最简单方法是在无源环路滤波器之后添加一个增益级。虽然易于设计,但这种方法有几个缺点:反相运算放大器配置具有低输入阻抗,会使无源环路滤波器承受负载,从而改变环路动态特性;同相配置具有足够高的输入阻抗,不会使滤波器承受负载,但有源滤波器增益会放大运算放大器的任何噪声,从而无法受益于前置无源环路滤波器的滤波功能。更好的拓扑结构是将增益级与滤波器集成于单一有源滤波器模块中。建议采用前置滤波,避免来自电荷泵的极短电流脉冲过驱放大器,否则这可能会限制输入电压额定值。 图3显示建议有源滤波器拓扑结构的两个示例,其中前置滤波分别使用反相和同相增益。请注意,这些放大器电路是真时间积分器,可强迫PLL环路在输入端保持零误差。环路之外,所示拓扑结构可能会漂移至供电轨 a. 反相拓扑结构 b. 同相拓扑结构 图3. 采用前置滤波的有源滤波器 反相拓扑结构的优势是可以将电荷泵输出偏置在固定电压,通常为电荷泵电压的一半(VP/2),此时对杂散性能最有利。注意应提供干净的偏置电压,最好是来源于ADP150等专用低噪声线性稳压器,并在尽可能靠近运算放大器输入引脚处充分去耦。分压器网络所用的电阻值应尽可能小,以便降低噪声。使用反相拓扑结构时,必须确保PLL IC允许PFD极性反转;如有必要,应抵消运算放大器的反转,以正确的极性驱动VCO。ADF4xxx系列就具有这种特性。 同相环路滤波器配置不需要专用偏置,因此这种解决方案可能更紧凑。此时,电荷泵电压不是偏置在固定电平,而是在其工作电压范围内变化。因此,采用此类滤波器时,使用具有轨到轨输入的运算放大器更为关键。(下一节将说明输入电压范围要求。) 选择运算放大器 运算放大器的选择对于最大限度地发挥有源滤波器的潜能至关重要。除带宽外,需要考虑的主要性能规格有: 噪声电压密度,用nV/√Hz表示 电流噪声,用pA/√Hz表示 输入偏置电流 共模电压范围 滤波器输出直接影响所产生的频率和相位;因此,运算放大器的噪声电压密度可以显示有源滤波器将增加多少相位噪声。放大器噪声在PLL环路带宽内和带外均会产生影响,在环路滤波器的转折频率处最为显著,具有高噪声电压密度的放大器尤其突出。因此,放大器噪声必须保持较低水平,才能完成放大器和高压VCO的使命,提供较低的相位噪声。10 nV/√Hz以下是一个不错的设计目标。与误差电流脉冲相比,电流噪声一般非常小,因此其影响往往比电压噪声小得多。 相对于PFD输出电流,如果运算放大器具有较为明显的输入偏置电流,则可能会导致PLL输出频谱上出现较大的杂散。为使VCO调谐电压保持恒定且PLL保持锁定,电荷泵必须补偿每个PFD周期中运算放大器输入端所耗用的偏置电流。这就会在PFD频率调制VTUNE电压,并在载波周围引起杂散,其偏移等于PFD频率。输入偏置电流越高,对VTUNE电压的调制越大,杂散幅度越高。 共模电压范围或输入电压范围(IVR)是运算放大器的另一个重要特性,但常被忽视,导致终端设计发生严重问题。IVR决定输入引脚上最大/最小信号与正/负供电轨之间所需的间隙。 对于采用±15 V电源供电的早期运算放大器,典型IVR为±12 V。后来加入了缓慢的横向PNP输入级,使得IVR可以包括负供电轨,从而提供单电源工作能力。虽然任何运算放大器均能采用地和正电源供电,但必须注意输入与供电轨的间距。 例如,颇受欢迎的OP27采用±15 V电源时,IVR为±12.3 V。这意味着,输入电压至少需要与正负供电轨相差±2.7 V。对于单电源供电、宽输入摆幅应用,范围低端的这种限制将使该放大器缺乏吸引力。如果使用双电源设计方案,则运算放大器的选择范围广得多(而且可轻松解决输入偏置问题)。如果必须采用单电源设计,请使用具有轨到轨输入摆幅的运算放大器(但其中许多放大器可能具有较高的噪声电压特性)。因此,为获得最佳效果,运算放大器需要具有低噪声电压密度、低输入偏置电流和轨到轨输入,以便实现低相位噪声、低杂散和单电源供电。表1列出了ADI公司的一些运算放大器及其上述设计标准的相关特性。 表1. 建议在PLL有源环路滤波器中使用的运算放大器 运算放大器 电压噪声,  f = 1 kHz (nV/√Hz) 电流噪声,  f = 1 kHz (pA/√Hz) 输入偏置电流(典型值) 输入电压范围,与低供电轨的间隙(V) V SUPPLY  最大电源电压,单电源(V) AD820 16 0.8 2 pA –0.2 36 OP184 3.9 0.4 60 nA 0 36 AD8661 12 0.1 0.3 pA –0.1 16 OP27 3 0.4 10 nA +2.7 36 AD8099 2 8 100 nA +1.3 12 运算放大器的选择取决于应用。如果PFD杂散远离环路带宽(例如在小数N分频频率合成器中),则可以选用双极性结型晶体管输入(BJT)运算放大器,如OP184或OP27等。环路滤波器将会很好地衰减BJT的高输入偏置电流所引起的PFD杂散,而且PLL可以充分利用BJT运算放大器的低噪声电压密度特性。 如果应用要求较小的PFD与环路带宽比(例如在整数N分频频率合成器中),则应折衷考虑噪声与杂散水平;AD820和AD8661可能是较佳选择。 值得注意的是,虽然有源滤波器往往会增加PLL的噪声,但它能够充当缓冲器,在一些特定应用中具有无源滤波器所不及的性能优势。例如,如果VCO调谐端口的泄漏电流较高,导致PFD杂散较高,则可以使用运算放大器来降低杂散水平。运算放大器的低阻抗输出可轻松弥补调谐端口泄漏电流。 设计示例 考虑这样一个例子,其中LO的规格要求如下: 倍频程调谐范围:1000 MHz至2000 MHz 相位噪声要求:–142 dBc/Hz(1 MHz偏移) 杂散:小于–70 dBc 通道间隔:250 kHz 锁定时间:小于2 ms 单电源:15 V或30 V 为在1-GHz频带上工作,同时满足相位噪声要求,有必要使用高压VCO和有源环路滤波器。相位噪声和杂散特性以及单电源限制,将决定运算放大器的选择。为了达到杂散要求,运算放大器必须具有低输入偏置电流,而为了实现最佳相位噪声性能,运算放大器必须具有低电压噪声。选择JFET输入运算放大器可以兼顾以上两个要求,例如AD8661,其输入偏置电流为0.3 pA,电压噪声为12 nV/√Hz。该器件还能处理单电源要求。选择RFMDUMS-2000-A16 VCO来满足倍频程范围要求。 开始设计时,最好利用支持有源滤波器拓扑结构的ADIsimPLLTM工具进行仿真。图3所示为两种推荐的滤波器类型;ADIsimPLL还支持其它配置。 PLL选择ADF4150,它具有整数和小数两种工作模式,提供2/4/8/16/32几种输出分频器选项,可覆盖从2 GHz至31.25 MHz的连续频率。ADF4150与图2所示的ADF4350相似,但前者允许选择外部VCO,适合需要满足更严苛相位噪声要求的应用。在仿真过程中,PLL环路滤波器设置为20 kHz,以期减小运算放大器的噪声贡献,同时使PLL锁定时间小于2 ms。 图4所示为采用以下器件的仿真系统与测量系统噪声(dBc)与频率偏移关系曲线:ADF4150 PLL、UMS VCO和基于AD8661的滤波器。两条曲线均显示,由于有源环路滤波器增加的噪声,约20 kHz时出现峰值噪声–90 dBc,不过仍然实现了1 MHz偏移时–142 dBc/Hz的目标。若要降低带内噪声,可以使用OP184或OP27等噪声更低的运算放大器,但杂散会提高;或者将PLL环路带宽降至20 kHz以下。 图4. ADIsimPLL仿真性能与测量性能对比:AD8661用作PLL有源滤波器中的运算放大器 图5显示,使用OP27时性能约改善6 dB。这种情况下,因为环路带宽相对较窄,所以杂散并未显著增加。进一步降低带宽可以改善100 kHz以下偏移的相位噪声,但PLL锁定时间会延长。所有这些权衡考虑均可以在进入实验室设计之前,利用ADIsimPLL模拟进行测试。 图5. 有源环路滤波器中使用AD8661与使用OP27的PLL测量性能对比 爆炸新闻:高压PLL 以上讨论都围绕利用有源滤波器实现低压PLL器件与高压VCO接口而展开。不过,高压PLL已经出现,因而使用有源滤波器的必要性大大降低。例如ADF4113HV PLL,它集成高压电荷泵,归一化相位本底噪声为–212 dBc/Hz。对于该器件,PLL电荷泵输出可以高达15 V,因此VCO之前可以使用更为简单的无源滤波器。 该高压PLL系列产品将会不断扩充,不久将会出现最大电压为30 V的器件,以及具有高压电荷泵的小数N分频PLL。有关产品更新和新产品信息,请访问PLL网站。 集成VCO的宽带宽PLL 另外可以用完全集成的高性能PLL,例如图2所示的ADF4350等,代替有源滤波器与高压VCO组合。这种情况下,VCO集成在芯片内。采用多频段VCO方法可以避免上述权衡考虑宽调谐范围与低相位噪声的问题。ADF4350片内集成三个独立的VCO,每个VCO均有16个重叠子频段,因而共有48个子频段。每次更新频率时,就会启动自动校准程序,以选择合适的VCO子频段。 这真正体现出从分立式VCO设计转向硅解决方案的优势:在极小的面积上实现非常高的集成度,从而使设计更加灵活。例如,ADF4350同时集成了可编程输出分频器级,可以覆盖从137.5 MHz至4.4 GHz的频率,这对于希望多种频率和标准均采用同一设计的无线电设计师极具吸引力。 ADF4350采用5 mm2 LFCSP封装,而标准VCO封装为12.7 mm2。同时性能水平也接近分立设计;相位噪声在100 kHz偏移时为–114 dBc/Hz,在1 MHz偏移时为–134 dBc/Hz。(返回图2) 图6. ADF4350 VCO中48个不同频段的电压与频率关系图
  • 热度 30
    2014-7-29 21:39
    5991 次阅读|
    19 个评论
    ADF4350结合外部环路滤波器和外部基准频率使用时,可实现小数N分频或整数N分频锁相环(PLL)频率合成器。 ADF4350具有一个集成电压控制振荡器(VCO),其基波输出频率范围为2200 MHz至4400 MHz。此外,利用1/2/4/8/16分频电路,用户可以产生低至137.5 MHz的RF输出频率。对于要求隔离的应用,RF输出级可以实现静音。静音功能既可以通过引脚控制,也可以通过软件控制。同时提供辅助RF输出,且不用时可以关断。 所有片内寄存器均通过简单的三线式接口进行控制。 该器件采用3.0 V至3.6 V电源供电,不用时可以关断。 功能图如下,懂锁相环的请仔细品读。不懂的可以直接忽略掉,这里楼主我用它来产生一个高频的信号去调制一个低频的信号源,然后让这信号去充当一个很高大上的东西的时钟,这里产生的信号时1G. 老实说自己对于锁相环也不是特么的了解其原理,近期打算静下心来攻读下PLL到底是如何去运转的。 另外,这个片子内部资料原理可能需要去仔细品读。但是时序却是普通的SPI。一般人都能把他写出来。但是这里仔细看PDF会发现有BUG.我始终只看到只有write operation。 却没有发现有read operation,可能是自己对于SPI不够很深入的了解吧。或者PDF根本没有给出如何去read. 看时序你就发现。   另外此chip有6个寄存器,分别可以设置他的相关参数。包括reference,vco的分频以及power.这里可以再官网下载一个关于4350的soft.只需把需要的参数输进去。寄存器能够自行进行配置。 原理图如下: 参考经典原理图接的。 另外,这里采用的MCU为MSP430  LAUNCHPAD.4线控制。分别为:clk,data,le,pd.LD是锁定脚。如果频率没有锁定此脚会输出低电平。只有锁定了才会输出高。所以调试时候下载程序之后可以先检测这脚是不是为高。这里这个很重要!。 另外晶振采用的10M。有源的。不能太高,太高了当时用的一个12V恒温晶振效果没出来(这里可能不是那个恒温晶振的问题,可能也是那板子的问题)。   调试心得:一般的示波器看不到波形的,这个输出最低200M,示波器的采样率一般也就1G或者2G。是不能看到200M及1G的信号的,我用的那个就是60M的。当时还以为又出问题了。为何LD锁定了输出高电平但是却看到的信号始终为0,后来不知怎么的突然看到示波器上面的标注。才想起用的频谱仪!下面是频谱仪的图片。   另外程序里面有个读的函数。但是始终没有用上。读不出来寄存器的值。只写了他的操作。日后希望有机会再去研究。   附件程序带上。  
  • 热度 15
    2011-1-23 14:58
    2914 次阅读|
    0 个评论
    修改ARM7之PLL设定以优化系统性能 前言 当我们设计 ARM7 的系统, 除非我们不使用PLL(系统运行频率即为晶振频率), 否则我们不可避免要和PLL倍率打交道. 设计PLL设定, 我们搜索网路, 经常见到的参考例程是: 1. 频率设定: //// system settings, Fosc、Fcclk、Fcco、Fpclk #define     Fosc                            11059200 #define     Fcclk                            (Fosc * 4) #define     Fcco                             (Fcclk * 4) #define     Fpclk                            (Fcclk/4) * 1 2. PLL设定: void pll_init(void) {         PLLCON = 1;                                     // enable PLL but not connecting it                 //// VPBDIV         // Fpclk: Fpclk=N*(Fcclk/4)         #if ((Fcclk / 4) / Fpclk) == 1             VPBDIV = 0;         #endif         #if ((Fcclk / 4) / Fpclk) == 2      VPBDIV = 2;         #endif         #if ((Fcclk / 4) / Fpclk) == 4             VPBDIV = 1;      #endif                 //// PLLCFG         // Pcclk: Fcclk=M*Posc         // Pcco:  Fcco=2P*Fcclk      #if (Fcco / Fcclk) == 2          PLLCFG = ((Fcclk / Fosc) - 1) | (0 5);      #endif      #if (Fcco / Fcclk) == 4             PLLCFG = ((Fcclk / Fosc) - 1) | (1 5);      #endif      #if (Fcco / Fcclk) == 8             PLLCFG = ((Fcclk / Fosc) - 1) | (2 5);      #endif      #if (Fcco / Fcclk) == 16             PLLCFG = ((Fcclk / Fosc) - 1) | (3 5);      #endif            PLLFEED = 0xaa;                                 // realize setting         PLLFEED = 0x55;                                 // realize setting                 while((PLLSTAT (1 10)) == 0);              // waiting for PLL lock           PLLCON = 3;                                     // enable PLL and do connection         PLLFEED = 0xaa;                                 // realize setting         PLLFEED = 0x55;                                 // realize setting } 网路上例程资源, 常常还附上这样的话语: (PLL设定)"一般不需要修改". 本文的目的, 就是要对 PLL 设定进行修改, 到达我们优化系统运行速度之目的. 知识准备 1. 频率概念: (1) Fosc:  晶振频率. 一般取 11.0592MHz 的目的, 是分频后准确套入一般的串口通讯之波特率. (2) Fcclk: 系统时钟频率. lpc21xx 取 Fosc 的 倍频, 最大频率不可超过 60MHz. (3) Fcco:  电流控制振荡器频率. 假设其为 PLL 倍频过程中必要使用频率, datasheet 约定为 Fcclk 的4, 8, 16倍. (4) Fpclk: VPB 之时钟频率. VPB为 lpc21xx 之外围总线(Peripheral Bus). 2. PLL设定寄存器: (1) VPBDIV: 设定 Fpclk. (2) PLLCFG: 设定 Fcclk 与 Fcco. 优化目的 在我们设计的一个应用中, 存在着 200us 的扫描任务, 任务包含 access spi flash. 一个质朴的思路是, 提高系统运行频率以及spi访问时间. 修改PLL设定 1. 频率修改: //// system settings, Fosc、Fcclk、Fcco、Fpclk #define     Fosc                            11059200 #define     Fcclk                            (Fosc * 5 ) #define     Fcco                             (Fcclk * 4) #define     Fpclk                            (Fcclk/4) * 4 2. 原始PLL设定下系统表现: (1) 晶振频率 Fosc ~= 11MHz (2) 系统频率 Fcclk ~= 44MHz (3) VPB频率  Fpclk ~= 11MHz 3. 修改PLL设定的系统表现: (1) 晶振频率 Fosc ~= 11MHz (2) 系统频率 Fcclk ~= 55MHz (3) VPB频率  Fpclk ~= 55MHz 故, 系统时钟频率 Fcclk' = (5/4)*Fcclk, 增加为 5/4 倍. VPB频率 Fpclk' = 5*Fpclk, 增加为 5倍. 系统框图 分析框图得知, 我们假设系统程序运行速度增加为, 原速度的 5/4 倍. 我们假设 GPIO 速度, IIC, SPI 读写速度, 以及定时器速度, 软件狗(WDI)速度, 串口读写速度等增加为, 原速度的 5倍. 验证 1. 我们验证软件狗WDI, 速度加快5倍, 验证过程: void wdt_init(void) {         WDTC = (Fosc/4)*3;                              // wdt timeout value(Fosc/4 is 1s)         WDMOD = 0x03;                                   // watchdog reset mode         wdt_feed_event();                               // start and feed wdt } 需要修改为: void wdt_init(void) {         WDTC = (Fpclk/4)*3;                             // wdt timeout value(Fpclk/4 is 1s)         WDMOD = 0x03;                                   // watchdog reset mode         wdt_feed_event();                               // start and feed wdt } 2. 我们验证定时器速度加快 5倍. 验证过程不表, 下面的MC有修改: T0MR0 = 55295; 修改为: T0MR0 = 55295*5; 3. SPI的5倍加快, 没有技术验证. 用不严谨的表述是, 我们感觉 spi access flash 在 200us 的扫描application中, 不再成为一个导致延时的任务. 4. GPIO 的5倍加快. 我们因为使用了 FPIO, 对普通的 IO 读写速度的 5倍加快, 故没有验证. 5. 处理器执行速度增加 5/4倍(55MHz), 验证过程: void delay_ms(U32 ms) {         for(U32 i=0; i            U32 clk = 7377;                       // 1000             while(clk--);         } } 修改为: void delay_ms(U32 ms) {         for(U32 i=0; i            U32 clk = (7377*5)2;                      // 1000             while(clk--);         } } 结论 常见的设定, 让 arm7 的系统时钟跑在 44M, 让外围总线时钟跑在 11M, 并不建议使用者更改. Allen 通过工程验证得知, 设定系统时钟为 55M, 并设定 peripheral bus 时钟为 55M. 将导致系统的代码执行速度增加 5/4 倍, 以及 gpio/adi/spi/iic/timer/wdi 等应用速度, 增加 5倍. 考虑到这样的 PLL 设定仍然在 datasheet 手册范围中, 对于功耗少许增加不敏感的高速扫描应用应用, 或高速外围如flash的acess 等应用, 我们找不到该PLL设定不合适的理由. 参考资料 1. nxp lpc21xx datasheet 2. LPC21XX与LPC22XX时钟频率(http://www.how138.com/news.asp?id=514) Allen Zhan 2011.01.23 发表于电子工程专辑    
相关资源
  • 所需E币: 0
    时间: 2023-4-22 12:57
    大小: 912.13KB
    上传者: EPTmachine
    TN807_SF1FPGAPLL用户指南
  • 所需E币: 4
    时间: 2022-1-17 16:21
    大小: 23.51MB
    上传者: samewell
    锁相环(PLL)电路设计与应用.rar
  • 所需E币: 1
    时间: 2022-1-10 19:10
    大小: 381.42KB
    上传者: Argent
    基于PLL信号发生器的设计论文资料
  • 所需E币: 1
    时间: 2022-1-10 18:48
    大小: 566.9KB
    上传者: Argent
    PLL电路的研究及在信号产生中的应用论文资料
  • 所需E币: 1
    时间: 2022-1-10 18:21
    大小: 337.47KB
    上传者: Argent
    基于PLL信号发生器的设计论文资料
  • 所需E币: 0
    时间: 2021-4-26 23:53
    大小: 230KB
    上传者: Argent
    AI产品层出不穷,手里收藏了有关电子通信,毕业设计等资料,方案诸多,可实施性强。单片机的应用开发,外设的综合运用,纵使智能产品设计多么复杂,但其实现的基本功能都离不开MCU的电路设计与驱动编程,无论是使用51单片机还是AVR单片机,其方案的选择因项目需求而定,需要这方面资料的工程师们,看过来吧。
  • 所需E币: 1
    时间: 2021-4-25 23:11
    大小: 24.33MB
    上传者: Argent
    电子产品日新月异,不管是硬件工程师还是软件工程师,基本的模电、数电知识也是必备的条件,从二极管到三极管,从单片机到多核MCU,3G网络到5G产品的普及,不管电子产品的集成度怎么高,其产品还是少不了电阻电容电感,每个元器件在电路中必然有其作用,有兴趣了解的网友,下载学习学习吧。
  • 所需E币: 1
    时间: 2021-4-25 16:20
    大小: 2.03MB
    上传者: zendy_731593397
    摘要:随着科学技术的发展,锁相环PLL是自动频率控制和自动相位控制技术的融合。鉴于其在通讯、航海、军事等发面的广泛应用,研究锁相环电路的特性有助于了解和提高锁相环电路的性能指标,使其在各领域得到更为广泛的应用和推广,其具有很强的实际应用价值。本设计基于数字锁相环式频率合成技术,采用AT89S52单片机完成电压控制LC振荡器的控制。可控制单片机改变频率,步进为100KHz;可实时测量压控振荡器输出频率、输出电压峰—峰值,并用数码管显示器显示;在输出负载为容性阻抗时,用一个串联谐振回路提高其输出功率;采用了交流电压反馈和AGC电路来稳定输出电压;末级功放选用三极管2SC2668,使其工作在丙类放大状态,提高了放大器的效率;输出正弦波比较稳定,没有明显失真;输出频率稳定度达到10-3;输出功率≥20mW;输出电压可稳定在1V±0.1V。关键词:锁相环;压控振荡器;频率测量;信号产生;单片机
  • 所需E币: 0
    时间: 2021-4-13 16:15
    大小: 24.1MB
    上传者: Argent
    电子产品日新月异,不管是硬件工程师还是软件工程师,基本的模电、数电、微机原理、信号处理等知识是必备的条件,从二极管到三极管,从单片机到多核MCU,3G网络到5G产品的普及,不管电子产品的集成度怎么高,其产品还是少不了电阻电容电感,每个元器件在电路中必然有其作用,有兴趣了解的网友,下载学习学习吧。
  • 所需E币: 0
    时间: 2021-3-24 18:09
    大小: 86.72KB
    上传者: samewell
    PLL设计的VCXO参数平衡
  • 所需E币: 0
    时间: 2021-3-22 18:48
    大小: 962.04KB
    上传者: Goodluck2020
    FPGA中PLL配置详细说明和使用.zip
  • 所需E币: 1
    时间: 2021-3-17 22:20
    大小: 962.04KB
    上传者: xgp416
    FPGA中PLL配置详细说明和使用
  • 所需E币: 1
    时间: 2021-3-18 11:27
    大小: 423.21KB
    上传者: zendy_731593397
    Thedevicesdescribedinthisdocumentaretypicallyusedaslow–power,phase–lockedloopfrequencysynthesizers.Whencombinedwithanexternallow–passfilterandvoltage–controlledoscillator,thesedevicescanprovidealltheremainingfunctionsforaPLLfrequencysynthesizeroperatinguptothedevice’sfrequencylimit.ForhigherVCOfrequencyoperation,adownmixeroraprescalercanbeusedbetweentheVCOandthesynthesizerIC.
  • 所需E币: 0
    时间: 2021-3-17 17:07
    大小: 86.72KB
    上传者: bwj312
    PLL设计的VCXO参数平衡.zip
  • 所需E币: 1
    时间: 2021-3-9 17:22
    大小: 720.22KB
    上传者: Argent
    本人收集了一些有关毕业设计及产品设计资料,有智能台灯,消防智能电动机设计,无线语音遥控智能车设计等课题设计,是许多在校学子毕业设计所需的参考性资源,热衷于单片机开发的网友也可了解了解,欢迎下载阅览。
  • 所需E币: 1
    时间: 2021-3-9 17:45
    大小: 728.37KB
    上传者: Argent
    本人收集了一些有关毕业设计及产品设计资料,有智能台灯,消防智能电动机设计,无线语音遥控智能车设计等课题设计,是许多在校学子毕业设计所需的参考性资源,热衷于单片机开发的网友也可了解了解,欢迎下载阅览。
  • 所需E币: 0
    时间: 2020-12-25 21:04
    大小: 1.91MB
    上传者: czd886
    基于FPGA数字PLL谐振频率的跟踪研究
  • 所需E币: 0
    时间: 2020-12-27 16:20
    大小: 712.85KB
    上传者: stanleylo2001
    PLL的电源管理设计与技术资料
  • 所需E币: 1
    时间: 2020-12-18 16:25
    大小: 174KB
    上传者: zendy_731593397
    4046CMOSPLL锁相环电路
  • 所需E币: 0
    时间: 2020-12-24 17:14
    大小: 1.33MB
    上传者: samewell
    ADI公司最新的PLLVCO器件ADF4371提供极为出色的低相位噪声和杂散性能