IC測(cè)試原理解析(第二部分)
芯片測(cè)試原理討論在芯片開(kāi)發(fā)和生產(chǎn)過(guò)程中芯片測(cè)試的基本原理,一共分為四章,下面將要介紹的是第二章。我們?cè)诘谝徽陆榻B了芯片的基本測(cè)試原理,描述了影響芯片測(cè)試方案選擇的基本因素,定義了芯片測(cè)試過(guò)程中的常用術(shù)語(yǔ)。本文將討論怎么把這些原理應(yīng)用到存儲(chǔ)器和邏輯芯片的測(cè)試上。接下來(lái)的第三章將介紹混合信號(hào)芯片的測(cè)試,第四章會(huì)介紹射頻/無(wú)線芯片的測(cè)試。
存儲(chǔ)器和邏輯芯片的測(cè)試
存儲(chǔ)器芯片測(cè)試介紹
存儲(chǔ)器芯片是在特定條件下用來(lái)存儲(chǔ)數(shù)字信息的芯片。存儲(chǔ)的信息可以是操作代碼,數(shù)據(jù)文件或者是二者的結(jié)合等。根據(jù)特性的不同,存儲(chǔ)器可以分為以下幾類(lèi),如表1所示:
存儲(chǔ)器的種類(lèi)與特性
存儲(chǔ)器術(shù)語(yǔ)的定義
在討論存儲(chǔ)器芯片測(cè)試之前,有必要先定義一些相關(guān)的術(shù)語(yǔ)。
寫(xiě)入恢復(fù)時(shí)間(Write Recovery Time):一個(gè)存儲(chǔ)單元在寫(xiě)入操作之后和正確讀取之前中間必須等待的時(shí)間。
保持時(shí)間(Hold Time):輸入數(shù)據(jù)電平在鎖存時(shí)鐘之后必須保持的時(shí)間間隔。
Pause Test:存儲(chǔ)器內(nèi)容保持時(shí)間的測(cè)試。
刷新時(shí)間(Refresh Time):存儲(chǔ)器刷新的最大時(shí)間間隔。
建立時(shí)間(Setup Time):輸入數(shù)據(jù)電平在鎖存時(shí)鐘之前必須穩(wěn)定保持的時(shí)間間隔。
上升和下降時(shí)間(Rise and Fall Times):功能速度測(cè)試是通過(guò)重復(fù)地進(jìn)行功能測(cè)試,同時(shí)改變芯片測(cè)試的周期或頻率來(lái)完成的。測(cè)試的周期通常使用二進(jìn)制搜索的辦法來(lái)進(jìn)行改變。這些測(cè)試能夠測(cè)出芯片的最快運(yùn)行速度。
寫(xiě)入恢復(fù)(Write Recovery):一個(gè)存儲(chǔ)單元在寫(xiě)入操作之后和下一個(gè)存儲(chǔ)單元能正確讀取之前中間必須等待的時(shí)間。
讀取時(shí)間(Access time):通常是指在讀使能,片選信號(hào)或地址改變到輸出端輸出新數(shù)據(jù)的所需的最小時(shí)間。讀取時(shí)間取決于存儲(chǔ)器讀取時(shí)的流程。
存儲(chǔ)器芯片測(cè)試中的功能測(cè)試
存儲(chǔ)器芯片必須經(jīng)過(guò)許多必要的測(cè)試以保證其功能正確。這些測(cè)試主要用來(lái)確保芯片不包含一下類(lèi)型的錯(cuò)誤:
存儲(chǔ)單元短路:存儲(chǔ)單元與電源或者地段路
存儲(chǔ)單元開(kāi)路:存儲(chǔ)單元在寫(xiě)入時(shí)狀態(tài)不能改變相鄰單元短路:根據(jù)不同的短路狀態(tài),相鄰的單元會(huì)被寫(xiě)入相同或相反的數(shù)據(jù)地址
開(kāi)路或短路:這種錯(cuò)誤引起一個(gè)存儲(chǔ)單元對(duì)應(yīng)多個(gè)地址或者多個(gè)地址對(duì)應(yīng)一個(gè)存儲(chǔ)單元。這種錯(cuò)誤不容易被檢測(cè),因?yàn)槲覀円淮沃荒軝z查輸入地址所對(duì)應(yīng)的輸出響應(yīng),很難確定是哪一個(gè)物理地址被真正讀取。
存儲(chǔ)單元干擾:它是指在寫(xiě)入或者讀取一個(gè)存儲(chǔ)單元的時(shí)候可能會(huì)引起它周?chē)蛘呦噜彽拇鎯?chǔ)單元狀態(tài)的改變,也就是狀態(tài)被干擾了。
存儲(chǔ)器芯片測(cè)試時(shí)用于錯(cuò)誤檢測(cè)的測(cè)試向量
測(cè)試向量是施加給存儲(chǔ)器芯片的一系列的功能,即不同的讀和寫(xiě)等的功能組合。它主要用于測(cè)試芯片的功能錯(cuò)誤。常用的存儲(chǔ)器測(cè)試向量如下所示,分別介紹一下他們的執(zhí)行方式以及測(cè)試目的.
全”0”和全”1”向量: 4n行向量
執(zhí)行方式:對(duì)所有單元寫(xiě)”1”再讀取驗(yàn)證所有單元。對(duì)所有單元寫(xiě)”0”再讀取驗(yàn)證所有單元。
目的:檢查存儲(chǔ)單元短路或者開(kāi)路錯(cuò)誤。也能檢查相鄰單元短路的問(wèn)題。
棋盤(pán)格(Checkerboard)向量:4n行向量
執(zhí)行方式:先運(yùn)行0-1棋盤(pán)格向量,也就是第一個(gè)單元寫(xiě)1,第二個(gè)單元寫(xiě)0,第三個(gè)單元再寫(xiě)1,依此類(lèi)推,直到最后一個(gè)單元,接下來(lái)再讀取并驗(yàn)證所有單元。再運(yùn)行一個(gè)1-0棋盤(pán)格向量,就是對(duì)所有單元寫(xiě)入跟0-1棋盤(pán)格完全相反的數(shù)據(jù),再讀取并驗(yàn)證所有單元。
目的:這是功能測(cè)試,地址解碼和單元干擾的一個(gè)最基本最簡(jiǎn)單的測(cè)試向量。它還能檢查連續(xù)地址錯(cuò)誤或者干擾錯(cuò)誤,也通常用它作為時(shí)間測(cè)量時(shí)的向量。
Patterns Marching向量:5n行向量
執(zhí)行方式:先對(duì)所有單元寫(xiě)0.讀取第一個(gè)單元,再對(duì)第一個(gè)單元寫(xiě)1。再讀取第二個(gè)單元,再對(duì)第二個(gè)單元寫(xiě)1,依此類(lèi)推,直到最后一個(gè)單元。最后再重復(fù)上述操作,只是寫(xiě)入數(shù)據(jù)相反。
目的:這是功能測(cè)試,地址解碼和單元干擾的一個(gè)最基本最簡(jiǎn)單的測(cè)試向量。它還能檢查連續(xù)地址錯(cuò)誤或者干擾錯(cuò)誤,也通常用它作為時(shí)間測(cè)量時(shí)的向量。
Walking向量:2n^2 行向量
執(zhí)行方式:先對(duì)所有單元寫(xiě)0,再讀取所有單元。接下來(lái)對(duì)第一個(gè)單元寫(xiě)1,讀取所有單元,讀完之后把第一個(gè)單元寫(xiě)回0。再對(duì)第二個(gè)單元寫(xiě)1,讀取所有單元,讀完之后把第二個(gè)單元寫(xiě)回0。依次類(lèi)推,重復(fù)到最后一個(gè)單元。等上述操作完成之后,再重復(fù)上述操作,只不過(guò)寫(xiě)入的數(shù)據(jù)相反。
目的:檢查所有的地址解碼錯(cuò)誤。它的缺點(diǎn)是它的運(yùn)行時(shí)間太長(zhǎng)。假設(shè)讀寫(xiě)周期為500ns,對(duì)一個(gè)4K的RAM進(jìn)行wakling向量測(cè)試就需要16秒的測(cè)試時(shí)間。如果知道存儲(chǔ)器的結(jié)構(gòu),我們可以只進(jìn)行行或者列的walking以減少測(cè)試時(shí)間。
Galloping寫(xiě)入恢復(fù)向量:12^2n行向量
執(zhí)行方式:對(duì)所有單元寫(xiě)0。再對(duì)第一個(gè)單元寫(xiě)1(基本單元),讀取第二個(gè)單元, 然后返回來(lái)讀取第一個(gè)單元。再對(duì)第二個(gè)單元寫(xiě)0,讀第二個(gè)單元。接下來(lái)再在其它所有單元和基本單元之間重復(fù)這個(gè)操作。等第一個(gè)單元作為基本單元的操作完成之后,再把第二個(gè)單元作為基本單元,再作同樣的操作。依此類(lèi)推,直到所有單元都被當(dāng)過(guò)基本單元。最后,再重復(fù)上述過(guò)程,但寫(xiě)入數(shù)據(jù)相反。
目的:這是功能測(cè)試,地址解碼測(cè)試和干擾測(cè)試一個(gè)極好的向量。如果選擇適當(dāng)?shù)臅r(shí)序,它還可以很好地用于寫(xiě)入恢復(fù)測(cè)試。同時(shí)它也能很好地用于讀取時(shí)間測(cè)試。
其他的測(cè)試向量都類(lèi)似于以上這些向量,都基于相同的核心理念。
動(dòng)態(tài)隨機(jī)讀取存儲(chǔ)器(DRAM)
動(dòng)態(tài)隨機(jī)讀取存儲(chǔ)器(DRAM)的測(cè)試有以下的一些特殊要求:
1.行地址和列地址在相同的地址線上輸入(行列地址復(fù)用)。他們分別通過(guò)RAS和CAS信號(hào)來(lái)鎖存。
2.需要在固定的時(shí)間間隔內(nèi)對(duì)芯片進(jìn)行刷新。
3.DRAM能夠進(jìn)行頁(yè)操作。因此需要保持行地址不變而改變列地址(或者相反)。
邏輯測(cè)試介紹
邏輯芯片功能測(cè)試用于保證被測(cè)器件能夠正確完成其預(yù)期的功能。為了達(dá)到這個(gè)目的,必須先創(chuàng)建測(cè)試向量或者真值表,才能進(jìn)檢測(cè)代測(cè)器件的錯(cuò)誤。一個(gè)真值表檢測(cè)錯(cuò)誤的能力有一個(gè)統(tǒng)一的標(biāo)準(zhǔn),被稱(chēng)作故障覆蓋率。測(cè)試向量與測(cè)試時(shí)序結(jié)合在一起組成了邏輯功能測(cè)試的核心。
測(cè)試向量
測(cè)試向量—也稱(chēng)作測(cè)試圖形或者真值表—由輸入和輸出狀態(tài)組成,代表被測(cè)器件的邏輯功能。輸入和輸出狀態(tài)是由字符來(lái)表示的,通常1/0用來(lái)表示輸入狀態(tài),L/H/Z用來(lái)表示輸出狀態(tài),X用來(lái)表示沒(méi)有輸入也不比較輸出的狀態(tài)。事實(shí)上可以用任何一套字符來(lái)表示真值表,只要測(cè)試系統(tǒng)能夠正確解釋和執(zhí)行每個(gè)字符相應(yīng)的功能。
測(cè)試向量是存儲(chǔ)在向量存儲(chǔ)器里面的,每行單獨(dú)的向量代表一個(gè)單一測(cè)試周期的“原始“數(shù)據(jù)。從向量存儲(chǔ)器里輸入的數(shù)據(jù)與時(shí)序,波形格式以及電壓數(shù)據(jù)結(jié)合在一起,通過(guò)pin electronic電路施加給待測(cè)器件。待測(cè)器件的輸出通過(guò)pin electronic上的比較電路在適當(dāng)?shù)牟蓸訒r(shí)間與存儲(chǔ)在向量存儲(chǔ)器里的數(shù)據(jù)進(jìn)行比較。這種測(cè)試被稱(chēng)作存儲(chǔ)響應(yīng)。
除了待測(cè)器件的輸入輸出數(shù)據(jù),測(cè)試向量還可能包含測(cè)試系統(tǒng)的一些運(yùn)作指令。比如說(shuō),要包含時(shí)序信息等,因?yàn)闀r(shí)序或者波形格式等可能需要在周期之間實(shí)時(shí)切換。輸入驅(qū)動(dòng)器可能需要被打開(kāi)或者關(guān)閉,輸出比較器也可能需要選擇性地在周期之間開(kāi)關(guān)。許多測(cè)試系統(tǒng)還支持像跳轉(zhuǎn),循環(huán),向量重復(fù),子程序等微操作指令。不同的測(cè)試儀,其測(cè)試儀指令的表示方式可能會(huì)不一樣,這也是當(dāng)把測(cè)試程序從一個(gè)測(cè)試平臺(tái)轉(zhuǎn)移到另一個(gè)測(cè)試平臺(tái)時(shí)需要做向量轉(zhuǎn)換的原因之一。
比較復(fù)雜的芯片,其測(cè)試向量一般是由芯片設(shè)計(jì)過(guò)程中的仿真數(shù)據(jù)提取而來(lái)。仿真數(shù)據(jù)需要重新整理以滿(mǎn)足目標(biāo)測(cè)試系統(tǒng)的格式,同時(shí)還需要做一些處理以保證正確的運(yùn)行。通常來(lái)說(shuō)測(cè)試向量并不是由上百萬(wàn)行的獨(dú)立向量簡(jiǎn)單構(gòu)成的。測(cè)試向量或者仿真數(shù)據(jù)可以由設(shè)計(jì)工程師,測(cè)試工程師或者驗(yàn)證工程師來(lái)完成,但是要保證成功的向量生成,都必須對(duì)芯片本身和測(cè)試系統(tǒng)有非常全面地了解。
測(cè)試資源的消耗
當(dāng)開(kāi)發(fā)一個(gè)功能測(cè)試時(shí),待測(cè)器件各方面的性能與功能都要考慮到。以下這些參數(shù)都要仔細(xì)地進(jìn)行測(cè)試或設(shè)置:
VDD Min/Max (待測(cè)器件電源電壓)
VIL/VIH (輸入電壓)
VOL/VOH (輸出電壓)
IOL/IOH (輸出電流負(fù)載)
VREF (IOL/IOH轉(zhuǎn)換電平)
測(cè)試頻率(測(cè)試使用的周期)
輸入信號(hào)時(shí)序(時(shí)鐘/建立時(shí)間/保持時(shí)間/控制)
輸入信號(hào)波形格式
輸出時(shí)序(在周期內(nèi)何時(shí)對(duì)輸出進(jìn)行采樣)
向量順序(向量文件內(nèi)的start/stop位置)
上述的這些資源說(shuō)明了功能測(cè)試會(huì)占用測(cè)試系統(tǒng)的大部分資源。功能測(cè)試主要由兩大塊組成,一是測(cè)試向量文件,另外一塊是包含測(cè)試指令的主測(cè)試程序。測(cè)試向量代表了測(cè)試待測(cè)器件所需的輸入輸出邏輯狀態(tài)。主測(cè)試程序包含了保證測(cè)試儀硬件能產(chǎn)生必要的電壓,波形和時(shí)序等所必需的信息。(如圖所示)
功能測(cè)試
當(dāng)功能測(cè)試執(zhí)行的時(shí)候,測(cè)試系統(tǒng)把輸入波形施加給待測(cè)器件,并一個(gè)周期一個(gè)周期,一個(gè)管腳一個(gè)管腳地監(jiān)控輸出數(shù)據(jù)。如果有任何的輸出數(shù)據(jù)不符合預(yù)期的邏輯狀態(tài),電壓或者時(shí)序,該測(cè)試結(jié)果被記錄為錯(cuò)誤。
到現(xiàn)在我們討論了相對(duì)簡(jiǎn)單的存儲(chǔ)器和數(shù)字芯片測(cè)試的基本測(cè)試技術(shù)。在此文接下來(lái)的兩章里,我們將討論測(cè)試更為復(fù)雜的混合信號(hào)和射頻/無(wú)線芯片的獨(dú)特要求。