全数字锁相环的设计_第1页
全数字锁相环的设计_第2页
全数字锁相环的设计_第3页
全数字锁相环的设计_第4页
全数字锁相环的设计_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、全数字锁相环设计PLL (PLL)技术广泛应用于许多领域。信号处理、调制解调器、时钟同步、倍频、频率合成等已应用于锁相环技术。传统PLL由模拟电路实现,而全数字PLL (DPLL)比传统模拟电路实现的PLL精度高,不受温度和电压的影响。可以调整环路带宽和中心频率编程,轻松构建高级PLL,应用于数字系统时不需要A/D和D/A转换。由于通信技术、集成电路技术的快速发展和系统芯片(SoC)的深入研究,DPLL在其中只能得到更广泛的应用。介绍如何使用VERILOG硬件描述语言设计DPLL。DPLL结构和工作原理第一级DPLL的基本结构如图1所示。主要由相位检测器、k可变模式可逆计数器、脉冲加法和减法电

2、路、n计数器4部分组成。k可变模式计数器和脉冲加减法电路的时钟分别为Mfc和2Nfc。其中fc是循环中心频率,通常m和n是2的整数幂。此设计的两个时钟使用相同的系统时钟信号。图1数字锁相环基本结构图相位探测器常用的相位检测器有两种类型:XOR (XOR)相位检测器和edge side control detector(ECPD),本设计使用xor (isor)相位检测器。Iso或栅极相位检测器比较输入信号Fin相位和输出信号Fout相位之间的相位差109 e环路锁定时,Se为1工作周期50%的方波,此时的绝对相位差为90。因此,xor栅相位探测器的相位差限值为90。xor栅相位探测器工作波形,

3、如图2所示。图2回路锁定和极限相位差波形k可变模式可逆计数器k可变模式可逆计数器从相位检测器输出的相位差信号Se中去除高频成分,以确保环路的稳定性能。k可变模式可逆计数器根据差分信号Se执行加法和减法。如果Se是低级别,则加计数器;如果加结果达到基本模块值,则进位脉冲信号CARRY输出脉冲加减电路。当Se为高水平时,计数器执行减法运算,当结果为零时,将直接脉冲信号BORROW输出到脉冲加法和减法电路。脉冲加减电路脉冲正负电路实现了输入信号频率和相位的跟踪和调整,最终使输出信号固定在输入信号的频率和信号上,如图3所示。图3脉冲加减电路工作波形n计数器除外除n计数器外,将脉冲加减法电路的输出IDO

4、UT除以n频率,得到整个回路的输出信号Fout。此外,由于fc=IDCLOCK/2N,因此可以更改分频值n以获得具有不同环路中心频率的fc。DPLL部件设计和实施了解DPLL的工作原理后,就可以相应地设计DPLL的各种部件。在DPLL的四个主要组件中,消除xor门相位探测器和n计数器的设计比较简单。iso或灌嘴拓朴探测器为isoor门。除了n计数器,这是一个简单的n分频器。以下是k可变模式可逆计数器和脉冲加减法电路的设计和实现的主要说明。k可变模式可逆计数器的设计与实现k可变模式可逆计数器模块使用可逆计数器计数,在相位检测器的输出信号dnup低时执行加法运算,达到基本模式值时输出进位脉冲进位。

5、如果为高,则执行减法,如果为0,则输出临时脉冲BORROW。Count的模块值Ktop由输入信号Kmode默认,通常为2的整数平方。其中模块值更改的范围为23-29。模式值的大小决定了DPLL的跟踪阶段,模式值越大,跟踪阶段越小,锁定时的相位误差越小,但捕获时间越长;模式值越小,追踪阶段越大,锁住时拓朴错误越大,但撷取时间越短。k可变模式可逆计数器的VERILOG设计代码如下(请参见以斜体显示的部分):模块k计数器(kclock、reset、dnup、enable、Kmode、carry、borrow);Input Kclock/*系统时钟信号*/Input reset/*全局重置信号*/In

6、put dnup/*相探测器输出的加减控制信号*/Input enable/*可逆计数器计数允许信号*/input2:0Kmode;/*设置计数器模式值信号*/Output carry/*进位脉冲输出信号*/Output borrow/*临时脉冲输出信号*/reg8:0Count;/*可逆计数器*/reg833600Ktop;/*基本模块值寄存器*/*设定计数器模式值根据信号Kmode设定预设模式值登录的值*/Always (Kmode)BeginCase(Kmode)3b 00: ktop=7;3b010:Ktop=153b 01: ktop=313b100:Ktop=633b101:Kto

7、p=1273b110:Ktop=2553b 11: ktop=511Default:Ktop=15EndcaseEnd/*根据相位探测器输出的加减控制信号dnup加减计数器*/always (posedge k clock or posedge reset)BeginIf(重置)count=0;Else if(enable)BeginIf(!Dnup)BeginIf(Count=Ktop)count=0;ElseCount=Count 1;EndElseBeginIf(Count=0)Count=KtopElseCount=Count-1;EndEndEnd/*输出进位脉冲进位和位元脉冲car

8、ry */Assign carry=enable(!dnup)(Count=Ktop);assign borrow=enabled NUP(count=0);Endmodule脉冲加减电路的设计与实现脉冲正负电路完成了环路的频率和相位调整,可以说是数控振荡器。如果没有进位/位元脉冲信号,则平分外部参考时钟。如果有进位脉冲信号,则在输出的分频器信号中插入半个脉冲,以提高输出信号的频率。如果存在临时脉冲信号BORROW,则从输出的二分信号中减去二分之一脉冲,从而降低输出信号的频率。VERILOG设计代码如下:模块IDCounter(IDclock、reset、Inc、dec、IDout);Inpu

9、t IDclock/*系统时钟信号*/Input reset/*全局重置信号*/Input Inc/*脉冲附加信号*/Input dec/*脉冲扣除信号*/Output IDout/*调整后的输出信号*/Wire Q1、Qn1、Q2、Qn2、Q3、Qn3Wire Q4、Qn4、Q5、Qn5、Q6、Qn6、Qn6;Wire Q7、Qn7、Q8、Qn8、Q9、Qn9、q09Wire D7、D8;Ffd ffd1 (idclock、reset、Inc、Q1、qn1);Ffd ffd2 (idclock、reset、dec、Q2、q92);Ffd ffd 3 (idclock、reset、Q1、Q3、

10、qn3);Ffd ffd 4 (idclock、reset、Q2、Q4、qn4);Ffd ffd5 (idclock、reset、Q3、q5、q45);Ffd ffd 6 (idclock、reset、Q4、q6、qn6);Assign D7=(Q9 Qn1 Q3) | (Q9 Q5 Qn3)Assign D8=(qn9 Q2 Q4) | (qn9 q6 qn4)Ffd ffd 7 (idclock、reset、d 7、Q7、q07);Ffd ffd 8 (idclock、reset、d 8、q8、qn8);Jk ffjk (idclock、reset、q07、qn8、q9、q09);Assi

11、gn IDout=(!id clock)| Q9;Endmodule其中FFD是d触发器,JK是JK触发器。回路的所有四个主要部件都设计完毕后,即可将其连接到完整的DPLL,以验证模拟、合成和功能的正确性。DPLL FPGA实现此设计的第一个DPLL使用XILINX的FOUNDATION4.1软件设计,使用XILINX的SPARTAN2系列XC2S15 FPGA设备实现,并使用Modelsim5.5d软件模拟。结果表明,DPLL时钟可以达到120MHz,性能更好。仅使用了87个LUT和26个触发器,资源很少使用。以下是DPLL中操作过程的详细说明:(1)在回路解锁的情况下,xoin (iso或

12、门相位探测器比较输入信号)和输出信号(CLOCKOUT)之间的相位差异,并生成k可变模式可逆计数器的系数方向控制信号(dnup)。(2) K可变模式可逆计数器根据计数方向控制信号(DNUP)调整仪表值。DNUP执行高倒计时,并在计数值达到0时输出直接脉冲信号(borrow)。加低值,当计数值达到默认k模式值时输出进位脉冲信号(carry)。(3)脉冲正负电路根据进位脉冲信号(CARRY)和波罗脉冲信号(BORROW),在电路输出信号(IDOUT)中执行脉冲增加和减少操作,以调整输出信号的频率。(4)重复上述调整过程,当回路处于锁定状态时,另一个或栅极相位检测器的输出DNUP将周期50%方波,k

13、可变模式可逆计数器定期生成进位脉冲输出CARRY和比特脉冲输出BORROW,从而使脉冲加法和减法电路的输出IDOUT定期添加和减去半脉冲。关于第一级DPLL的讨论移除“波浪”(Ripple)在DPLL操作过程中,回路锁定时,xor门相位探测器的输出DNUP为50%的方波。因为k可变模式可逆计数器总是在DPLL的基本结构中工作。因此,在锁定回路的情况下,如果模拟-数字k值较小,k-可变模式可逆计数器将定期输出进位脉冲信号CARRY和位脉冲信号BORROW,在脉冲加法和减法电路中产生周期性脉冲添加和扣除动作,从而在脉冲加法和减法电路的输出信号IDOUT中产生称为“波现象”的周期性错误。如果模拟-数字k值等于或大于,则k必须大于m/4。对于边缘控制相位检测器,如果k必须大于M/2,则这些“涟漪”错误可以在n个周期内发生一次(n个计数器除外)。也就是说,k可变模式可逆计数器的进位脉冲信号CARRY和比特脉冲信号BORROW的周期是n个参考时钟周期。为了消除“涟漪”错误,可以为k可变模式可逆计数器生成允许计数信号ENABLE。如果环路解锁,则此信号有效并允许计数。回路锁定时,此信号无效,禁止计数不会

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论