“火山論劍”之且用且珍惜- 淺說DFT工程師三大法寶的使用
2014-12-17 Kevin BriteASIC
眾所周知,芯片主要由三大部分構(gòu)成抛猫。
芯片示例-可見下圖
1、 與電路板和其他芯片的接口-IO pad
2、存放程序的空間-ram和rom
3 沪哺、搭建邏輯電路的基本組件 –標準邏輯單元
我們DFT工程師所有的工作的目的只有一個-設(shè)計和插入數(shù)字電路隅俘,測試整個芯片的制造質(zhì)量邻奠,篩選出沒有制造缺陷的芯片。
針對芯片的三大部分为居,我們DFT工程師手里有三大法寶:
法寶一:BSCAN技術(shù)-- 測試IO pad碌宴,主要實現(xiàn)工具是Mentor-BSDArchit,sysnopsy-BSD Compiler;
法寶二:MBIST技術(shù)-- 測試mem蒙畴,主要實現(xiàn)工具是Mentor的MBISTArchitect 和 Tessent mbist贰镣;
法寶三:ATPG 技術(shù)-- 測試std-logic,主要實現(xiàn)工具是:產(chǎn)生ATPG使用Mentor的 TestKompress 和synopsys TetraMAX,插入scan chain主要使用synopsys 的DFT compiler碑隆。
以上三類工具licenses較貴董朝,特別是ATPG工具,很多IC公司都只有幾個干跛,經(jīng)常run case時出現(xiàn)拿不到license的情況子姜,所以大家只能“且用且珍惜”了。
以下對工具的使用原則做一些介紹:
ATPG工具
Insert scan:
1楼入、雖然教科書會介紹很多種DFT DRC但是在實際設(shè)計中95%的工作在修復(fù)scan_clk和scan_reset的DRC violation哥捕;
2、修復(fù)clk/reset violation 的方法主要是用DC插入mux 嘉熊,目的是使在scan_mode下clk和reset被芯片scan_clk和scan_reset pad控制遥赚。 同時,scan_clk和scan_reset pad會用于ATE給芯片施加激勵阐肤;
3凫佛、插入scan時,DFT Compiler必須修復(fù)的DRC violations 類別為D1/D2/D3/D9孕惜;
4愧薛、做全片級的DFT設(shè)計時,需要在scan_in衫画,scan_out毫炉,scan_reset,scan_clk的IO pad 的OEN/IE/REN端插入mux削罩,控制pad的輸入和輸出方向瞄勾。
Atpg patterns產(chǎn)生和仿真:
1、所有的模擬模塊弥激,例如PLL进陡、POR等,一般設(shè)置為black-box微服,無法用ATPG測試其內(nèi)部趾疚;
2、芯片clk职辨、power盗蟆、reset的控制寄存器戈二,一般不會放到scan_chain上舒裤,以免在測試時由于寄存器的動作,改變芯片工作狀態(tài)觉吭;
3腾供、考慮power domain的開關(guān),一般必須保證在scan測試時,所有power domain都打開伴鳖,每個數(shù)字標準單元都能測試到节值;
4、如果有模擬的IO pad榜聂,一般必須在產(chǎn)生pattern時mask掉搞疗,因為他們不是數(shù)字的,ATPG工具無法控制它們须肆;
5匿乃、業(yè)界一般使用DC插入OCC (on chip clocking)模塊,實現(xiàn)at-speed scan測試電路豌汇。
MBIST工具
目前使用較多的是MBISTArchi幢炸,但是Tessent MBIST以后會成為主流。原因是Mentor公司2013年已經(jīng)宣布MBISTArchi將不再提供技術(shù)支持拒贱,而且Tessent MBIST技術(shù)更為先進宛徊。
1、所有的MBIST設(shè)計應(yīng)該考慮diagnose逻澳。加入diagnose電路闸天,方便診斷mem故障,這會在芯片量產(chǎn)時大大提高成品率斜做;
2号枕、由于ARM與Mentor有合作,Coretex-A9以上的ARM核具有share-bus接口陨享,可以很好支持Tessent Mbist葱淳,就能夠?qū)崿F(xiàn)ARM內(nèi)核的mem的高速測試和訪問,也提高了ARM CPU的性能抛姑;
3赞厕、Tessent MBIST會使用JTAP,只占用TCK/TMS/TDO/TDI/TRST五個pad,比MBISTArich使用更少的pad資源定硝。
BSCAN 工具
1皿桑、所有的模擬IO,一般無法用bscan來測試蔬啡,不要加上bscan_cells诲侮;
2、所有需要測試的數(shù)字pad的OEN/IE/REN 在bscan_mode下箱蟆,需要插mux來控制沟绪;
3、所有需要測試的數(shù)字pad的PU/PD 在bscan_mode下空猜,一般需要插mux來控制绽慈,保證在bscan_mode下恨旱,PU和PD=0,才能使bscan HIGHZ測試仿真通過坝疼;
4搜贤、所有JTAG的強制要求指令如IDCODE,EXIST必須在bscan電路中實現(xiàn)钝凶,特別是BYPASS仪芒。
那么對DFT工具的使用,Kevin He拋磚引玉耕陷,請朋友們暢所欲言桌硫。
1)如何用可測性設(shè)計ATPG工具實現(xiàn)at-speed測試?
2)如何使用BSCAN工具中實現(xiàn)PLL測試啃炸?
3)使用Tessent MBIST實現(xiàn)at-speed測試铆隘?
4)BSCAN工具會在pad的那些端口上連上bscan cell?