下载中心
数字锁相环设计步骤rar
1星 发布者: 论文帝

2013-07-01 | 1积分 | 1.86KB |  4 次下载

下载 收藏 评论

文档简介
标签: 数字锁相环

数字锁相环

有关数字锁相环的帖子不断出现,但大多没有讲述其原理。翻开有关锁相环的书总是堆叠着鉴相、同相积分、中相积分、滤波等专用名词。这些概念距离硬件设计实现数字锁相环较远。本文按照数字锁相环设计的步骤,采用手把手的方式讲述设计过程和原理,旨在给数字锁相环初次设计者提供一个思路,缩短开发的时间。附件是用VHDL语言设计的20分频数字锁相环。

Div20PLL Port(

clock : in std_logic; --80M local clk

flow : in std_logic; --4M data flow

clkout : out std_logic --4M CLK

);

其中clkout是所提取的数据时钟。clock是本地时钟,其频率是数据流flow速率的20倍。若数据流flow速率为4M则clock选用80M,若 flow为1M则选取clock为20M,依次类推。此附件基本按照下文提到的步骤设计,并已经在产品中应用的。

专用名词约定:

一个比特: 数据流flow由一个比特接一个比特组成,文中提到的一个比特均指flow中的一个比特。

域: 一个比特的时间从开始到结束可以划分为5个时间片段,依次为

§前失锁§超前§同步§滞后§后失锁§

这五个片段称作五个域,其中前失锁和后失锁统称为失锁域。

分频比R: 本地时钟记做clock,从flow中提取的时钟记做lowclk,clock与lowclk的频率比记做R。

smp: 指用clock提取的lowclk上升沿(参见“上升沿与下降沿触发小论”,需要注意一点的是,lowclk是与clock同步的信号,所以只需延时一次提取)。

脉冲: 如不特殊指明,是指\'1\'值保持一个clock周期的信号,无效时值为\'0\'。

设计总思路:

数字锁相环完成的功能就是利用clock从flow中提取lowclk,并且使smp保持在同步域。lowclk由clock经R分频得到,并且 lowclk的相位是可以动态调整的以达到锁相的目的。当smp落在同步域时,认定为锁相环已经同步,保持分频的状态不变。当smp落在失锁域时认定为失锁,则强行置下一个smp到同步域的中间位置。当smp落在超前域时,则推迟下一个smp的到来一个节拍。当smp落在滞后域时,则提前一个节拍使下一个 smp到来。

设计步骤:

根据设计参数要求合理选取R值,通常R不小于8,本文选取R = 20讲解。以后文中用到20均指R,而提到10则指R/2。

确定5个域的宽度,本例选取5个域等宽。由于R = 20,所以一个比特的宽度为20,那么每个域的宽度均为4。失锁域是前失锁域和后失锁域的统称,所以失锁域宽8。

设计一个计数器cnt,cnt供10(R/2)个状态,记做s0到s9,cnt从s0到s9循环变化。cnt有三个同步控制脉冲load、inc和 dec,load使cnt装入s7,inc使cnt跳过下一个状态(假如在s8时有inc,则cnt从s8直接跳到s0而不再经过s9),dec使cnt 继续保持当前状态不变。

时钟lowclk的状态受到cnt的状态和load信号的同步控制,load使lowclk置\'1\'值,s9使lowclk翻转。两个特殊情况是由于 cnt受到inc和dec的控制而使cnt的状态会跳过s9或重复出现s9,即会出现...s7s8s0s1...或... s7s8s9s9s0s1...这两种情况。对于第一种情况lowclk在s8后的s0翻转,而第二种情况仅在第一个s9处翻转。

用clock提取flow的跳变沿saltus。

用saltus产生一个宽度为16的信号pulse,pulse在saltus处及接下来的15个clock中期内保持为\'1\'值,其余情况为\'0\'。在pulse为\'1\'期间有一个计数器position在计数,显然position的值为0到15。

用clock提取pulse的下降沿cmp。

定义一个与position相同类型的信号phase。phase在pulse为\'0\'时值为0,在pulse为\'1\'且smp为\'1\'时装入position的值,其他情况phase保持值不变化。

在cmp处观察phase的值。若为0到3则产生一个失锁脉冲loss,若为4到7则产生一个超前脉冲lead,若为8到11则产生一个同步脉冲syn,若为12到15则产生一个滞后脉冲lag。这些脉冲的位置均在cmp。

若loss累积3次且这3次中间没有出现过syn,则产生一个装载脉冲load。按照相同的方法用lead产生一个dec信号,用lag信号产生一个inc信号。

至此,整个数字锁相环已经设计完毕。步骤中提到的计数器就相当于积分,phase的作用就是完成鉴相,第10步也就是一些有关数字锁相环的书籍中提到的滤波。第3步提到R/2计数器而后在第4步用cnt的状态翻转lowclk来实现R分频,是为了强调输出的lowclk的展空比为50%。

评论
相关视频
  • Verilog RTL编程实践

  • FPGA时序约束

  • 领航者ZYNQ开发板视频

  • Verilog HDL数字集成电路设计原理与应用

  • 正点原子领航者ZYNQ视频第一期FPGA设计篇

  • 赛灵思FPGA开发板图像及其数字处理

推荐帖子
精选电路图
  • CCD图像传感器在微光电视系统中的应用

  • 光控音效发生器电路

  • 如何利用ESP8266制作一个简单的四轴飞行器

  • 基于IC555的可变PWM振荡器电路

  • 一个简单的立体声平衡指示器电路

  • 一种构建12V和230V双直流电源的简单方法

×