《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > SOC中多片嵌入式SRAM的DFT實(shí)現(xiàn)方法
SOC中多片嵌入式SRAM的DFT實(shí)現(xiàn)方法
電子元器件應(yīng)用
摘要: 多片嵌入式SRAM的測(cè)試一般由存儲(chǔ)器內(nèi)建自測(cè)試MBIST設(shè)計(jì)來完成。為了迎接多片SRAM的測(cè)試給DFT設(shè)計(jì)帶來的挑戰(zhàn)。文中以一款基于SMIC O.13um工藝的OSD顯示芯片為例,從覆蓋率、面積、測(cè)試時(shí)間、功耗等方面分析了多片SRAM的MBIST設(shè)計(jì),提出了一種可實(shí)現(xiàn)多片SRAM的快速高效可測(cè)試設(shè)計(jì)實(shí)現(xiàn)方法。
關(guān)鍵詞: SOC SRAM DFT
Abstract:
Key words :

0 引言

隨著集成電路的發(fā)展,越來越多的ASIC和SoC開始使用嵌入式SRAM來完成數(shù)據(jù)的片上存取功能。但嵌入式SRAM的高密集性物理結(jié)構(gòu)使得它很容易在生產(chǎn)過程中產(chǎn)生物理故障而影響芯片的良率,所以,SRAM的測(cè)試設(shè)計(jì)顯得尤為重要。對(duì)于單片或者數(shù)量很小的幾片嵌入式SRAM,常用的測(cè)試方法是通過存儲(chǔ)器內(nèi)建自測(cè)試MBIST來完成,實(shí)現(xiàn)時(shí)只需要通過EDA軟件選取相應(yīng)的算法,并給每片SRAM生成MBIST控制邏輯。但現(xiàn)實(shí)中,大型ASIC和SoC設(shè)計(jì)常常需要使用很多片SRAM,簡(jiǎn)單采用這種MBIST方法會(huì)生成很多塊MBIST控制邏輯,從而增大芯片面積,增加芯片功耗,甚至加長(zhǎng)芯片測(cè)試時(shí)間。

本文基于MBIST的一般測(cè)試方法來對(duì)多片SRAM的可測(cè)試設(shè)計(jì)進(jìn)行優(yōu)化,提出了一種通過一個(gè)MBIST控制邏輯來實(shí)現(xiàn)多片SRAM的MBIST測(cè)試的優(yōu)化方法。

1 MBIST介紹

MBIST意即存儲(chǔ)器內(nèi)建自測(cè)試(Memory Build In Self Test),是目前業(yè)界用來測(cè)試存儲(chǔ)器的一種常見方法,其原理是通過多次反復(fù)讀寫SRAM來確定其是否存在制造中的缺陷。MBIST的EDA工具可針對(duì)內(nèi)嵌存儲(chǔ)器自動(dòng)創(chuàng)建BIST邏輯,它支持多種測(cè)試算法的自動(dòng)實(shí)現(xiàn)(常用算法為March C+),并可完成BIST邏輯與存儲(chǔ)器的連接。此外,MBIST結(jié)構(gòu)中還可包括故障自動(dòng)診斷功能,方便故障定位和特定測(cè)試向量的開發(fā)。MB-IST的基本結(jié)構(gòu)如圖1所示。

整個(gè)SRAM和MBIST控制邏輯構(gòu)成的整體只是在原有SRAM端口的基礎(chǔ)上增加了復(fù)位信號(hào)rst_n和bist_start信號(hào)(為高表示開始測(cè)試)兩個(gè)輸入信號(hào),同時(shí)增加了test_done(為高表示測(cè)試完成)、fail_h(為高表示出現(xiàn)故障)、addr_er(fail_h為高時(shí)輸出的故障地址有效)等三個(gè)輸出信號(hào)。

2 多片SRAM的MBIST測(cè)試結(jié)構(gòu)

基于SMIC 0.13um工藝的OSD (On Screen Display)顯示芯片需嵌入地址位寬為8-bit、數(shù)據(jù)位寬為512-bit。即大小為256x512bit的SRAM來存儲(chǔ)大量的客戶定制字符。由于Artisan的SPSRAM Generator支持的SRAM模型的最大數(shù)據(jù)位寬為64 bit,故可通過8片大小為256×64 bit的SRAM來實(shí)現(xiàn)。

利用Mentor公司的MBIST Architect選取March3算法可產(chǎn)生兩種MBIST結(jié)構(gòu)。其一為每片256x64 bit的SRAM各生成一套MBIST邏輯,以構(gòu)建MBIST并行結(jié)構(gòu),圖2所示為其并行結(jié)構(gòu)示意圖。該方法可對(duì)所有MBIST的test_done(完成標(biāo)志)進(jìn)行“與”操作,以保證所有SRAM都測(cè)試結(jié)束;fail_h(失效標(biāo)志)可進(jìn)行“或”操作來實(shí)現(xiàn)(高有效),只要有一個(gè)SRAM出現(xiàn)故障即停止測(cè)試,否則表明所有SRAM測(cè)試都通過。

第二種方法是針對(duì)256×64bit大小的SRAM只生成一套MBIST,然后通過附加的狀態(tài)機(jī)和數(shù)字邏輯來對(duì)多片SRAM逐一進(jìn)行測(cè)試,即構(gòu)建如圖3所示的MBIST串行結(jié)構(gòu)。當(dāng)所測(cè)的某一個(gè)SRAM出現(xiàn)故障即停止測(cè)試,若所有SRAM測(cè)試結(jié)束都未有error信號(hào)輸出,則表明所有SRAM測(cè)試均通過。

 

3 結(jié)果比較

對(duì)于串行MBIST結(jié)構(gòu),在前端設(shè)計(jì)時(shí)需要考慮到所有SRAM的大小等情況,而多數(shù)設(shè)計(jì)中,嵌入的SRAM大小各不相同,所以,前端實(shí)現(xiàn)較復(fù)雜;復(fù)用同一套MBIST結(jié)構(gòu)(如激勵(lì)產(chǎn)生結(jié)構(gòu)和比較電路等)雖然節(jié)省面積,但為了有利于時(shí)序收斂及繞線,往往需要SRAM靠近與之有邏輯關(guān)系的功能單元,但這會(huì)對(duì)芯片整體物理版圖的設(shè)計(jì)帶來一定束縛;SRAM數(shù)量較大時(shí),逐一測(cè)試顯然能使功耗降到最低,但可能導(dǎo)致測(cè)試時(shí)間增長(zhǎng),測(cè)試成本上升。

對(duì)于并行MBIST結(jié)構(gòu),由于SRAM各成體系,互不相擾,前后端實(shí)現(xiàn)都很容易,芯片測(cè)試時(shí)間短,但較之串行MBIST結(jié)構(gòu),則會(huì)增加芯片面積和功耗,而且其功耗還有可能超過電源網(wǎng)供電容限而導(dǎo)致芯片燒掉;

兩種實(shí)現(xiàn)方法的結(jié)果比較如表1所列。

基于表1,該OSD芯片應(yīng)采用并行MBIST結(jié)構(gòu)。對(duì)多個(gè)不同大小的SRAM MBIST架構(gòu),采用串行MBIST結(jié)構(gòu)可以大幅降低面積與功耗,但無論對(duì)于串測(cè)還是并測(cè)來說,隨著數(shù)據(jù)位寬較大的SRAM (如位寬64 bit)數(shù)量的增多,與SRAM直接相連的邏輯會(huì)顯著影響掃描測(cè)試的覆蓋率。

4 MBIST對(duì)掃描測(cè)試覆蓋率的影響

DFT設(shè)計(jì)有可控制性和可觀測(cè)性兩個(gè)基本原則,即對(duì)DFT設(shè)計(jì)要求所有輸入邏輯是可控的和輸出邏輯是可測(cè)的。不可控邏輯和不可測(cè)邏輯對(duì)測(cè)試覆蓋率提出了很大的挑戰(zhàn)。通??梢酝ㄟ^適當(dāng)添加測(cè)試點(diǎn)的方式,使原來不可控和不可測(cè)的邏輯變化反映到掃描鏈上,使之變得間接可控和可觀測(cè),以提高整個(gè)芯片的測(cè)試覆蓋率和測(cè)試效率。

Svnopsys公司的TetraMAX ATPG定義的故障覆蓋率(fault coverage)如下:

若測(cè)試覆蓋率較低,首先應(yīng)分析DRC(design rule constraint)Violations,并盡量消除DRCViolations。再分析AU(ATPG untestable)報(bào)告,減少AU的數(shù)量。按照模塊層次來報(bào)告測(cè)試覆蓋率時(shí),應(yīng)找到覆蓋率低的模塊重點(diǎn)分析。該項(xiàng)目的AU報(bào)告中和RAM有關(guān)的部分占了很大一部分。RAM自測(cè)試模塊的測(cè)試覆蓋率只有6%。分析工具把RAM當(dāng)做black box,由于這些SRAM的數(shù)據(jù)位很寬,故SRAM數(shù)據(jù)端口不可控和不可測(cè)的邏輯(稱為陰影邏輯)更多,芯片的測(cè)試覆蓋率也更低。給RAM加旁路(bypass)邏輯,測(cè)試模式下將輸入和輸出連起來,可使原來不可控和不可觀測(cè)的邏輯變化反映到掃描鏈上,使之變得間接可控和可觀測(cè),從而提高整個(gè)芯片的測(cè)試覆蓋率。RAM的輸入比輸出多,故可用XOR連接。對(duì)于XOR/XNOR門,為了將故障響應(yīng)從它的一個(gè)輸入傳播到它的輸出,可根據(jù)方便程度設(shè)置所有其他的輸入為0或1。而對(duì)于AND/NAND門,為了將系統(tǒng)的故障響應(yīng)從它的一個(gè)輸入傳播到它的輸出,則必須通過將其他輸入設(shè)置為l來實(shí)現(xiàn),其中“l”對(duì)于AND/NAND門是一個(gè)非控制值。同理,“0”對(duì)于OR/NOR門也是一個(gè)非控制值。圖4所示是旁路RAM的電路示意圖。圖中,多路選擇器由test_mode信號(hào)控制,與RAM的輸入輸出連接的邏輯可測(cè),RAM模塊的測(cè)試覆蓋率可提高到98.3%,相應(yīng)的整個(gè)芯片的測(cè)試覆蓋率提高了4個(gè)百分點(diǎn)。

由此可見,MBIST結(jié)構(gòu)可直接實(shí)例化地用在數(shù)字設(shè)計(jì)部分。該系統(tǒng)的功能邏輯部分含有萬余寄存器,為了提高測(cè)試覆蓋率添,加幾個(gè)寄存器及很少組合邏輯作為測(cè)試點(diǎn)后,即可將測(cè)試覆蓋率提高且不會(huì)增加太大的面積開銷,因而這種方法是很有效率的。如果前期設(shè)計(jì)時(shí)就能考慮這種測(cè)試結(jié)構(gòu),DFT設(shè)計(jì)過程中就會(huì)減少反復(fù),減少測(cè)試設(shè)計(jì)周期。

5 結(jié)束語

本文基于一個(gè)實(shí)際項(xiàng)目,分別用常用的并行與串行兩種方式來實(shí)現(xiàn)MBIST的構(gòu)架,并對(duì)其開銷進(jìn)行了定量與定性討論,結(jié)果是對(duì)于不同的設(shè)計(jì),應(yīng)當(dāng)靈活構(gòu)建測(cè)試結(jié)構(gòu)以達(dá)到設(shè)計(jì)目的。對(duì)于在嵌入式存儲(chǔ)器數(shù)量較少,位寬較小的情況下,MBIST對(duì)掃描測(cè)試覆蓋率的影響并不明顯,易被人們忽視,一旦這種影響顯著發(fā)生,比較高效的方法是插入旁路電路,這樣,在提高覆蓋率的同時(shí)也不會(huì)增加太大的面積開銷。可見,對(duì)于一個(gè)嵌入多片SRAM的SOC進(jìn)行DFT設(shè)計(jì)時(shí)。應(yīng)從多維度靈活處理,折中考慮。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。