丁偉
(愛特梅爾半導(dǎo)體科技(上海)有限公司上海200233)
DFT與ATPG的低功耗設(shè)計(jì)原理與分析
丁偉
(愛特梅爾半導(dǎo)體科技(上海)有限公司上海200233)
文中介紹了在DFT與ATPG階段均可通過各自的方法來達(dá)到降低測試功耗的目的。以實(shí)際項(xiàng)目為例,闡述了在DFT過程中分步法的原理,通過此方法可顯著降低在Transition測試時的捕獲功耗。同時也介紹了SYNOPSYS公司推薦的降低功耗的命令,評估其在ATPG過程中對功耗的影響。在實(shí)際項(xiàng)目中,可綜合使用這兩種方法,從而達(dá)到最佳的降低功耗的目的。
分步法;覆蓋率;測試向量;設(shè)計(jì)
隨著芯片規(guī)模的增大,低功耗不僅是在功能與性能方面對設(shè)計(jì)者的挑戰(zhàn)越來越大,同時對于測試而言,隨著SCAN CELL的增多,在SCAN測試時,芯片的功耗也會增大。功耗越大,則芯片的溫度升高,導(dǎo)致芯片內(nèi)部的電性參數(shù)發(fā)生偏移,掃描鏈測試失?。?]。這對DFT(Design for Test)以及ATPG(Automatic Test Pattern Generation)提出了更高的挑戰(zhàn)。
公司的某個項(xiàng)目在測試掃描鏈測試向量時遇到了一個問題,既測試結(jié)果與期望值不符。通過TetraMax(生成ATPG的工具)對測試向量進(jìn)行分析,發(fā)現(xiàn)測試向量并無問題。后通過測試基臺分析,發(fā)現(xiàn)芯片在測試的過程中,溫度急劇升高,在芯片的部分地方溫度超過了85℃,導(dǎo)致了掃描鏈測試的失敗。
基于上述問題,文中引入了2種方法來降低掃描鏈測試時的功耗。
如圖1所示,芯片內(nèi)部分為4個時鐘域,分別為ARM(400 Mhz)、LCD(266 MHz)、AHB(133 MHz)以及APB(66 MHz)。對于多時鐘域SCAN的測試,按照一般的做法,在SCAN的模式下,直接配置PLL為800 MHz,APMC模塊中的分頻數(shù)值保持不變(與功能模式相同),每個時鐘域各自插入異步的OCC,然后生成測試向量,如圖2所示[2]。這樣的做法優(yōu)點(diǎn)是操作簡單,缺點(diǎn)是時鐘域之間的交互連接無法測出,Transition測試覆蓋率低(64.277%,低于目標(biāo)值75%),同時由于測試時各個時鐘域的時鐘均在工作,根據(jù)公式P=CV2f,功耗跟頻率成正比,且與電壓的平方成正比,在SCAN Transition測試的過程中,捕獲時時鐘頻率高,導(dǎo)致功耗急劇升高,引起MOS管電性參數(shù)漂移,使得SCAN測試失?。?]。為解決這一問題,故引入分步法。
圖1 芯片時鐘域劃分
如圖3所示,將OCC插入到PLL之后,因有分頻器(clock divider)將OCC的時鐘分為4個clock域,若用上述提到的傳統(tǒng)方法,則4個clock域之間的測試點(diǎn)覆蓋不全,同時功耗過高。為此,在電路中將clock divider在scan的模式下,均變?yōu)閎ypass模式,同時在clock divider后面加入時鐘選擇器(clock mux),如圖4所示。時鐘選擇器將會為lcdclock、hclocks以及pclocks時鐘域選擇對應(yīng)的ATE時鐘或OCC時鐘。
圖2 傳統(tǒng)控制方法
圖3 分步法中OCC結(jié)構(gòu)圖
圖4 帶時鐘選擇器的結(jié)構(gòu)圖
由圖5所示,在Mode0的模式下,PLL被配置成400 MHz,此時只有ARM模塊部分獲得了400 MHz的時鐘,因時鐘選擇器的存在,其余的電路部分得到了ATE(項(xiàng)目中定義為10 MHz)的時鐘,由此便可得到在400 MHz的時鐘下ARM模塊的測試(fault)點(diǎn),產(chǎn)生Mode0的測試向量。
圖5 分步法中Mode0示意圖
由圖6可看出,在Mode1的模式下,PLL被配置為266MHz,此時只有ARM模塊跟LCD模塊獲得了266 MHz的時鐘,其余的電路得到ATE的時鐘,可得到在266 MHz的時鐘下,ARM部分與LCD部分以及ARM與LCD交互部分的測試點(diǎn)。這時,需扣除Mode0中測試到的fault點(diǎn),然后生成Mode1的測試向量。
從圖7可看出,在Mode2的模式下,PLL被配置為133MHz, ARM模塊、LCD模塊以及AHB模塊獲得了133 MHz的時鐘,APB模塊得到ATE時鐘,由此可獲得在133 MHz下的測試點(diǎn)(包含了ARM、LCD以及AHB這3大模塊之間的連接測試點(diǎn)),在生成Mode2的測試向量時要減去Mode0以及Mode1中已測試到的測試點(diǎn)。
圖6 分步法中Mode1示意圖
圖7 分步法中Mode2示意圖
從圖8得出,在Mode3的模式下,PLL被配置為66 MHz,所有的模塊均獲得了66 MHz的時鐘,從而可得到所有模塊在這一頻率下的測試點(diǎn),再減掉Mode0、Mode1以及Mode2中已測試到的測試點(diǎn),生成Mode3的測試向量。
圖8 分步法中Mode3示意圖
表1 多步法數(shù)據(jù)統(tǒng)計(jì)表
Power Current<300mA
表2 傳統(tǒng)方法數(shù)據(jù)統(tǒng)計(jì)表
Power Current>1000mA
從上表1中可看出,使用了多步法后Transition的測試覆蓋率為75.62%,高于設(shè)定目標(biāo)值75%,遠(yuǎn)高于表2中常用方法的64.277%;同時可看出,使用了多步法產(chǎn)生的測試向量數(shù)目為15 876,多于傳統(tǒng)方法的12 916,說明使用多步法會增加基臺在Transition模式下的測試時間。此外,從表1中還可看出,使用多步法后測試電流低于300 mA,低于芯片正常工作的最大電流500 mA,而表2中測試電流大于1000 mA,遠(yuǎn)大于芯片正常工作的電流值。故使用多步法可降低測試功耗,提高測試覆蓋率。但缺點(diǎn)是測試向量增多,導(dǎo)致測試成本增加。
SYNOPSYS公司對測試向量生成的過程中有方法對shift過程加以干涉。在TetraMax中使用命令“set_atpg╞fill_adjacent╞shift_power_effort_high”,可減少SCAN寄存器翻轉(zhuǎn)的次數(shù),優(yōu)化測試向量在shift過程中的功耗[4]。
同時還可在掃描鏈測試向量生成的過程中對捕獲(capture)過程加以干涉[4]。在TetraMax的命令行中輸入“report_clocks-gating”,以Mode0為例,在Mode0中使用此命令會得到值10.02%。這個值要取整,公式為“power budget= floor(10.02%)+1”。在用于power_budget選項(xiàng)時,數(shù)值應(yīng)為11。使用命令“set_atpg-power_budget 11-power_effort high”,便可獲得在捕獲時減少功耗的測試向量。
表3 使用SYNOPSYS命令與不使用SYNOPSYS命令的功耗對比
使用上述方法后,從表3中可看出,使用了SYNOPSYS推薦的降低功耗命令選項(xiàng)后,生成掃描鏈測試向量消耗的CPU Run time顯著減少,由1h9min30s減少到29min45s。減少了工作站的負(fù)荷,并節(jié)省了CPU資源。
同時還可看出,在覆蓋率(coverage)為76%左右時,未使用SYNOPSYS推薦命令選項(xiàng)的測試向量數(shù)量(pattern數(shù)目)少于使用SYNOPSYS推薦命令選項(xiàng)的。測試向量的多少決定了測試基臺的測試時間,測試向量數(shù)目的增加,必然增加了測試時間及成本。這就需要在功耗、成本之間做出決策,選取最佳平衡點(diǎn)。
表3中還可看出,對于平均shift(Avg shift switching)的功耗,帶SYNOPSYS推薦命令選項(xiàng)的相比不帶SYNOPSYS推薦命令選項(xiàng)的少,由19.78%降低到10.18%,由此可見SYNOPSYS推薦的命令選項(xiàng)對于降低shift開關(guān)的功耗作用明顯。
對于平均捕獲(Avg capture switching)的功耗,帶SYNOPSYS推薦命令的選項(xiàng)為5.58%,比不帶SYNOPSYS推薦命令選項(xiàng)的功耗降低了0.79%,功耗降低并不明顯。
關(guān)于峰值shift(peak shift switching)的功耗,帶SYNOPSYS推薦命令選項(xiàng)的比不帶SYNOPSYS推薦命令選項(xiàng)的功耗降低了20.85%,效果明顯。
對于峰值捕獲(peak capture switching)的功耗,帶SYNOPSYS推薦命令選項(xiàng)為10.07%,而不帶SYNOPSYS推薦命令選項(xiàng)的功耗為11.52%,功耗降低的效果不明顯。
由上述可知,SYNOPSYS推薦的降低功耗命令選項(xiàng)對于shift的功耗降低明顯,但對捕獲的功耗降低則并不明顯,同時其缺點(diǎn)還有為了達(dá)到相同的覆蓋率,測試向量的數(shù)量變多,測試成本增加。
多步法可有效的降低芯片在SCAN Transition模式下的功耗(主要是降低了捕獲時的功耗),提高測試覆蓋率,缺點(diǎn)是測試向量的數(shù)量會增多。SYNOPSYS推薦的方法優(yōu)點(diǎn)在于可直接在TetraMax工具中加入命令,過程簡單方便,對shift功耗降低明顯,但捕獲功耗降低的作用相對較小??稍诙嗖椒ㄖ薪Y(jié)合使用SYNOPSYS推薦的方法,以達(dá)到更好降低功耗的目的。
[1]Michael L.Bushnell Vishwani D Agrawal.超大規(guī)模集成電路測試[M].蔣安平,馮建華,王新安,譯.北京:電子工業(yè)出版社,2006.
[2]On-Chip-Clockcontroller(OCC):AnAlternative Approach,SNUG Israel 2012.
[3]Using Custom OCC with TetraMax for At-speed Transition Fault testing and Small Delay Defect,SNUG France,2011.
[4]Synopsys Tetramax 2012.06-SP5 User Guidehttps://solvnet. synopsys.com/dow_retrieve/latest/tmax/tmax_olh/Default_CSH. htm.
[5]王巍.多時鐘域ASIC的可測性設(shè)計(jì)[J].集成電路應(yīng)用,2001(6):26-29.
[6]趙曉海.跨時鐘域信號的幾種同步方法研究[J].電子設(shè)計(jì)工程,2012(7):139-143,147.
DFT and ATPG low power design algorithm and analysis
DING Wei
(Atmel Semiconductor Technology(Shanghai)Co.,Ltd.,Shanghai 200233,China)
This paper introduces separate methods to reduce power consumption during DFT and ATPG.This paper indicates algorithm of multi-step method during DFT by taking real project as example.This method can obviously reduce capture power consumption during Transition test.Meanwhile,this paper also introduces and evaluates the command recommended by SYNOPSYS Company to reduce the power during ATPG.It's suggested to combine these two methods together in order to reach better power optimization.
multi-step method;coverage pattern;test vector;design
TN99
A
1674-6236(2016)12-0149-03
2015-07-25稿件編號:201507167
丁偉(1982—),男,江蘇鎮(zhèn)江人,碩士,工程師。研究方向:集成電路設(shè)計(jì)。