元器件交易网-中发网全新升级平台
关注我们:
首页 > IC技术 > 系统管理器件 > 正文

高速可编程时钟芯片ICS8430的应用

     摘  要: 为了解决高速数字系统中存在的时钟精度、稳定度不高的问题, 提出了用ICSI公司的通用时钟芯片ICS8430作为时钟源的方法。首先比较了常用高速时钟的产生方法, 接着详细介绍了ICS8430的结构与功能, 并用VHDL语言编写了并行模式和串行模式下的控制程序。串行控制程序采用存储波形移位的方法, 具有一定的通用性。最后给出了该芯片的典型布局。所有设计已经在工程实践中得到应用, 取得了良好效果。

  1  引  言

  在高速数字系统中, 时钟的精度往往对系统性能有重要影响。实际设计电路时常见的时钟设计方式包括以下几种, 它们各自有其优缺点:

  ( 1) 直接由单片机/FPGA /DSP 等数字器件产生。这种方式中, 时钟实际是由这些数字器件外接的晶振经过器件内部的倍频电路或者锁相环电路产生, 由于数字器件对时钟抖动并不敏感, 故其内部产生的时钟精度并不高, 通常的抖动都有几百ps至数ns, 这种时钟抖动往往会极大制约系统信噪比的提高。

  ( 2)由锁相环系统产生。锁相环系统自身是一个反馈系统, 故在产生高频信号上有自身的优势: 频率漂移小, 频谱纯度高。锁相环的时钟精度是由一系列器件: PLL、VCO、环路滤波器等共同决定的, 只有整体设计全部达到要求, 锁相环才能实现高精度的时钟输出。这就对电路设计提出了很高要求, 也增加了调试和维护的难度。

  ( 3)由专用时钟芯片产生。专用时钟芯片通常是把锁相环, VCO, 环路滤波等电路集中在一个芯片内, 通过简单的数字控制信号就可以产生各种不同频率的时钟信号, 既有数字电路的控制简单, 调试方便的特性, 又有锁相环电路高精度, 低抖动的优点。

  接下来将详细介绍一种高速可编程时钟芯片 ICS8430, 分别对其性能、功能和使用进行了阐述, 并给出了示例。

  2  ICS8430的性能

  ICS8430是一种通用的、双差分LVPECL 电平输出的高速可编程时钟。采用3. 3V 供电, 内部VCO工作在250MH z到500MHz。当使用16MHz晶振作为输入时, 最小时钟步进可达1MH z。ICS8430还具有以下特点: ! 在单芯片中集成整个锁相环系统和时钟扇出系统, 外围器件只要一个晶振; ? 可以选择使用测试时钟或晶振作为输入; # 两路差分3. 3VLVPECL时钟扇出; ?输出频率范围20. 83MH z至500MH z可调; % 内部VCO 和外部时钟输出参数可以通过并行和串行两种模式进行配置; &RSM 周期抖动: 6ps(最大值) , 周期间抖动: 30ps(最大值) ;? 锁相环最大锁定时间: 1m s。

  3  ICS8430的引脚与功能描述

  3. 1  ICS8430的引脚功能

  3. 1. 1  ICS8430的引脚图

  ICS8430采用32 脚LQFP封装, 引脚图如图1所示。

  3. 1. 2  ICS8430的引脚说明

   M0: M8: M 除法器值输入。输入数据在nP_LOAD由低到高变化时锁存。LVCMOS /LVTTL 接口电平。

   N0: N2: 输出除法器的值。LVCMOS /LVTTL接口电平。

   TEST: Test输出, 由串行操作模式激活, 并行操作模式下输出为低, LVCMOS接口电平。

   FOUT1 /nFOUT1: 差分时钟输出, 3. 3VLVPECL接口电平。

   FOUT0 /nFOUT0: 差分时钟输出, 3. 3VLVPECL接口电平。

  MR: 主复位, 高电平有效, 当逻辑高电平时,内部的除法器复位, 从而导致FOUTx 变低及nFOUTx变高; 当逻辑低电平时, 内部除法器和输出除法器开启。MR 的置位不会影响加载后的M 和N, T 的值。LVCMOS和LVTTL接口电平。

   S _CLOCK: 串行数据时钟, 串行输入数据在时钟的上升沿输入移位寄存器。LVCMOS /LVTTL接口电平。

   S _DATA: 移位寄存器输入。数据在S _C lOCK 的上升沿被采样, LVCMOS /LVTTL 接口电平。

   S_LOAD: 控制把移位寄存器内的数据传送到内部除法器中, LVCMOS /LVTTL接口电平。

   XTAL_SEL: 选择PLL的参考时钟源, 从外部晶振输入或是从TEST_CLK 脚输入。高电平选择从晶振输入, 低电平选择从TEST _CLK 输入。LVCMOS /LVTTL接口电平。

 

   TEST_CLK: 测试时钟输入, LVCMOS /LVTTL接口电平。

   XTAL_ IN /XTAL _OUT: 晶振接口, XTAL _ IN为晶振输入, XTAL_OUT为晶振输出。

   nP_LOAD: 并行加载输入。决定当数据加在M8: M0脚上时载入M 除法器, 当数据加在N2: N0脚上时载入N 除法器。LVCMOS /LVTTL接口电平。

   VCO_SEL: 决定时钟合成器工作在PLL模式还是BYPASS模式。LVCMOS /LVTTL接口电平。

  3. 2  ICS8430的功能描述

  3. 2. 1  ICS8430的内部框图

  ICS8430的内部结构如图2所示。

  3. 2. 2  ICS8430的功能描述

  ICS8430- 61内部集成了一个完整的PLL, 因此不需要添加任何外围器件来进行环路滤波, 只需要一个晶振作为内部振荡器的输入。振荡器的输出在到达鉴相器前进行了16分频。如果采用16MH z的晶振, 则得到的参考频率为1MHz。锁相环( PLL)内部的压控振荡器( VOC ) 的频率范围为250MH z到500MHz。M 分频器的输出也送给鉴相器。

  通过调整VCO 的电压, 使得VCO 的输出为参考频率的M倍。注意对于过大或过小的M, PLL可能无法锁定。VCO 的输出再经过N 分频后输出到LVPECL输出缓冲器。输出的占空比为50% 。

  其中, M的取值为对应的二进制值, N 值的对应关系如表1所示。

  4  ICS8430的输入操作模式

  ICS8430的可编程特性支持两种输入模式来设置M和N 除法器。分别为并行模式和串行模式。

  4. 1  控制模式功能表

  串行与并行控制模式功能表如图2所示。
 

  在并行模式中, nP_LOAD 初始值为低电平, 在引脚M0到M8, N0到N2上的数据直接加到M 除法器和N 除法器上。在nP _LOAD 的上升沿, 数据被锁存, M 除法器的值保持到nP_LOAD 的下一个低电平或者直到有串行事件发生。时序见图3。因此, M 除法器和N 除法器可以通过硬件连接来设定默认值, 在芯片上电后自动加载。在并行操作模式下, TEST 的输出为低电平。

 

  以M = 300, N = 3为例给出VHDL程序如下:

  process( clk, reset)

  beg in

  if reset= "0 "then - - 主复位

  m r< = "0";

  x ta l_se l< = "1";

  vco_se l< = "1";

  test_closk< = "0";

  S_LOAD< = "0";

  S_DATA < = "0";

  S_CLOCK < = "0";

  M < = " 100101100"; - - M = 300

  N < = " 011"; - - N = 3

  elsif clk e"vent and clk= 1" "then

  if init_counter= 100 then - - 初始化时钟

  nP_LOAD< = "1 "; - - 装载脉冲

  elsif in it_counter= 200 then

  nP_LOAD< = "0";

  elsif in it_counter= 300 then

  nP_LOAD< = "1";

  end if;

  end if;

  end process;

  4. 3  串行控制模式的VHDL实现

  nP_LOAD为高电平、S_LOAD 为低电平的时候进行串行操作。时钟芯片内移位寄存器的值为在S_CLOCK 的上升沿对S _DATA 的采样值。在S _LOAD 的上升沿, 移位寄存器中的内容送到M 和N除法器中, 在S_LOAD 的下降沿进行锁存。如果S_LOAD 一直保持高电平, 在S_CLOCK 的上升沿, S _DATA 的数据将直接送到M 和N 除法器中。串行模式可以用来加载M、N 除法器和测试位T1和T0。

  内部寄存器T1和T0决定TEST 引脚的输出状态,关系见表3。可以通过不同的设置对芯片的工作情况进行检测。串行工作时序如图4所示。

  以N = 3, M = 300为例, 采用存储波形移位方式, 串行控制模式的VHDL程序如下:

  process( clk, rst) - - 给出复位mr和装载使能

  en脉冲

  beg in

  if rst= 0" " then - - 主复位

  m r< = ‘0’;

  en< = ‘0’;

  elsif clk‘ event and clk= ’ 1‘ then

  if init_counter= 1 then - - 初始化时钟

  m r< = ‘1’;- - 芯片复位信号

  elsif in it_con ter= 2 then

  m r< = ‘0’;

  elsif in it_con ter> 4 and in it_conter< 41 then

  en< = 1"; " - - 串行加载使能信号

  else

  en< = ‘0’;

  end if;

  end if;

  end process;

  process( clk, rst) - - sclock_reg sdata _reg sload_reg 时序

  beg in

  if rst= "0 "then

  sc lock_reg< = x " 055555550"; - - 采用存储波形移位方式

  sdata_reg< = x "003 f0cf00"; - - N= 3M = 300

  fou t= 125M

  sload_reg< = x " e00000002";

  els if clk event and c lk= "1 "then

  if en= 1" "then

  sc lock _ reg ( 35 down to 0 ) < = sc lock _ reg ( 34downto 0)& ‘0’; - - 移位输出

  sdata_reg ( 35 downto 0) < = sdata_reg( 34 downto 0)& ‘0’;

  sload_reg( 35 dow nto 0) < = sload_reg( 34 down-to 0)& "0";

 

  end if;

  end if;

  end process;

  S_LOAD< = sload_reg( 35); - - 输出信号

  S_DATA < = sdata_reg( 35);

  S_CLOCK < = sclock_reg( 35) ;

  5  应用布局

  如图5所示, 推荐了一种典型的应用布局, 可以作为实际应用的参考设计。需要注意电源的隔离与LVPECL电平的输出连接方式。所有的控制管脚内部都有上拉或下拉电阻, 不用时可以悬空, 也可以外接1K  的保护电阻。时钟输出应遵守高速布线规则, 否则将对性能有较大影响。


  6  结束语

  ICS8430外围电路简单、各种性能都有很好的表现。输出始终精度高, 抖动小。芯片面积小, 可以节省较大空间, 在测量仪器、射频采样等中高端的各种需要高速时钟的场合值得推荐使用

扫描左侧的二维码

科技圈最新动态一手掌握
每日砸蛋,中奖率100%