进行修调时,当输出频率在目标频率范围之内时,认为修调成功,不再改变trim值,否则连续修正trim值直到修调成功或者达到最大修调次数。改变trim值的方法常日有两种。一种是遍历法,一种是。假设trim值是N bit。利用遍历法时,trim值每次改变1,最大修调次数是2N;利用二分法时,trim值每次改变2n,n为小于N的整数,最大修调次数是N。
遍历法掌握大略,当遍历了所有的trim值时,能找到最优的trim值,但测试韶光较长。比较遍历法,二分法中每次trim值的改变都会打消当前可取trim值范围内一半的trim值,全体过程中只取几个分外的trim值,因此测试韶光短,但存在可能找不到最优trim值的问题。当只哀求把时钟频率修调到目标范围内且不须要探求到最优trim值时,利用二分法可以节省较多的测试韶光,降落测试本钱,且N值越大,节省的韶光越多。

本文利用二分法设计时钟模块的自动修调电路,可以对时钟模块进行快速修调,降落测试本钱。

1 二分法事理
二分法常用于求函数零点的近似值,事理是:取函数f(x)零点所在区间[a,b]的中点,比较区间中点处的值f((a+b)/2)和0的大小,根据比较结果用(a+b)/2代替a或者b,重复上述步骤,使区间的两个端点逐步逼近零点,进而就可求得零点近似值。该方法的利用条件是:函数f(x)在区间[a,b]上连续且f(a)·f(b)<0。
将二分法运用到时钟模块的修调中,假设时钟模块可取的trim值范围是[trim_l,trim_h],时钟频率和trim值的关系是f(trim),目标频率范围是[fl,fh]。根据二分法的利用条件,可知,当[f(trim_l)-fh]·[f(trim_h)-f1]<0时,可以利用二分法来求知足条件的trim值。
其余,由于trim值是离散的,当 trim的step大于目标频率的变革范围时,可能不存在使时钟模块的输出处于目标频率范围内的trim值,如图1所示。
图1中trim step大于目标频率的变革范围,导致每个trim值都无法对应到目标频率范围内,找不到知足哀求的trim值。因此设定的目标频率变革范围该当大于trim step并且在芯片正常事情哀求的范围之内。
2 自动修调电路设计
自动修调电路紧张由脉冲同步器Syn、计数器Counter、比较器Compare、修正trim值模块Adjust组成。修调电路的布局以及和外部ATE、时钟模块OSC的连接关系如图2所示,pulse是ATE供应的慢速脉冲,clk是须要修调的时钟,trim_value[N-1:0]是OSC模块的trim值。
修调电路的事情事理如图3所示,图中c1是在ATE供应的脉冲高电日常平凡代对clk进行计数的计数值;c2是脉冲个数计数器。为了简化电路设计,不采取比较clk实际频率和目标频率范围的方法判断是否修调成功,而是将目标频率范围[fl,fh]转化成计数器c1的目标取值范围[Llimit,Hlimit],如果计数结束时c1的值在[Llimit,Hlimit]之间,则认为修调成功。本文假设OSC输出时钟频率随着trim值的增加大致呈增加趋势。
trim的初始值设为中间值2N-1,c1和c2的初始值设为0。
修调电路吸收ATE供应的慢速脉冲pulse和OSC的输出时钟clk。在pulse的高电日常平凡代对clk计数,高电平结束后,将计数值c1与设定的计数值高下限比较。比较结果有三种情形:(1)c1大于Llimit并且小于Hlimit,解释OSC输出频率处于目标频率范围,修调成功;(2)c1大于上限Hlimit,解释OSC输出频率高于目标频率范围,将trim值向降落OSC输出频率的方向调度;(3)c1小于Llimit,解释OSC输出频率低于目标频率范围,将trim值向增高OSC输出频率的方向调度。比较结果为(2)和(3)两种情形时,调度trim值之后重复上述步骤。如果输入N次慢速脉冲后仍旧没有修调成功,那么认为不能通过改变trim值将时钟模块的输出频率修调到目标范围,修调失落败。
3 慢速脉冲同步和丈量偏差
ATE输出的pulse和OSC输出的clk是异步关系,以是须要将pulse同步到clk时钟域之后利用。同步电路用两级级联的寄存器实现,如图4所示。
假设pulse宽度即是(m+n)T,个中m为任意正整数,n为小于1的任意实数,T为clk的周期。同步后的pulse_syn相对同步前的pulse脉冲宽度会有所改变,最大偏差是pulse_syn的脉宽比pulse的脉宽近似多一个clk周期或者少一个clk周期,因此clk的计数结果cnt1与m+n的最大差值的约即是±1。
以m=2为例对同步前后的脉冲宽度进行剖析,如图5所示。
当n=0时,pulse可能会被2或者3个clk上升沿采集到。被两个上升沿采到时,不会发生亚稳态,同步前后的脉冲宽度不变,如图5(a)所示;被三个上升沿采到时,脉冲的前后沿都会发生亚稳态,亚稳态稳定结果的随机性使得同步前后的脉冲宽度不同[5],如图5(b)~图5(e)所示。
从图5中可以看出当同步前的脉冲宽度即是2倍clk周期时,同步后的脉冲宽度可能是1、2、3个clk周期,同步造成的脉宽偏差最大是1个clk周期。当n≠0时,pulse可能被 2个或者3个或者4个clk上升沿采集到,剖析方法同n=0,同步后脉宽最大偏差约即是1个clk周期。
下面剖析由于脉宽变革导致的clk频率丈量偏差。
同步之前的脉冲宽度为:
由式(5)可知,ATE供应的脉冲宽度越宽,频率丈量偏差越小。
增加脉冲宽度可以减小测试偏差,但同时也会增加测试韶光,因此须要在测试偏差和测试韶光之间进行平衡。
其余,为了担保trim值的每次改变都能有效地表示出来,不被脉冲同步所造成的偏差粉饰,在脉冲宽度不变的情形下,trim值最低位的改变应使计数器c1的值至少改变2。为了知足该哀求,设脉冲宽度最少该当是b s。假设OSC的trim step是a Hz,那么:
式中单位是秒。
通过上述剖析,可知慢速脉冲的宽度该当由丈量偏差和trim step共同决定。
4 仿真结果
根据二分法事理设计时钟模块自动修调电路,被修调的时钟模块的频率和trim值是单调增加的关系,trim位宽为5,trim step大约是fstep=1.5%×2 MHz。目标频率是ftarget=2 MHz,吸收的频率范围是ftarget±2%,即1.96 MHz~2.04 MHz,哀求丈量偏差小于±1%。由式(1)、式(5)得到的最小脉冲宽度为100/(1.96×106)≈51.02 μs;由式(6)得到的最小脉冲宽度为2/fstep=2/(2×106×0.015)≈66.7 μs。因此最小脉冲宽度为66.7 μs。为了减少丈量偏差且测试韶光在承受范围内,此处选择500 μs的脉冲宽度。计数器c1的高下限分别对应于2.04 MHz和1.96 MHz,它们的值分别是1 020和980。仿真结果如图6所示,为了方便不雅观察,将c1的值转化仿照波形显示。图6(a)中在输入第3次脉冲后success旗子暗记变高,表示自动修调成功。修正时钟模型后再次进行仿真,如图6(b)所示,在最大修调次数,即输入第5次脉冲后fail旗子暗记变高,表示时钟模块的输出偏离目标范围太多,无法通过修调使其输出频率知足哀求。
从仿真结果可以看出,对付trim位宽为5的时钟模块,设计的自动修调电路能够在不多于5次输入脉冲后给出修调结果。
5 结论
对集成电路的时钟模块进行测试时,须要探求处于目标频率范围的trim值。为了减少测试韶光,设计自动修调电路,修调电路利用二分法改变trim值,二分法相对遍历法具有更快的收敛速率,trim值的变革范围越大,二分法在测试韶光上的上风越明显。ATE供应的最小脉冲宽度该当由许可的丈量偏差和trim step共同决定。
参考文献
[1] 葛南,陈东坡.ATE测试中的Bandgap Trim技能研究[J].微电子学与打算机,2015,32(4):70-78.
[2] 葛南.DC_DC Buck芯片ATE测试中的Trim技能研究[D].上海:上海交通大学,2015.
[3] 李侠.离线式开关电源掌握芯片功率器件及部分子电路设计[D].成都:电子科技大学,2011.
[4] 李文昌,王继安,李威,等.修调技能在高精度集成电路中的实现[J].微处理机,2006(1):1-2.
[5] 吴厚航.深入浅出玩转FPGA [M].北京:北京航空航天算夜学出版社,2010.
作者信息:
孟 博1,2,颜 河1,2,管金凤1,2
(1.北京智芯微电子科技有限公司 国家电网公司重点实验室 电力芯片设计剖析实验室,北京100192;
2.北京智芯微电子科技有限公司 北京市电力高可靠性集成电路设计工程技能研究中央,北京100192)









