接上文,本章将两个比较重要的非理想因素,因此各项指标制定。后续会对常见的非理想因素给出常见的解决方法,以及设计所采用的方法。
2.2.7. 比较器失调
在流水线 ADC 中,比较器的主要误差来源就是比较器失调,称为失调误差(Offset Error)。比较器失调通常由工艺偏差和交叉耦合导致的不对称所导致,所以几乎无法避免。失调误差会使得比较器比较电平发生偏移,有可能会导致误码,甚至丢码。泛采用冗余校准技术,这大大降低了对比较器失调误差的要求,但仍需使失调误差在校准允许的范围内,同时也要保证比较器的工作速度。
比较器的输入失调电压通常在几十至几百毫伏之间,因此其对子 ADC 整体输出结果产生的影响是不容小觑的。当前解决比较器输入失调电压过大的方法普遍是在前级加入放大器,虽然加入前置比较器会引入更大的功耗,但是对于流水线 ADC 来说,对于 ADC 的位数要求并不高,通常不会超过 4 位,因此加入前置放大器是一个比较合适的方案,既可以降低比较器的输入失调电压,并且也可以作为隔离消除噪声。
发生比较器阈值电压误差的 1.5bit MDAC 传输曲线如图所示,实线表示理想情况,虚线表示误差下的情况。
图 18 存在比较器阈值电压误差的MDAC传输曲线
数字校正算法的分析,这种算法对于比较器的失调电压提供了更加宽松的设计要求。假设一个比较器失调电压为 Vos,如图所示:
图 19 比较器示意图
以 1.5 位子级为例,第 i 级的参考电平设为-1/4Vref 与+1/4Vref,即 Vr1=-1/4Vref,Vr2=+1/4Vref。实际的比较器在应用中,必然存在失调电压 Vos,这里将比较器的误差用参考电平误差来表示,即 Vr1=-1/4Vref+Vos1,Vr2=+1/4Vref+Vos1,当 Vr,i满足式:
此时该级出现的量化误差即为+1 或-1,输出的余量误差可以表示为-Vref或+Vref。如果 Vr,i不在上述范围,该级将不会产生上述误差。
下面详细推导数字校正算法中如何消除比较器的失调,对于第 i 级,假设输入:
当第 i+1 级为理想比较器时,该级所的到得量化值 Di+1*=2 余量为:
可得出:
综上所述可以得出当流水线采用 1.5 位的子级模块,将比较器的失调电压等效到参考电平的误差,只要该误差值满足一定条件,通过数字校正算法可以进行消除。在电路设计过程中,只要保证比较器失调电压在一定范围内,就不会导致 ADC 量化结果产生误差。
如图所示,如果 |Vos|>1/4*Vref ,该级的余量会超出下一级比较器的量化范围,所以为了不产生量化结果的误差,比较器失调电压必须满足 |Vos|<1/4*Vref 。
图 20 1.5 位子级失调电压示意图
上述推导过程为 1.5 位子级的比较器需要满足的失调电压要求,同理可以推导出本设计采用的 2.5 位子级中对于比较器失调电压的指标要求为:
2.2.8. 放大器误差
由于实际运放的直流增益以及带宽均为有限值。对于一个运放的闭环系统,运放的直流增益决定了该反馈系统的输出精度,带宽则决定了运放的建立时间,输出要在规定时间内完整建立信号。实际的运放不可能做到理想情况,增益和带宽是有限的,则会造成电路中存在误差。运放的性能决定了 MDAC 电路的性能。
在非理想情况下,运算放大器的增益、带宽以及摆幅都是有限的,还会有失调和噪声,在考虑这些非理想因素的情况下,设 A 为运算放大器开环增益,Vos 为运放输出失调电压,Vn为运放输出总噪声,β 为反馈系数,由运算放大器工作原理可得:
上式中划线部分是理想的输出。其中静态误差和动态误差分别为:
静态误差主要由于运放的开环增益 A 有限而引起的,动态误差则是源于有限的运放带宽。对于 MDAC 电路而言,要想输出精度满足设计指标,要求两种误差之和小于系统总误差。
(1)静态建立误差
对于一个闭环系统,假设运放的直流增益为 A,闭环系统的反馈系数为 β。其传输函数可以表示为:
该闭环系统的误差为:
对于本课题中采样保持电路和 MDAC 中的运放,Aβ 远大于 1。同时,由于电路在满摆幅 VFS 时有最大的误差,且 VFS=1V。所以,由运放有限增益带来的误差近似为:
对于流水线 ADC,为了设计时留有裕量,一般要求误差绝对值小于剩余精度的 1/4LSB,即:
对于流水线不同子级,根据电路结构以及流水线架构,存在不同的 β 值和 N。其中采样保持电路反馈系数 β 为 1/2,在流水线子级的 MDAC 中,反馈系数则为 1/4。由于每一级都会有部分数字码完成转换,所以越靠后的子级,需要达到的精度越低。对于本设计的流水线结构,每级有两位二进制码完成转换,每一级 N 的值减小 2。由此可以计算出每一级所使用的运放所需要的直流增益。
下图为有限增益下 1.5bit MDAC 传输函数曲线,可见实际曲线斜率略小于理想情况。
图 21 运放有限增益误差下的MDAC输出
下图是考虑到运放增益非线性影响下的 1.5bit MDAC 的输出曲线。当运放第 二级的差分输出为 0,即 2 个输出端电平为VCM时,运放开环增益最大;输出越偏离 VCM,开环增益越低。表现为 MDAC 输出曲线越偏离 0,其斜率越低。考虑到为了降 低增益非线性的影响,应该减小第二级输出管的过驱动电压,避免满摆幅输出时第二 级输出管接近线性区引起增益大幅下降。
图 22 运放增益非线性下的MDAC输出
(2)动态建立误差
通常来说 MDAC 的工作过程中离不开对电容的充放电过程,然而电荷的存储和 泄放均需要时间,这也使得电容极板电位不可能产生突变,必然是一个缓慢变化的过程,从变化开始到电平稳定需要一定的建立时间。但流水线 ADC 受到时钟的控制,这就要求其需要在有限的时间周期内完成信号建立,因此该建立时间同时钟周期的相互制约便引入了有限建立误差。
图 23 输出建立不完全下MDAC传输曲线
在流水线 ADC 中,运放的输出信号要在给定的时钟下完成信号建立。运放的有限带宽也会影响到输出信号的建立,这种误差叫做不完全建立误差。当输入为一个大的阶跃信号,输出信号的建立可以分为两个过程,即大信号建立和小信号建立。其中小信号建立与运放的增益带宽有关,大信号建立则与运放的摆率有关。信号的建立过程如图所示:
图 24 运放建立过程示意图
其中 t1、t2 分别为大信号建立时间(和压摆率SR有关)和小信号建立时间(和带宽有关),通常情况下,小信号建立时间更长,这里假设 t1 与 t2 的比为 1:3,运放的总建立时间为 t。为了满足建立精度,输出要在时钟信号的半周期内(t =Ts / 2)完成建立。
a. 大信号建立
在 MDAC 工作过程中,运放首先进入大信号工作状态,建立起静态工作点,然后开始小信号放大。大信号建立的速度主要取决于压摆率(Slew Rate)的大小,一般来说大信号建立时间应小于 T/3,但实际上为了小信号的稳定,大信号建立时间应该越小越好,带宽的大小决定了小信号建立的速度。将 MDAC 中的运放视为一个单极点系统,其压摆率为:
其中 CL是运放总负载电容,Is 是输出电流,由此可见,电流越大、负载电容越小,运放的压摆率越大,其大信号建立时间也更短。
(对于大信号压摆率,根据网上搜罗的,如果采用二级运放的话,压摆率如下,总之就是电流要大,电容要小)
b. 小信号建立
由有限带宽导致的小信号建立误差同样可以由此单极点系统来近似,在只考虑运放带宽非理想因素的情况下,其传输函数为:
其中 Vout,id 是理想输出,ts 为小信号建立时间,一般要求 ts 小于时钟周期的一半,但实际上,为了后级流水级能够较好的采样到准确的输出信号,ts 越小越好,通常取 ts<1/3T,τ 是建立时间常数,它是运放闭环单位增益带宽 βωu 的倒数,ωu 是运放开环带宽。
则系统的建立误差可以表示为:
ω-3dB为系统的-3dB 带宽,fu 为运放单位增益带宽。为了满足 ADC 精度要求以及留出设计裕量,小信号建立误差要求小于 1/4LSB,假设小信号建立完成需要的时间为 tset,则有:
VFS为 1V,N 为该子级需要达到的精度。由此可以得出,时常数 τ 应该满足式:
进而推导出运放的单位增益带宽应该满足:
(注意这里的VFS为1V,若范围有变的话,带宽要求是不一样的)
从上述分析中可以看出,运放小信号建立的过程中,输出信号之中多了一个指数项,运放闭环单位增益带宽越大,达到相应精度所需的时间越少,建立误差越小,但带宽越大也会带来更多的功耗和噪声,需要依据实际需求进行折中。
还需要注意的是,这个单位增益带宽是以假设运放是单级点系统计算得出的,实际运放由于次级点,第三极点等影响,单位增益带宽会变低,而运放工作时始终是闭环状态,因此只用保证运放的闭环带宽达到要求,对单位增益带宽的设计可放松要求,以减小设计难度以及运放的功耗。
====未完待续====
2.3. 指标初定
2.3.1. 采样电容大小
(1)考虑电容失配
前文说到,为满足 ADC 转换精度要求,由电容失配造成的误差一般要小于 1/2LSB,式中中 k 为工艺参数,WL 为电容的面积。由此可以计算出最小的电容面积,从而确定电容值。
根据TSMC180工艺文件,MIM电容失配的曲线如下图所示,得出上式中k=2.51。按照工艺文件,达到12位精度需要大约50pF的电容,这是不可能实现的。因此采样电容的选择主要由热噪声来决定,对于电容失配通过版图优化。也可以做失配校准。
图 25 PDK MIM电容失配
(2)考虑热噪声
根据上文,本设计流水线ADC的总的噪声功率为6.67*KT/C,则采样电容需要满足,总的噪声小于量化噪声:
采样电容 C 的取值至少为 5.5pF。由此可以初步确定各级的采样电容的值,后级每级电容值以倍数关系缩减,要注意的是,实际电路中,当电容值缩减到与运放输入端寄生电容相当时,由于寄生电容的影响不可忽略,所以电容值将不再缩减。同时,实际电路中更大的缩减倍数数意味着后级电路的功耗降低,但是噪声的贡献更大,对于给定的总噪声,前级的噪声需要更低,电容值就需要更大,功耗也随之上升。所以缩减的比例系数可以看作是在噪声与功耗之间的折衷设计,该系数的值需要通过仿真仔细模拟,使电路总噪声在满足量化噪声要求的情况下保持较低的功耗。
2.3.2. 放大器指标
本设计12位50Mhz的Pipelined,放大器工作时间只有1/2*Ts(10ns),这其中要给Sub-ADC和非交叠时钟预留部分时间,实际工作周期假设只有7~8 ns(按8ns算),其中放大器的工作时间,1/3的时间用于大信号建立(SR),2/3的时间用于小信号建立(BW)。根据公式:
静态建立:
动态建立:
根据公式,计算出各级放大器指标如下表。其中,采样频率为50Mhz,放大器工作时间为10ns,考虑到Sub-ADC延迟以及非交叠时钟时间,假设放大器实际工作时间为8ns,其中3/4用来大信号建立,3/4用来小信号建立。
表 1 各级放大器指标初定
子级 | 反馈系数 | 输出精度 | 设计精度 | 开环增益 | 0dB带宽 | 12dB带宽 | 压摆率 | 采样电容 | 等效负载 |
SHA | 1/2 | 12bit | 14bit | 90dB | 550Mhz | \ | 500V/us | 4or5pF | 8pF |
MDAC1 | 1/4 | 10bit | 12bit | 85dB | 900Mhz | 225Mhz | \ | 4pF | 4pF |
MDAC2 | 1/4 | 8bit | 10bit | 72dB | 750Mhz | 200Mhz | \ | 2pF | 2pF |
MDAC3 | 1/4 | 6bit | 8bit | 60dB | 600Mhz | 150Mhz | \ | 1pF | 2pF |
MDAC4 | 1/4 | 4bit | 6bit | 50dB | 450Mhz | 150Mhz | \ | 1pF | 2pF |
MDAC5 | 1/4 | 2bit | 4bit | 36dB | 300Mhz | 75Mhz | \ | 1pF | 2pF |
实际设计过程中,最起码需要满足上表指标,并留有余量。其中为了简化设计,对于SHA以及每级MDAC的放大器,不用每一级都单独设计,根据需要可以进行复用。
2.3.3. 比较器指标
应用于流水线ADC中的比较器,由于存在流水线级间冗余,根据数字校正算法,对于失调的要求大大放宽,对于噪声的要求也没有那么严苛,但是对于传输延迟和功耗提出了一定的要求。
表 2 比较器指标初定
设计参数 | 要求 |
差分输入摆幅 | 2Vpp |
失调电压3σ | < 62.5mV |
传输延时 | < 1ns |
等效输入噪声 | < 2mV |
误码率 | < 10e-14 |
====未完待续====
至此,影响流水线ADC(Pipelined ADC)性能的各种主要的非理想因素带来的影响介绍完毕,初步制定了个流水线子级模块的指标。
下一步会分模块介绍。会介绍各个模块常用的结构以及工作原理。并给出本设计各个模块所采用的电路结构。
接着会在Cadence中进行电路搭建和仿真。(工作量限制,只会考虑 Typical case,不会进行PVT仿真以及MC仿真)
有能力的话,会进行版图的学习,对部分版图进行绘制,做做DRC和LVS。不过能力有限,不会进行后仿。
会整理一份完整的报告教程,包括各种介绍,原理及仿真等,博客就是摘自撰写的报告内容。电路设计和报告到时候都会放出来。
尽量也出一份MATLAB建模。
研究方向为:Pipeline-SAR ADC with NoiseShaping,有同方向大佬可以交流一下。