P1 | reference spur of SFB-PLL (JSSC-2013)
关于锁相环中spur的基本理解以及计算详情可以仔细拜读这篇博客:关于 PLL 中的 Reference Spur 的问题
在CMOS PLL设计中,降低reference spur常见的方法有:
- 使用高阶滤波器,但是会降低相位裕度,使得系统不稳定的可能性加大。[C.M. Huang JSSC 2002][S. Pellerano JSSC 2004]
- 减小环路带宽以降低spur,但是会增加锁定时间、减小对VCO相噪的衰减。[W. B. Wilson JSSC 2000] 与锁定时间之间的trade off可以通过dual-loop的结构来实现,先用在大环路带宽下工作,要锁定了再切换到窄带宽环。
- 采用低Kvco的振荡器,牺牲了频带调谐范围。[C.-Y.Kuo TCASI]
除此之外,[M. M. Elsayed JSSC2013]提出了一种spur-frequency-boosting的技术,以图同时实现低杂散和宽环路带宽。
在这篇文章中以二阶锁相环为例,推导了spur的公式(其中ωp\omega_{p}ωp表示滤波器极点、ωGBW\omega_{GBW}ωGBW表示环路带宽,二者之间的比值与相位裕度有关):
并提出了杂散FOM,将有影响的factor减去可以保证在归一化settling time的情况下进行对比:
spur-frequency-boosting技术
在PFD和CP之间加一个spur-frequency booster,TVC(time-to–voltage converter)将PFD产生的脉冲变成电平,然后通过VTC转变成频率为fBf_{B}fB的脉冲序列。UP和DN支路的VTC都是由fBf_{B}fB控制,那么会将PFD产生信号的mismatch消除。此时spur公式如(8)式所示,由于fBf_{B}fB的频率比freff_{ref}fref高,从而提高了杂散的抑制。但是也会带来Phase margin的变化,需要好好平衡调节。
schematic of TVC:
where schematic of ED is: 用ED来确定电容停止充电的时间。
schematic of VTC:
从测试结果来看,对6MHz处的reference spur 确实有较好的抑制作用。但同时也引进了更远的fBf_{B}fB处的杂散(70MHz & 150MHz).。但整体的噪声性能不是很好:-60.5dBc/Hz@100kHz, -104dBc/Hz@6MHz,可能跟VCO性能有关系,不过文章并没有把VCO的结构给出来。另外,电平和脉冲之间的转换多多少少会带来一定的量化噪声吧。
另外,来自clock feed-through,charge injection和substrate leakage的杂散依旧没有被抑制。
参考文献:
M. M. Elsayed, M. Abdul-Latif and E. Sánchez-Sinencio, “A Spur-Frequency-Boosting PLL With a −74 dBc Reference-Spur Suppression in 90 nm Digital CMOS,” in IEEE Journal of Solid-State Circuits, vol. 48, no. 9, pp. 2104-2117, Sept. 2013, doi: 10.1109/JSSC.2013.2266865.
另一篇文献Choi, J. et al. “A Spur Suppression Technique Using an Edge-Interpolator for a Charge-Pump PLL.” IEEE Transactions on Very Large Scale Integration (VLSI) Systems 20 (2012): 969-973.的道理也是一样的:
最后产生x8的reference频率。
P1 | reference spur of SFB-PLL (JSSC-2013)相关推荐
- C++11中shared_ptr的使用
在C++中,动态内存的管理是通过一对运算符来完成的:new,在动态内存中为对象分配空间并返回一个指向该对象的指针,可以选择对对象进行初始化:delete,接受一个动态对象的指针,销毁该对象,并释放与之 ...
- 52-20210322华为海思Hi3516DV300的linux系统编译(eMMC模式)1
52-20210322华为海思Hi3516DV300的linux系统编译(eMMC模式) 2021/3/22 18:00 请严重注意: 本文所使用的的SDK是:Hi3516CV500R001C02SP ...
- 【Smart_Point】C/C++ 中共享指针 shared_ptr
1. 共享指针 shared_ptr 目录 1. 共享指针 shared_ptr 1.1 共享指针解决的问题? 1.2 创建 shared_ptr 对象 1.3 分离关联的原始指针 1.4 自定义删除 ...
- 淘宝用了mysql,您呢?
淘宝内部分享:怎么跳出MySQL的10个大坑 编者按:淘宝自从2010开始规模使用MySQL,替换了之前商品.交易.用户等原基于IOE方案的核心数据库,目前已部署数千台规模.同时和Oracle, ...
- Remove Duplicates from Sorted Array II leetcode java
题目: Follow up for "Remove Duplicates": What if duplicates are allowed at most twice? For e ...
- 找回Kitkat的AppOps
2019独角兽企业重金招聘Python工程师标准>>> How to invoke AppOps in Android 4.4 KITKAT % adb shell am start ...
- rsem比对_RSEM方法比对和表达量计算
分析模块,封装了Trinity程序包中的"align_and_estimate_abundance.pl"脚本,进行原始数据与转录本序列的比对和表达量计算.其中,核心程序为,Bow ...
- Path Sum leetcode java
题目: Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up ...
- 如何在VS2013中隐藏引用计数?
本文翻译自:How to hide reference counts in VS2013? Visual Studio 2013 introduced a new feature where it s ...
最新文章
- linux c socket 服务器 客户端 简单通讯
- 数据结构与算法——二叉树的深度优先遍历
- springboot项目中的注解 启动项目的方式 解决spring的bean.xml配置不生效 spring的基础JDBC配置
- Struts2的两个蝴蝶飞,你好简单开发(一)
- c语言单字符输入和输出函数分别为,第03章单元总练习-实训-知识拓展.doc
- 4.2 SE38数据对象
- android 传感器的学习
- PDF免费转word方法
- 【渗透测试】—如何利用文件包含的方式进行攻击
- Android 一个页面上下两个ListView的页面显示
- Cron表达式 定时执行说明
- php代码审计系列教程,PHP代码审计工具——Rips详细使用教程
- 精密电阻选购及换算方法
- Python:运行时隐藏窗口
- 麒麟KY-RTI分布仿真技术:第三章 KY-OMT对象模型模板工具
- Java 接口规范与最佳实践
- python时间和周期_python实现以立春为起点n为周期任意日期所在的日期区间
- 2411681-88-2,Thalidomide-O-PEG4-NHS ester它与胺部分反应
- 腾讯云对象存储空间分片、断点续传功能的封装与使用
- Beyond Compare软件使用详解