文獻(xiàn)標(biāo)識碼: A
DOI:10.16157/j.issn.0258-7998.182211
中文引用格式: 孟博,,顏河,,管金鳳. 時(shí)鐘模塊自動修調(diào)電路設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2019,45(5):14-16,,22.
英文引用格式: Meng Bo,,Yan He,Guan Jinfeng. Design of auto trim circuit for clock generation module[J]. Application of Electronic Technique,,2019,,45(5):14-16,22.
0 引言
集成電路的生產(chǎn)過程中,制造工藝會有一定的偏差,,造成生產(chǎn)出的時(shí)鐘模塊的輸出不符合要求[1],。因此需要通過改變trim值調(diào)節(jié)時(shí)鐘模塊的相關(guān)參數(shù),將其輸出頻率修調(diào)至目標(biāo)頻率范圍,,從而提高芯片良率[2-3],。
進(jìn)行修調(diào)時(shí),當(dāng)輸出頻率在目標(biāo)頻率范圍之內(nèi)時(shí),,認(rèn)為修調(diào)成功,,不再改變trim值,否則繼續(xù)修改trim值直到修調(diào)成功或者達(dá)到最大修調(diào)次數(shù),。改變trim值的方法通常有兩種,。一種是遍歷法,一種是二分法,。假設(shè)trim值是N bit,。使用遍歷法時(shí),trim值每次改變1,最大修調(diào)次數(shù)是2N,;使用二分法時(shí),,trim值每次改變2n,n為小于N的整數(shù),,最大修調(diào)次數(shù)是N,。
遍歷法控制簡單,當(dāng)遍歷了所有的trim值時(shí),,能找到最優(yōu)的trim值,,但測試時(shí)間較長。相比遍歷法,,二分法中每次trim值的改變都會排除當(dāng)前可取trim值范圍內(nèi)一半的trim值,,整個(gè)過程中只取幾個(gè)特殊的trim值,因此測試時(shí)間短,,但存在可能找不到最優(yōu)trim值的問題,。當(dāng)只要求把時(shí)鐘頻率修調(diào)到目標(biāo)范圍內(nèi)且不需要尋找到最優(yōu)trim值時(shí),使用二分法可以節(jié)省較多的測試時(shí)間,,降低測試成本,,且N值越大,節(jié)省的時(shí)間越多,。
本文利用二分法設(shè)計(jì)時(shí)鐘模塊的自動修調(diào)電路,,可以對時(shí)鐘模塊進(jìn)行快速修調(diào),降低測試成本,。
1 二分法原理
二分法常用于求函數(shù)零點(diǎn)的近似值,,原理是:取函數(shù)f(x)零點(diǎn)所在區(qū)間[a,b]的中點(diǎn),,比較區(qū)間中點(diǎn)處的值f((a+b)/2)和0的大小,,根據(jù)比較結(jié)果用(a+b)/2代替a或者b,重復(fù)上述步驟,,使區(qū)間的兩個(gè)端點(diǎn)逐步逼近零點(diǎn),,進(jìn)而就可求得零點(diǎn)近似值。該方法的使用條件是:函數(shù)f(x)在區(qū)間[a,,b]上連續(xù)且f(a)·f(b)<0,。
將二分法應(yīng)用到時(shí)鐘模塊的修調(diào)中,假設(shè)時(shí)鐘模塊可取的trim值范圍是[trim_l,,trim_h],,時(shí)鐘頻率和trim值的關(guān)系是f(trim),目標(biāo)頻率范圍是[fl,,fh],。根據(jù)二分法的使用條件,可知,當(dāng)[f(trim_l)-fh]·[f(trim_h)-f1]<0時(shí),,可以使用二分法來求滿足條件的trim值,。
另外,由于trim值是離散的,,當(dāng) trim的step大于目標(biāo)頻率的變化范圍時(shí),,可能不存在使時(shí)鐘模塊的輸出處于目標(biāo)頻率范圍內(nèi)的trim值,如圖1所示,。
圖1中trim step大于目標(biāo)頻率的變化范圍,,導(dǎo)致每個(gè)trim值都無法對應(yīng)到目標(biāo)頻率范圍內(nèi),找不到滿足要求的trim值,。因此設(shè)定的目標(biāo)頻率變化范圍應(yīng)該大于trim step并且在芯片正常工作要求的范圍之內(nèi),。
2 自動修調(diào)電路設(shè)計(jì)
自動修調(diào)電路主要由脈沖同步器Syn、計(jì)數(shù)器Counter,、比較器Compare,、修改trim值模塊Adjust組成。修調(diào)電路的構(gòu)造以及和外部ATE,、時(shí)鐘模塊OSC的連接關(guān)系如圖2所示,pulse是ATE提供的慢速脈沖,,clk是需要修調(diào)的時(shí)鐘,,trim_value[N-1:0]是OSC模塊的trim值。
修調(diào)電路的工作原理如圖3所示,,圖中c1是在ATE提供的脈沖高電平期間對clk進(jìn)行計(jì)數(shù)的計(jì)數(shù)值,;c2是脈沖個(gè)數(shù)計(jì)數(shù)器。為了簡化電路設(shè)計(jì),,不采用比較clk實(shí)際頻率和目標(biāo)頻率范圍的方法判斷是否修調(diào)成功,,而是將目標(biāo)頻率范圍[fl,fh]轉(zhuǎn)化成計(jì)數(shù)器c1的目標(biāo)取值范圍[Llimit,,Hlimit],,如果計(jì)數(shù)結(jié)束時(shí)c1的值在[Llimit,Hlimit]之間,,則認(rèn)為修調(diào)成功,。本文假設(shè)OSC輸出時(shí)鐘頻率隨著trim值的增加大致呈增加趨勢。
trim的初始值設(shè)為中間值2N-1,,c1和c2的初始值設(shè)為0,。
修調(diào)電路接收ATE提供的慢速脈沖pulse和OSC的輸出時(shí)鐘clk。在pulse的高電平期間對clk計(jì)數(shù),,高電平結(jié)束后,,將計(jì)數(shù)值c1與設(shè)定的計(jì)數(shù)值上下限比較。比較結(jié)果有三種情況:(1)c1大于Llimit并且小于Hlimit,說明OSC輸出頻率處于目標(biāo)頻率范圍,,修調(diào)成功,;(2)c1大于上限Hlimit,說明OSC輸出頻率高于目標(biāo)頻率范圍,,將trim值向降低OSC輸出頻率的方向調(diào)整,;(3)c1小于Llimit,說明OSC輸出頻率低于目標(biāo)頻率范圍,,將trim值向增高OSC輸出頻率的方向調(diào)整,。比較結(jié)果為(2)和(3)兩種情況時(shí),調(diào)整trim值之后重復(fù)上述步驟,。如果輸入N次慢速脈沖后仍然沒有修調(diào)成功,,那么認(rèn)為不能通過改變trim值將時(shí)鐘模塊的輸出頻率修調(diào)到目標(biāo)范圍,修調(diào)失敗,。
3 慢速脈沖同步和測量誤差
ATE輸出的pulse和OSC輸出的clk是異步關(guān)系,,所以需要將pulse同步到clk時(shí)鐘域之后使用。同步電路用兩級級聯(lián)的寄存器實(shí)現(xiàn),,如圖4所示,。
假設(shè)pulse寬度等于(m+n)T,其中m為任意正整數(shù),,n為小于1的任意實(shí)數(shù),,T為clk的周期。同步后的pulse_syn相對同步前的pulse脈沖寬度會有所改變,,最大誤差是pulse_syn的脈寬比pulse的脈寬近似多一個(gè)clk周期或者少一個(gè)clk周期,,因此clk的計(jì)數(shù)結(jié)果cnt1與m+n的最大差值的約等于±1。
以m=2為例對同步前后的脈沖寬度進(jìn)行分析,,如圖5所示,。
當(dāng)n=0時(shí),pulse可能會被2或者3個(gè)clk上升沿采集到,。被兩個(gè)上升沿采到時(shí),,不會發(fā)生亞穩(wěn)態(tài),同步前后的脈沖寬度不變,,如圖5(a)所示,;被三個(gè)上升沿采到時(shí),脈沖的前后沿都會發(fā)生亞穩(wěn)態(tài),,亞穩(wěn)態(tài)穩(wěn)定結(jié)果的隨機(jī)性使得同步前后的脈沖寬度不同[5],,如圖5(b)~圖5(e)所示。
從圖5中可以看出當(dāng)同步前的脈沖寬度等于2倍clk周期時(shí),,同步后的脈沖寬度可能是1,、2,、3個(gè)clk周期,同步造成的脈寬誤差最大是1個(gè)clk周期,。當(dāng)n≠0時(shí),,pulse可能被 2個(gè)或者3個(gè)或者4個(gè)clk上升沿采集到,分析方法同n=0,,同步后脈寬最大誤差約等于1個(gè)clk周期,。
下面分析因?yàn)槊}寬變化導(dǎo)致的clk頻率測量誤差。
同步之前的脈沖寬度為:
由式(5)可知,,ATE提供的脈沖寬度越寬,,頻率測量誤差越小。
增加脈沖寬度可以減小測試誤差,,但同時(shí)也會增加測試時(shí)間,,因此需要在測試誤差和測試時(shí)間之間進(jìn)行平衡。
另外,,為了保證trim值的每次改變都能有效地體現(xiàn)出來,,不被脈沖同步所造成的誤差掩蓋,在脈沖寬度不變的情況下,,trim值最低位的改變應(yīng)使計(jì)數(shù)器c1的值至少改變2,。為了滿足該要求,設(shè)脈沖寬度最少應(yīng)該是b s,。假設(shè)OSC的trim step是a Hz,,那么:
式中單位是秒。
通過上述分析,,可知慢速脈沖的寬度應(yīng)該由測量誤差和trim step共同決定。
4 仿真結(jié)果
根據(jù)二分法原理設(shè)計(jì)時(shí)鐘模塊自動修調(diào)電路,,被修調(diào)的時(shí)鐘模塊的頻率和trim值是單調(diào)增加的關(guān)系,,trim位寬為5,trim step大約是fstep=1.5%×2 MHz,。目標(biāo)頻率是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。為了減少測量誤差且測試時(shí)間在承受范圍內(nèi),,此處選擇500 μs的脈沖寬度,。計(jì)數(shù)器c1的上下限分別對應(yīng)于2.04 MHz和1.96 MHz,,它們的值分別是1 020和980。仿真結(jié)果如圖6所示,,為了方便觀察,,將c1的值轉(zhuǎn)化模擬波形顯示。圖6(a)中在輸入第3次脈沖后success信號變高,,表示自動修調(diào)成功,。修改時(shí)鐘模型后再次進(jìn)行仿真,如圖6(b)所示,,在最大修調(diào)次數(shù),,即輸入第5次脈沖后fail信號變高,表示時(shí)鐘模塊的輸出偏離目標(biāo)范圍太多,,無法通過修調(diào)使其輸出頻率滿足要求,。
從仿真結(jié)果可以看出,對于trim位寬為5的時(shí)鐘模塊,,設(shè)計(jì)的自動修調(diào)電路能夠在不多于5次輸入脈沖后給出修調(diào)結(jié)果,。
5 結(jié)論
對集成電路的時(shí)鐘模塊進(jìn)行測試時(shí),需要尋找處于目標(biāo)頻率范圍的trim值,。為了減少測試時(shí)間,,設(shè)計(jì)自動修調(diào)電路,修調(diào)電路使用二分法改變trim值,,二分法相對遍歷法具有更快的收斂速度,,trim值的變化范圍越大,二分法在測試時(shí)間上的優(yōu)勢越明顯,。ATE提供的最小脈沖寬度應(yīng)該由允許的測量誤差和trim step共同決定,。
參考文獻(xiàn)
[1] 葛南,陳東坡.ATE測試中的Bandgap Trim技術(shù)研究[J].微電子學(xué)與計(jì)算機(jī),,2015,,32(4):70-78.
[2] 葛南.DC_DC Buck芯片ATE測試中的Trim技術(shù)研究[D].上海:上海交通大學(xué),2015.
[3] 李俠.離線式開關(guān)電源控制芯片功率器件及部分子電路設(shè)計(jì)[D].成都:電子科技大學(xué),,2011.
[4] 李文昌,,王繼安,李威,,等.修調(diào)技術(shù)在高精度集成電路中的實(shí)現(xiàn)[J].微處理機(jī),,2006(1):1-2.
[5] 吳厚航.深入淺出玩轉(zhuǎn)FPGA [M].北京:北京航空航天大學(xué)出版社,2010.
作者信息:
孟 博1,,2,,顏 河1,2,,管金鳳1,,2
(1.北京智芯微電子科技有限公司 國家電網(wǎng)公司重點(diǎn)實(shí)驗(yàn)室 電力芯片設(shè)計(jì)分析實(shí)驗(yàn)室,,北京100192;
2.北京智芯微電子科技有限公司 北京市電力高可靠性集成電路設(shè)計(jì)工程技術(shù)研究中心,,北京100192)