文獻(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)