專利名稱:一種嵌入式存儲器的測試系統(tǒng)及測試方法
技術領域:
本發(fā)明涉及存儲器的測試技術,特別涉及一種嵌入式存儲器的測試系統(tǒng) 及測i式方法。
背景技術:
嵌入式存儲器是片上系統(tǒng)(SoC, System-on-a-Chip)設計中一個非常重 要的部分。隨著嵌入式存儲器的容量快速增長,嵌入式存儲器被廣泛用來實 現(xiàn)寄存器堆、先進先出存儲器(FIFO, First In First Out)、數(shù)據(jù)高速緩沖存 儲器(D-Cache, Data Cache)、指令高速緩沖存儲器(I-Cache, Instruction Cache)、發(fā)送或接收緩沖存儲器,以及用于音頻視頻數(shù)據(jù)的存儲和用于圖 形文本文件的處理等。嵌入式存儲器的測試無論是在基于核設計的SoC中, 還是在復雜的微處理器中都是一個十分重要的問題。
對嵌入式存儲器進行測試的方法為采用設置的測試方式對嵌入式存儲 器的每個存儲單元寫入測試數(shù)據(jù)后,再將寫入的測試數(shù)據(jù)讀取出,對讀取出 的測試數(shù)據(jù)和寫入的測試數(shù)據(jù)進行比較驗證,確定該存儲單元是否損壞如 果相同,則沒有損壞;如果不相同,則損壞。釆用的測試方式可以為存儲器 掃描測試方式(MSCAN, Memory SCAN),就是對嵌入式存儲器中的其中 一個存儲單元寫入全"0",再讀取出進行驗證,然后再對嵌入式存儲器中 的該存儲單元寫入全"1",再讀取出進行驗證,按照這個過程更改存儲單 元重復執(zhí)行,直到嵌入式存儲器的所有存儲單元都操作完。采用的測試方式
系列的操作,然后才進行下個單元的操作。操作系列稱為March單元。 一個 March單元可能包括一組簡單的MSCAN系列,也可能包括一組復雜的、帶有多個讀/寫操作的操作系列。
目前,嵌入式存儲器的測試方法有三種,包括第一種方法,內建自測 試(BIST, Built-in Self-Test)方法;第二種方法,通過輸入輸出(I/O, Input/Output)多路選擇器直接訪問存儲器的方法;第三種方法,通過SoC 中的微處理器進行測試方法,下面分別介紹每一種測試方法。
第一種測試方法,BIST方法
BIST是嵌入式存儲器測試中應用極為重要的方法,該方法常用于對SoC 的量產(chǎn)測試。圖1為現(xiàn)有技術采用BIST方法測試嵌入式存儲器的結構示意 圖,如圖所示,該測試嵌入式存儲器的結構系統(tǒng)中包括作為被測試的嵌入式 存儲器的靜態(tài)隨機存儲器(RAM, Random Access Memory )、自測試控制 器、地址產(chǎn)生器、數(shù)據(jù)產(chǎn)生器及數(shù)據(jù)接收器,其中,自測試控制器、地址產(chǎn) 生器、數(shù)據(jù)產(chǎn)生器及數(shù)據(jù)接收器構成的測試電路都設置在SoC中。
在測試時,按照某種測試算法,地址產(chǎn)生器產(chǎn)生RAM要輸入測試數(shù)據(jù) 的地址,自測試控制器從地址產(chǎn)生器獲取所產(chǎn)生的地址,控制數(shù)據(jù)產(chǎn)生器產(chǎn)
數(shù)據(jù)接收器將該地址對應的RAM存儲單元中的測試數(shù)據(jù)讀取出,并且和從 數(shù)據(jù)產(chǎn)生器接收的該測試數(shù)據(jù)進行比較驗證,確定RAM的該地址對應的存 儲單元是否工作正常。
測試。這種方法的優(yōu)點就是整個測試在SoC內部根據(jù)測試算法自動完成, 無需借助外部自動測試設備(ATE, Auto Test Equipment)完成,但是這種 方法需要額外的測試電路設置在SoC中,特別是當嵌入式存儲器能夠讀寫 的字長較長時,測試電路中的數(shù)據(jù)接收器所占的面積會很大,且測試數(shù)據(jù)的 輸入輸出總線都需要耗費大量的布線,增加了 SoC的成本開銷。另外,由 于測試電路設計在SoC內,通常只能實現(xiàn)有限的測試算法。測試中的故障 分析也比較困難。
第二種測試方法,通過I/O多路選擇器直接訪問存儲器的方法這種方法在嵌入式存儲器測試中應用非常廣泛,常用于對SoC的量產(chǎn)
測試。圖2a為現(xiàn)有技術通過I/0多路選擇器直接訪問存儲器的結構示意圖, 如圖所示,為了實現(xiàn)對被測試嵌入式存儲器,比如RAM的測試,將RAM 的接口信號通過1/0多路選擇器,映射到SoC的管腳上,也就是SoC接口 上,RAM的接口信號包括存儲器地址總線信號、存儲器數(shù)據(jù)總線信號及存 儲器控制總線信號。
具體的測試結構示意圖如圖2b所示,當進行測試時,ATE可以按照某 種測試方式,產(chǎn)生RAM的存儲器地址總線、存儲器數(shù)據(jù)總線以及存儲器讀 寫控制等信號,依次通過SOC的管腳和I/O多路選擇器連接到RAM上,對 RAM直接進行具有相應存儲地址的存儲單元的讀/寫操作。讀/寫數(shù)據(jù)的驗證 也是通過ATE來完成。
顯然,這種方法需要占用SoC中較多的管腳資源,對管腳資源比較少 的SoC不適用。該方法的優(yōu)點為測試算法可以很方便地修改,測試結果也 比較直觀,便于進行測試分析和設計。
第三種測試方法,通過SoC中的微處理器進行測試方法
這種測試方法多用于測試分析,較少用于量產(chǎn)測試。圖3為現(xiàn)有現(xiàn)有技 術通過SoC中的微處理器進行測試的結構示意圖,如圖所示,使用這種測 試方法,SoC中的微處理器就像一個測試儀,可以利用該微處理器的匯編程 序對嵌入式存儲器實現(xiàn)所需的存儲器測試算法,同時對從嵌入式存儲器得到 的測試數(shù)據(jù)進行校驗,完成測試。
這種方法的優(yōu)點是不需要在SoC上增加額外的測試電路,也不需要對 SoC設計進行更改,且可以靈活更改測試算法,其缺點是主要依賴于微處理 器,且測試算法通過匯編語言程序來實現(xiàn),使測試時間相對上述兩種測試方 法要長,導致過高的測試成本。
可以看出,無論采用以上三種測試方法的哪一種方法對嵌入式存儲器進 行測試,都存在著優(yōu)缺點。因此,對于嵌入式存儲器的測試來說,如何既能 在節(jié)省測試成本,又能在減少SoC管腳數(shù)目的情況下,完成對SoC中的嵌入式存儲器測試,并將該測試應用于量產(chǎn)測試,成為了一個亟待解決的問題。
發(fā)明內容
有鑒于此,本發(fā)明提供一種嵌入式存儲器的測試系統(tǒng),該系統(tǒng)能夠在減 少SoC管腳數(shù)目及節(jié)省測試成本的情況下,完成對嵌入式存儲器的測試。
本發(fā)明還提供一種嵌入式存儲器的測試方法,該測試方法能夠在減少
SoC管腳數(shù)目及節(jié)省測試成本的情況下,完成對嵌入式存儲器的測試。
為達到上述目的,本發(fā)明實施例的技術方案具體是這樣實現(xiàn)的 一種嵌入式存儲器的測試系統(tǒng),所述系統(tǒng)包括嵌入式存儲器的測試裝置 和與其相連的自動測試設備,所述嵌入式存儲器的測試裝置包括存儲器測試
控制器和與其相連的存儲器測試總線接口單元,其中,
所述存儲器測試控制器,用于根據(jù)所述自動測試設備輸入的測試控制信 號,進行狀態(tài)轉換,在相應狀態(tài)下根據(jù)所述自動測試設備通過所述存儲器測 試總線接口單元輸入的存儲地址,將所述自動測試設備通過所述存儲器測試 總線接口單元輸入的測試數(shù)據(jù)寫入所述嵌入式存儲器中,或者在其他相應狀
態(tài)下根據(jù)所述自動測試設備通過所述存儲器測試總線接口單元輸入的存儲 地址,控制所述存儲器測試總線接口單元讀取所述嵌入式存儲器存儲的測試 數(shù)據(jù)并由所述存儲器測試總線接口單元發(fā)送給所述自動測試設備進行驗證; 所述存儲器測試總線接口單元,用于將所述自動測試設備發(fā)送的存儲地 址和測試數(shù)據(jù)發(fā)送給所述存儲器測試控制器;在所述存儲器測試控制器的控 制下讀取嵌入式存儲器存儲的測試數(shù)據(jù),發(fā)送給所述自動測試設備進行驗 證。
一種嵌入式存儲器的測試方法,所述測試的系統(tǒng)包括嵌入式存儲器的測 試裝置和與其相連的自動測試設備,所述嵌入式存儲器的測試裝置包括相互 連接的存儲器測試控制器和存儲器測試總線接口單元,該方法還包括
所述存儲器測試控制器根據(jù)所述自動測試設備輸入的測試控制信號,進 行狀態(tài)轉換;所述存儲器測試控制器在相應狀態(tài)下根據(jù)所述自動測試設備通過所述 存儲器測試總線接口單元輸入的存儲地址,將所述自動測試設備通過所述存 儲器測試總線接口單元輸入的測試數(shù)據(jù)寫入所述嵌入式存儲器中,或者在相 應狀態(tài)下根據(jù)所述自動測試設備通過所述存儲器測試總線接口單元輸入的 存儲地址,控制所述存儲器測試總線接口單元從所述嵌入式存儲器讀取所存 儲的測試數(shù)據(jù),并由所述存儲器測試總線接口單元發(fā)送給所述自動測試設備 進行驗證。
由上述技術方案可見,本發(fā)明提供的測試系統(tǒng)及方法,在SoC上設置
了相互連接的存儲器測試控制器和存儲器測試總線接口單元,存儲器測試控
制器用于根據(jù)ATE輸入的測試控制信號,進行狀態(tài)轉換,在相應狀態(tài)下根 據(jù)ATE通過存儲器測試總線接口單元輸入的存儲地址,將ATE通過存儲器 測試總線接口單元輸入的測試數(shù)據(jù)寫入嵌入式存儲器中,或者在其他相應狀 態(tài)下根據(jù)ATE通過存儲器測試總線接口單元輸入的存儲地址,控制存儲器 測試總線接口單元讀出嵌入式存儲器中存儲的測試數(shù)據(jù)并由存儲器測試總 線接口單元發(fā)送給ATE進行驗證。由于在本發(fā)明中,ATE輸入的存儲地址 和測試數(shù)據(jù)都是通過和存儲器測試總線單元之間的測試總線接口傳輸,進而 傳輸給存儲器測試控制器,存儲器測試控制器根據(jù)ATE輸入的測試控制信 號,進行狀態(tài)轉換,在不同的狀態(tài)下解析出存儲地址和測試數(shù)據(jù),對嵌入式 存儲器進行讀/寫測試數(shù)據(jù)的操作,所以,和現(xiàn)有技術中的第二種測試方法 相比較,其不需要區(qū)分SoC的地址總線接口和數(shù)據(jù)總線接口 ,而是將SoC 的兩個總線接口合并為一個測試總線接口 ,因此,本發(fā)明減少了 SoC的管 腳數(shù)目,可以在減少SoC管腳數(shù)目及節(jié)省測試成本的情況下,完成對嵌入 式存儲器的測試。
圖1為現(xiàn)有技術采用BIST方法測試嵌入式存儲器的結構示意圖; 圖2a為現(xiàn)有技術通過I/0多路選擇器直接訪問存儲器的結構示意圖;圖2b為現(xiàn)有技術通過1/0多路選擇器直接訪問存儲器對嵌入式存儲器進行
測試的結構示意圖3為現(xiàn)有現(xiàn)有技術通過SoC中的微處理器進行測試的結構示意圖4為本發(fā)明提供的嵌入式存儲器的測試系統(tǒng)結構示意圖5為本發(fā)明存儲器測試控制器用狀態(tài)機實現(xiàn)時狀態(tài)機的狀態(tài)轉換圖6為本發(fā)明每次都重新輸入地址對嵌入式存儲器進行寫-讀-寫操作過
程中,相關信號及存儲器測試控制器狀態(tài)轉換時序圖; 圖7為本發(fā)明提供的嵌入式存儲器的測試方法流程圖; 圖8為本發(fā)明提供的第二個實施例釆用March C算法對嵌入式存儲器進行
測試的方法流程圖。
具體實施例方式
為使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下參照附圖并舉 實施例,對本發(fā)明作進一步詳細說明。
現(xiàn)有技術中的第二種測試方法存在的最大缺點就是雖然使用了 1/0多 路選擇器進行嵌入式存儲器的接口信號映射到SoC的管腳上,但是仍然需 要多個SoC管腳分別作為嵌入式存儲器的存儲器地址總線、存儲器數(shù)據(jù)總 線及存儲器控制總線實現(xiàn)對嵌入式存儲器的測試控制。更進一步地,隨著嵌 入式存儲器的位數(shù)增加,其測試所需要的SoC管腳數(shù)也會越來越多,所以 在測試嵌入式存儲器時會導致SoC管腳數(shù)目較多,不利于SoC設計。
因此,本發(fā)明基于現(xiàn)有技術的第二種測試方法,在減少SoC管腳數(shù)目 及節(jié)省測試成本的情況下,提出了測試嵌入式存儲器的裝置及方法,即在 SoC上設置相互連接的存儲器測試控制器和存儲器測試總線接口單元,存儲 器測試控制器用于根據(jù)ATE輸入的測試控制信號,進行狀態(tài)轉換,在相應 狀態(tài)下根據(jù)ATE通過存儲器測試總線接口單元輸入的存儲地址,將ATE通 過存儲器測試總線接口單元輸入的測試數(shù)據(jù)寫入嵌入式存儲器中,或者在其 他相應狀態(tài)下根據(jù)ATE通過存儲器測試總線接口單元輸入的存儲地址,控制存儲器測試總線接口單元讀取嵌入式存儲器中存儲的測試數(shù)據(jù)并由存儲
器測試總線接口單元發(fā)送給ATE進行驗證。
由于在本發(fā)明中,ATE輸入的存儲地址和測試數(shù)據(jù)都是通過和存儲器 測試總線單元之間的測試總線接口傳輸,進而傳輸給存儲器測試控制器,存 儲器測試控制器根據(jù)ATE輸入的測試控制信號,進行狀態(tài)轉換,在不同的 狀態(tài)下解析出存儲地址和測試數(shù)據(jù),對嵌入式存儲器進行讀/寫測試數(shù)據(jù)的 操作。所以,和現(xiàn)有技術中的第二種測試方法相比較,其不需要區(qū)分SoC 的存儲器地址總線接口和存儲器數(shù)據(jù)總線接口 ,而是將SoC的兩個總線接 口合并為一個測試總線接口 ,減少SoC管腳數(shù)目及節(jié)省測試成本。
圖4為本發(fā)明提供的嵌入式存儲器的測試系統(tǒng)結構示意圖,該系統(tǒng)包括 嵌入式存儲器的測試裝置和與其相連的ATE,所述嵌入式存儲器的測試裝置 包括在SoC上的存儲器測試控制器和與其相連的存儲器測試總線接口單元, 存儲器溯'J試控制器通過存儲器控制總線、存儲器地址總線和存儲器輸入數(shù)據(jù) 總線與嵌入式存儲器相連接,存儲器測試總線接口單元通過存儲器輸出數(shù)據(jù) 總線與嵌入式存儲器相連接,其中,
存儲器測試控制器,用于根據(jù)ATE輸入的測試控制信號,進行狀態(tài)轉 換,在相應狀態(tài)下根據(jù)ATE通過存儲器測試總線接口單元輸入的存儲地址, 將ATE通過存儲器測試總線接口單元輸入的測試數(shù)據(jù)寫入嵌入式存儲器中, 或者在相應狀態(tài)下根據(jù)ATE通過存儲器測試總線接口單元輸入的存儲地址, 控制存儲器測試總線接口單元讀取在嵌入式存儲器存儲的測試數(shù)據(jù)并由存 儲器測試總線接口單元發(fā)送給ATE進行驗證;
存儲器測試總線接口單元,用于將ATE發(fā)送的存儲地址和測試數(shù)據(jù)發(fā) 送給存儲器測試控制器;在存儲器測試控制器的控制下讀取在嵌入式存儲器 存儲的測試數(shù)據(jù),發(fā)送給ATE進行驗證。
在該裝置中,存儲器測試控制器進行狀態(tài)轉換后,會通過存儲器控制總 線向嵌入式存儲器發(fā)送相應的控制信號,并通過存儲器地址總線將解析出的 存儲地址發(fā)送給嵌入式存儲器后,通過存儲器輸入數(shù)據(jù)總線進行測試數(shù)據(jù)的寫入操作;或者通過存儲器控制總線向嵌入式存儲器發(fā)送相應的控制信號, 并通過存儲器地址總線將解析出的存儲地址發(fā)送給嵌入式存儲器后,發(fā)送存 儲器測試總線輸出信號給存儲器測試總線接口單元,存儲器測試總線接口單
元通過存儲器輸出數(shù)據(jù)總線進行測試數(shù)據(jù)的讀取并發(fā)送給ATE的操作。
在該裝置中,ATE通過測試總線接口單元和存儲器測試控制器相連接, 用于發(fā)送存儲地址、發(fā)送測試數(shù)據(jù)或接收存儲器測試總線接口單元所讀取的 嵌入式存儲器中的測試數(shù)據(jù)。ATE還通過測試控制總線以及時鐘信號總線和 存儲器測試控制器相連接,用于通過時鐘信號總線發(fā)送測試時鐘信號給存儲 器測試控制器,并在每個測試時鐘信號的上升沿通過測試控制總線發(fā)送測試 控制信號給存儲器測試控制器。
在該裝置中,存儲器測試控制器和存儲器測試總線接口單元之間通過測 試總線接口(即測試總線接口單元上的管腳)的輸入信號線和測試總線接口 的輸出使能信號線相連接,其中,測試總線接口的輸入信號線用于將ATE 輸入的存儲地址和測試數(shù)據(jù)由存儲器測試總線接口單元輸入給存儲器測試 控制器,測試總線接口的輸出使能信號線用于由存儲器測試控制器發(fā)送存儲 器測試總線輸出信號給存儲器測試總線接口單元,控制存儲器測試總線接口 單元讀取嵌入式存儲器中存儲的測試數(shù)據(jù)并發(fā)送給ATE。
具體地說,存儲器測試控制器在每個測試時鐘信號(TCK, Test Clock) 上升沿根據(jù)ATE輸入的測試控制信號(TCS, Test Control Signals )的變化 情況產(chǎn)生不同狀態(tài)轉換,進而在不同的狀態(tài)下通過存儲器地址總線、存儲器 輸入數(shù)據(jù)總線及存儲器控制總線對嵌入式存儲器進行控制,通過存儲器控制 總線發(fā)送的控制信號包括存儲器寫使能(MWE, Memory Write Enable ) 信號和存儲器讀使能(MRE, Memory Read Enable )信號。存儲器測試總線 接口單元通過測試輸入輸出接口 ( TIO, Test Input/Output)接收具有存儲地 址和測試數(shù)據(jù)的輸入信號(TIO—I),發(fā)送給存儲器器測試控制器,存儲器 測試控制器將接收的存儲地址解析出來并通過存儲器地址總線(MAB, Memory Address Bus )傳輸給嵌入式存儲器,存儲器測試控制器將接收的測試數(shù)據(jù)通過存儲器輸入數(shù)據(jù)總線(MDI, Memory Data Input)寫入嵌入式存 儲器,在存儲器測試控制器的測試輸出信號(TIO—OE)的控制下嵌入式存 儲器中的測試數(shù)據(jù)通過存儲器輸出數(shù)據(jù)總線(MDO, Memory Data Output) 由存儲器測試總線接口單元讀取,且將讀取的測試數(shù)據(jù)發(fā)送到TIO上,傳輸 給ATE。
存儲器測試控制器為了保證在不同的狀態(tài)下發(fā)送不同的觀'K式信號,實現(xiàn) 不同存儲單元的讀寫測試數(shù)據(jù)操作,可以通過狀態(tài)機來實現(xiàn),該狀態(tài)機的轉 換圖如圖5所示,包括空閑狀態(tài)、地址狀態(tài)、預讀狀態(tài)、讀狀態(tài)、讀回狀態(tài) 和寫狀態(tài)。該狀態(tài)機在TCK上升沿根據(jù)TCS的不同值進行狀態(tài)轉換,TCS 共有四種可能的取值,分別設置為"0" 、 "1" 、 "2"和"3",具體狀態(tài) 轉換描述如下
初始狀態(tài)為空閑狀態(tài),當TCS為"0"時,維持空閑狀態(tài);當TCS不等 于"0"時,即為"1" 、 "2"或"3"時,轉換到地址狀態(tài);
在地址狀態(tài)下,存儲器測試控制器將TIO通過存儲器測試總線接口單 元輸入的嵌入式存儲器的存儲地址解析出來,進入地址狀態(tài)后,若TCS等 于"0",則轉換到空閑狀態(tài),若TCS等于"1"或"3",則轉換到預讀狀 態(tài),若TCS等于"2",則轉換到寫狀態(tài);
在預讀狀態(tài)下,存儲器測試控制器將將在地址狀態(tài)下解析出來的地址通 過MAB發(fā)送給嵌入式存儲器,在進入預讀狀態(tài)后,無論TCS為何值,都轉 換到讀狀態(tài);
在讀狀態(tài)下,將嵌入式存儲器中的測試數(shù)據(jù)讀取,存儲器測試控制器向 嵌入式存儲器發(fā)送MRE后,進入讀狀態(tài)后,也無論TCS為何值,都轉換到
讀回狀態(tài);
在讀回狀態(tài)時,存儲器測試控制器通過TIO—OE觸發(fā)存儲器測試總線接 口單元,存儲器測試總線接口單元通過MDO讀取測試數(shù)據(jù),并將讀取出的 測試數(shù)據(jù)返回到TIO上;當然,如果TCK頻率設定不高,在一個時間周期 內完成可以將讀取出的測試數(shù)據(jù)直接返回到TIO上,而無需TCK再次采樣后再返回到TIO上,這樣讀狀態(tài)和讀回狀態(tài)可以合并為讀狀態(tài);
進入讀回狀態(tài)后,若TCS等于"0",則轉換到地址狀態(tài);如果TCS 等于"1",將在地址狀態(tài)下解析出來的地址順序遞增,轉換到讀狀態(tài),這 表明接下來要對遞增后的地址進行讀操作;若TCS等于"3",則將在地址 狀態(tài)下解析出來的地址順序遞減,轉換到讀狀態(tài),這表明接下來要對遞減后 的地址進行讀操作;若TCS等于"2",則轉換到寫狀態(tài),這表明對地址狀 態(tài)下解析出來的寫地址進行寫操作,即發(fā)送MWE后,進入寫狀態(tài),將測試 數(shù)據(jù)通過MDI寫入嵌入式存儲器中;
進入寫狀態(tài)后,若TCS等于"0",轉換到地址狀態(tài);若TCS等于"1", 將對地址狀態(tài)下解析出來的地址順序遞增,轉換到預讀狀態(tài),這表明接下來 要對遞增后的地址進行讀操作;若TCS等于"3",將對地址狀態(tài)下解析出 來的地址順序遞減,轉換到預讀狀態(tài),這表明接下來要對遞減后的地址進行 讀操作;若TCS等于"2",將對地址狀態(tài)下解析出來的地址順序遞增,仍 然維持寫狀態(tài),這表明接下來對要遞增后的地址進行寫操作。
可以看出,采用本發(fā)明提供的存儲器測試控制器,就可以對嵌入式存儲 器進行讀、寫測試數(shù)據(jù)的操作。圖6為本發(fā)明每次都重新輸入地址對嵌入式 存儲器進行寫-讀-寫操作過程中,相關信號及存儲器測試控制器狀態(tài)轉換 時序圖,如圖所示,在TCK的每個上升沿時,根據(jù)TCS的不同,會進行存 儲地址解析、寫測試數(shù)據(jù)及讀測試數(shù)據(jù)的過程,整個過程如上述具體狀態(tài)轉 換描述。
圖7為本發(fā)明提供的嵌入式存儲器的測試方法流程圖,其具體步驟為 步驟701、在SoC上設置相互連接的存儲器測試控制器和存儲器測試總 線接口單元;
步驟702、存儲器測試控制器根據(jù)ATE輸入的測試控制信號,進行狀 態(tài)轉換;
步驟703、存儲器測試控制器在相應狀態(tài)下根據(jù)ATE通過存儲器測試 總線接口單元輸入的存儲地址,將ATE通過存儲器測試總線接口單元輸入的測試數(shù)據(jù)寫入嵌入式存儲器中,或者在相應狀態(tài)下根據(jù)ATE通過存儲器
測試總線接口單元輸入的存儲地址,控制存儲器測試總線接口讀取嵌入式存
儲器中的測試數(shù)據(jù)并由存儲器測試總線接口單元發(fā)送給ATE進行驗證。
為了更清楚地說明本發(fā)明提供的測試裝置及測試方法,以下結合具體實
施例進行詳細說明。 具體實施例一
本實施例以測試一個地址總線位數(shù)為8、字寬位數(shù)也為8的嵌入式存儲 器為例說明,用于校驗及控制存儲器測試控制器的ATE采用的測試方法為 掃描測試方式,具體步驟如下
步驟一,ATE控制TCS為"2",使存儲器測試控制器的狀態(tài)從空閑狀 態(tài)跳轉到地址狀態(tài),此時ATE在TIO上輸入嵌入式存儲器的第一個地址數(shù) 值,即二進制的00000000,該地址數(shù)值通過存儲器測試總線接口單元傳輸 給存儲器測試控制器,存儲器測試控制器在地址狀態(tài)下將其解析出來并通過 MAB傳輸給嵌入式存儲器;保持TCS上輸入2使存儲器測試控制器從地址 狀態(tài)轉換到寫狀態(tài),此時ATE在TIO上輸入寫入存儲器的數(shù)值,即二進制 的00000000,該數(shù)值通過存儲器測試總線接口單元傳輸給存儲器測試控制 器,存儲器測試控制器發(fā)送MWE給嵌入式存儲器,通過MDI寫入該數(shù)值 到嵌入式存儲器中;ATE在TCS上輸入0,存儲器測試控制器的狀態(tài)回到 地址狀態(tài);
步驟二, ATE控制TCS為"1",使存儲器測試控制器的狀態(tài)從地址狀 態(tài)轉換到預讀狀態(tài),同時該ATE控制TIO上輸入地址數(shù)值,即二進制的 0000000,該地址數(shù)值通過存儲器測試總線接口單元傳輸給存儲器測試控制 器,由存儲器測試控制器解析出地址數(shù)值并通過MAB傳輸給嵌入式存儲器, 保持TCS輸入1直到轉換到讀回狀態(tài);在讀回狀態(tài)下通過存儲器測試總線 接口單元將嵌入式存儲器輸出的數(shù)值輸出給ATE,由ATE將該數(shù)值和步驟 一中寫入的數(shù)值進行驗證,如果不相同,則測試不通過,該ATE控制在TCS 上輸入"0",直至返回到空閑狀態(tài),結束測試;如果相同,則測試通過,該ATE控制在TCS上輸入"0",存儲器測試控制器的狀態(tài)將返回地址狀 太.
步驟三,按照步驟一的過程繼續(xù)執(zhí)行,將寫入嵌入式存儲器的數(shù)值更改 為imiiu;
步驟四,按照步驟二的過程繼續(xù)執(zhí)行,輸出給TIO的數(shù)值更改為 1111111,用于'瞼i正。
步驟一 ~步驟四完成了嵌入式存儲器的一個存儲地址所對應的存儲單 元的測試操作,更改存儲地址重復執(zhí)行步驟一 步驟四,進行嵌入式存儲器 中的每一個存儲地址的測試操作,直到嵌入式存儲器的所有存儲地址都被測 試操作完。
可以看出,本發(fā)明可以在ATE上設置不同的測試方式,然后根據(jù)不同 的測試算法,對存儲器測試控制器的狀態(tài)進行控制,以及將要解析的嵌入式 存儲器的存儲地址及測試數(shù)據(jù)發(fā)送給存儲器測試控制器,由存儲器測試控制 器在不同的狀態(tài)下進行相應的解析存儲地址及寫測試數(shù)據(jù)的操作,然后ATE 再通過存儲器測試總線接口單元讀取該解析存儲地址下的測試數(shù)據(jù),進行驗 證。
在具體實現(xiàn)中,任何一種測試算法在其前后要校驗的存儲單元對應的存 儲地址都是有一定關系的,主要表現(xiàn)為遞增或遞減,遞增或遞減的步長取決 于嵌入式存儲器的字寬,如果嵌入式存儲器的字寬為l個字節(jié)則步長為1, 依次類推。釆用這種方法相對于每次寫測試數(shù)據(jù)及讀測試數(shù)據(jù)都需要重新輸 入存儲地址可以大幅度提升測試時間。為了更清楚地說明本發(fā)明的這一個特 性,下面結合具體實施例二作詳細說明。
實施例二
本實施例以測試一個地址總線位數(shù)為32、字寬位lt也為32的嵌入式存 儲器為例說明,用于校驗及控制存儲器測試控制器的ATE采用的測試方法 為March C方式。
該實施例的具體步驟如圖8所示,圖8為本發(fā)明提供的第二個實施例采用March C算法對嵌入式存儲器進行測試的方法流程圖,其具體步驟為
步驟一,ATE在存儲器測試控制器的TCS上輸入"2",使存儲器測試 控制器的狀態(tài)從空閑狀態(tài)跳轉到地址狀態(tài),此時,ATE在TIO輸入地址數(shù) 值,即十六進制的00000000,該地址數(shù)值通過存儲器測試總線接口單元傳 輸給存儲器測試控制器,由存儲器測試控制器將地址數(shù)值解析出來通過 MAB傳輸給控制嵌入式存儲器;ATE保持在TCS上輸入的"2",使存儲 器測試控制器的狀態(tài)從地址狀態(tài)轉換到寫狀態(tài),此時,ATE在TIO輸入測 試數(shù)據(jù),即十六進制的00000000,該測試數(shù)據(jù)通過存儲器測試總線接口單' 元傳輸給存儲器測試控制器,由存儲器測試控制器將測試數(shù)據(jù)解析出來通過 MDI傳輸給嵌入式存儲器;ATE保持在TCS輸入"2",此時存儲器測試控 制器將地址數(shù)值以步長為4進行遞增,同時通過MAB將遞增后的地址數(shù)值 傳輸給嵌入式存儲器,存儲器測試控制器進入下一個寫狀態(tài),ATE在TIO 保持輸入攜帶測試數(shù)據(jù)的輸入信號,即十六進制的00000000,直到嵌入式 存儲器的最后一個存儲地址被寫入測試數(shù)據(jù),最后一個地址為十六進制的 FFFFFFC。
寫完最后一個存儲地址后,ATE在TCS上輸入"0",使存儲器測試控 制器的狀態(tài)轉換到地址狀態(tài)。
步驟二, ATE在TCS上輸入"1",使存儲器測試控制器從地址狀態(tài)轉 換到預讀狀態(tài),此時ATE在TIO輸入地址數(shù)值,該地址數(shù)值為十六進制的 00000000,該地址數(shù)值通過存儲器測試總線接口單元傳輸給存儲器測試控制 器,由存儲器測試控制器將地址數(shù)值解析出來并通過MAB傳輸給嵌入式存 儲器存儲器;ATE保持TCS輸入"1",使存儲器測試控制器從地址狀態(tài)轉 換到讀狀態(tài)再到讀回狀態(tài)。在讀狀態(tài)下將寫入嵌入式存儲器的測試數(shù)據(jù)讀取 到MDO,在讀回狀態(tài)下通過存儲器測試總線接口單元將該測試數(shù)據(jù)再讀回 到TIO上并發(fā)送給ATE,由ATE驗證該測試數(shù)據(jù)是否為十六進制的 00000000,如果不是,則該存儲地址的測試沒有通過,ATE在TCS上輸入 "0",直到使存儲器測試控制器返回到空閑狀態(tài),結束測試,如果是,則在TCS上輸入"2",使存儲器測試控制器轉換到寫狀態(tài),ATE在TIO上輸 入測試數(shù)據(jù),即十六進制的FFFFFFFF ,該測試數(shù)據(jù)通過存儲器測試總線接 口單元傳輸給存儲器測試控制器,由存儲器測試控制器將該測試數(shù)據(jù)解析出 來通過MDI寫入嵌入式存儲器;ATE在TCS上輸入l,此時存儲器測試控 制器將地址數(shù)值以步長為4進行遞增,并通過MAB將該地址數(shù)值傳輸給嵌 入式存儲器,開始嵌入式存儲器的下一個地址對應的存儲單元的驗證,直至 完成嵌入式存儲器的所有存儲地址的驗證操作,當完成嵌入式存儲器的最后 一個存儲單元的寫操作,即地址為十六進制的FFFFFFFC的寫測試數(shù)據(jù)操作 后,ATE在TCS上輸入"0",使存儲器測試控制器的狀態(tài)轉換到地址狀態(tài); 步驟三,ATE在TCS上輸入"1",使得存儲器測試控制器的狀態(tài)從地 址狀態(tài)轉換到預讀狀態(tài),此時ATE在TIO輸入地址數(shù)值,該地址數(shù)值為十 六進制的00000000,存儲器測試模塊通過過存儲器測試總線接口單元接收 到后,由控制嵌入式存儲器測試控制器解析出該地址數(shù)據(jù)并通過MAB傳輸 給嵌入式存儲器;ATE保持TCS輸入"1",使得存儲器測試控制器的從地 址狀態(tài)轉換到讀狀態(tài)再到讀回狀態(tài)。即在讀狀態(tài)下將寫入嵌入式存儲器的測 試數(shù)據(jù)讀取到MDO,在讀回狀態(tài)下通過存儲器測試總線接口單元將該測試 數(shù)據(jù)再讀回到TIO上并發(fā)送給ATE,由ATE驗證該測試數(shù)據(jù)是否為十六進 制的FFFFFFFF,如果不是,則該地址的測試沒有通過,ATE在TCS上輸入
"0",直到使得存儲器測試控制器返回到空閑狀態(tài),結束測試,如果是, 則在TCS上輸入"2",使得存儲器測試控制器轉換到寫狀態(tài),ATE在TIO 上輸入測試數(shù)據(jù),即十六進制的00000000,該測試數(shù)據(jù)通過存儲器測試總 線接口傳輸給存儲器測試控制器,由存儲器測試控制器解析出該測試數(shù)據(jù)并 通過MDI寫入控制嵌入式存儲器;ATE在TCS上輸入l,此時存儲器測試 控制器將地址數(shù)值以步長為4進行遞增,并通過MAB將該地址數(shù)值傳輸給 嵌入式存儲器,開始嵌入式存儲器的下一個存儲地址的驗證,直至完成嵌入 式存儲器的所有存儲地址的校驗操作,當完成嵌入式存儲器的最后一個存儲 地址的,即地址為十六進制的FFFFFFFC的寫操作后,ATE在TCS上輸入"0",使得存儲器測試控制器的狀態(tài)轉換到地址狀態(tài)。
步驟四,ATE在TCS上輸入"1",使存儲器測試控制器的狀態(tài)從地址 狀態(tài)轉換到預讀狀態(tài),此時ATE在TIO輸入地址數(shù)值,該地址數(shù)值為十六 進制的FFFFFFFC,存儲器測試模塊通過過存儲器測試總線接口單元接收到 后,由存儲器測試控制器解析出該地址數(shù)據(jù)并通過MAB傳輸給嵌入式存儲 器;ATE保持TCS輸入"1",使存儲器測試控制器的地址狀態(tài)轉換到讀狀 態(tài)再到讀回狀態(tài)。在讀狀態(tài)下將寫入嵌入式存儲器的測試數(shù)據(jù)讀取到MDO, 在讀回狀態(tài)下通過存儲器測試總線接口單元將該測試數(shù)據(jù)再讀回到TIO上
并送給ATE,由ATE驗證該測試數(shù)據(jù)是否為十六進制的00000000,如果不 是,則該地址的測試沒有通過,ATE在TCS上輸入"0",直到使存儲器測 試控制器返回到空閑狀態(tài),結束測試,如果是,則在TCS上輸入"2",使 存儲器測試控制器轉換到寫狀態(tài),ATE在TIO上輸入攜帶測試數(shù)據(jù)的輸入 信號,即十六進制的FFFFFFFF,該測試數(shù)據(jù)通過存儲器測試總線接口單元 傳輸給存儲器測試控制器,由存儲器測試控制器解析出該測試數(shù)據(jù)并通過 MDI寫入嵌入式存儲器;ATE在TCS上輸入3,此時存儲器測試控制器將
器,開始嵌入式存儲器的下一個地址對應的存儲單元的驗證,直至完成嵌入 式存儲器的所有存儲地址的驗證操作,當完成嵌入式存儲器的最后一個存儲 地址的,即地址為十六進制的00000000對應的存儲地址的寫操作后,ATE 在TCS上輸入"0",使存儲器測試控制器的狀態(tài)轉換到地址狀態(tài)。
步驟五,ATE在TCS上輸入"1",使存儲器測試控制器的狀態(tài)從地址 狀態(tài)轉換到預讀狀態(tài),此時ATE在TIO輸入地址數(shù)值,該地址數(shù)值為十六 進制的FFFFFFFC,存儲器測試模塊通過過存儲器測試總線接口單元接收到 后,由存儲器測試控制器解析出該地址數(shù)據(jù)并通過MAB傳輸給嵌入式存儲 器;ATE保持TCS輸入"1",使存儲器測試控制器從地址狀態(tài)轉換到讀狀 態(tài)再到讀回狀態(tài)。在讀狀態(tài)下將寫入嵌入式存儲器的測試數(shù)據(jù)讀取到MDO, 在讀回狀態(tài)下通過存儲器測試總線接口單元將該測試數(shù)據(jù)再讀回到TIO上并發(fā)送給ATE,由ATE驗證該測試數(shù)據(jù)是否為十六進制的FFFFFFFF,如 果不是,則該地址的測試沒有通過,ATE在TCS上輸入"0",直到使存儲 器測試控制器返回到空閑狀態(tài),結束測試,如果是,則在TCS上輸入"2", 使存儲器測試控制器轉換到寫狀態(tài),ATE在TIO上輸入測試數(shù)據(jù),即十六 進制的00000000,該測試數(shù)據(jù)通過存儲器測試總線接口單元傳輸給存儲器 測試控制器,由存儲器測試控制器解析出該測試數(shù)據(jù)并通過MDI寫入嵌入 式存儲器;ATE在TCS上輸入3,此時存儲器測試控制器將地址數(shù)值以步 長為4進行遞減并通過MAB將該地址數(shù)值傳輸給嵌入式存儲器,開始嵌入 式存儲器的下一個地址對應的驗證,直至完成嵌入式存儲器的所有存儲地址 的驗證操作,當完成嵌入式存儲器的最后一個存儲地址的,即地址為十六進 制的00000000對應的存儲單元的寫操作后,ATE在TCS上輸入"0",使 存儲器測試控制器的狀態(tài)轉換到地址狀態(tài),ATE保持在TCS上輸入0,使 存儲器溯'J試控制器的狀態(tài)轉換到空閑狀態(tài),結束整個須'J試過程。
類似地,采用圖8所示的方法,也可以方便地實現(xiàn)March C方式的其他 變換形式。
通過具體實施例一以及具體實施例二的舉例說明,本發(fā)明還可以有很多 方式實現(xiàn)對嵌入式存儲器的測試,比如如果嵌入式存儲器的地址總線位數(shù)超 過數(shù)據(jù)總線位數(shù),也可以對存儲器測試控制器的地址狀態(tài)所占的TCK進行 增加來實現(xiàn)對嵌入式存儲器的地址總線寫入或讀出測試數(shù)據(jù)來實現(xiàn)。
可以看出,本發(fā)明提供的嵌入式存儲器的測試方法在現(xiàn)有的第二種測試 方法的基礎上,提出了直接通過存儲器測試控制器和存儲器測試總線接口單 元相互配合,ATE通過控制存儲器測試控制器和存儲器測試總線接口單元就 可以實現(xiàn)對嵌入式存儲器的測試,由于在本發(fā)明中,ATE輸入的存儲地址和 測試數(shù)據(jù)都是通過和存儲器測試總線之間的測試總線接口單元傳輸,進而傳 輸給存儲器測試控制器,存儲器測試控制器根據(jù)ATE輸入的測試控制信號, 進行狀態(tài)轉換,在不同的狀態(tài)下解析出存儲地址和測試數(shù)據(jù),對嵌入式存儲 器進行讀/寫測試數(shù)據(jù)的操作,所以,和現(xiàn)有技術中的第二種測試方法相比較,其不需要區(qū)分SoC的地址總線接口和數(shù)據(jù)總線接口 ,而是將SoC的兩
個總線接口合并為一個測試總線接口 ,因此,本發(fā)明減少了 SoC的管腳數(shù) 目,可以在減少SoC管腳數(shù)目及節(jié)省測試成本的情況下,完成對嵌入式存 儲器的測試。
以上舉較佳實施例,對本發(fā)明的目的、技術方案和優(yōu)點進行了進一步詳 細說明,所應理解的是,以上所述僅為本發(fā)明的較佳實施例而已,并不用以 限制本發(fā)明,凡在本發(fā)明的精神和原則之內,所作的任何修改、等同替換和 改進等,均應包含在本發(fā)明的保護范圍之內。
權利要求
1、一種嵌入式存儲器的測試系統(tǒng),所述系統(tǒng)包括嵌入式存儲器的測試裝置和與其相連的自動測試設備,其特征在于,所述嵌入式存儲器的測試裝置包括存儲器測試控制器和與其相連的存儲器測試總線接口單元,其中,所述存儲器測試控制器,用于根據(jù)所述自動測試設備輸入的測試控制信號,進行狀態(tài)轉換,在相應狀態(tài)下根據(jù)所述自動測試設備通過所述存儲器測試總線接口單元輸入的存儲地址,將所述自動測試設備通過所述存儲器測試總線接口單元輸入的測試數(shù)據(jù)寫入所述嵌入式存儲器中,或者在其他相應狀態(tài)下根據(jù)所述自動測試設備通過所述存儲器測試總線接口單元輸入的存儲地址,控制所述存儲器測試總線接口單元讀取所述嵌入式存儲器存儲的測試數(shù)據(jù)并由所述存儲器測試總線接口單元發(fā)送給所述自動測試設備進行驗證;所述存儲器測試總線接口單元,用于將所述自動測試設備發(fā)送的存儲地址和測試數(shù)據(jù)發(fā)送給所述存儲器測試控制器;在所述存儲器測試控制器的控制下讀取嵌入式存儲器存儲的測試數(shù)據(jù),發(fā)送給所述自動測試設備進行驗證。
2、 如權利要求1所述的測試系統(tǒng),其特征在于,所述存儲器測試控制器通過存儲器控制總線、存儲器地址總線和存儲器輸入數(shù)據(jù)總線與所述嵌入式存儲器相連;所述存儲器測試總線接口單元通過存儲器輸出數(shù)據(jù)總線和所述嵌入式存儲器相連接。
3、 如權利要求1或2所述的測試系統(tǒng),其特征在于,所述自動測試設備通過存儲器測試總線接口單元、時鐘信號總線及測試控制總線和存儲器測試控制器相連接,其中,所述自動測試設備通過所述存儲器測試總線接口單元發(fā)送存儲地址或測試數(shù)據(jù),所述自動測試設備接收所述存儲器測試總線接口單元讀取的所述嵌入式存儲器存儲的測試數(shù)據(jù);所述自動測試設備通過所述時鐘信號總線發(fā)送測試時鐘信號給所述存 儲器測試控制器,并在每個測試時鐘信號的上升沿通過所述須'J試控制總線發(fā) 送淡'J試控制信號給所述存儲器頂'j試控制器。
4、 如權利要求3所述的測試系統(tǒng),其特征在于,所述存儲器測試控制器根據(jù)所述自動測試設備在每個測試時鐘信號的上升沿輸入的測試控制信號,進行狀態(tài)轉換;所述狀態(tài)包括空閑狀態(tài)、地址狀態(tài)、預讀狀態(tài)、讀狀態(tài)、讀回狀態(tài)及寫狀態(tài);在地址狀態(tài)下,所述存儲器測試控制器解析存儲地址后,通過存儲器地 址總線發(fā)送給所述嵌入式存儲器;在讀狀態(tài)和讀回狀態(tài)下,所述存儲器測試控制器通過所述存儲器控制總 線發(fā)送存儲器讀使能信號給所述嵌入式存儲器,并發(fā)送存儲器測試控制器測 試輸出信號給所述存儲器測試總線接口單元,所述存儲器測試總線接口單元 通過存儲器輸出數(shù)據(jù)總線讀取所述嵌入式存儲器中存儲的測試數(shù)據(jù)后,發(fā)送 給自動測試設備;在寫狀態(tài)下,所述存儲器測試控制器通過所述存儲器控制總線發(fā)送存儲 器寫使能信號給所述嵌入式存儲器,通過所述存儲器輸入數(shù)據(jù)總線將所述自 動測試設備通過所述存儲器測試總線接口單元發(fā)送的測試數(shù)據(jù)寫入所述嵌 入式存儲器中;所述在寫狀態(tài)下或讀回狀態(tài)下,根據(jù)不同的測試控制信號,對存儲地址 進行遞增或遞減。
5、 一種嵌入式存儲器的測試方法,所述測試的系統(tǒng)包括嵌入式存儲器 的測試裝置和與其相連的自動測試設備,其特征在于,所述嵌入式存儲器的 測試裝置包括相互連接的存儲器測試控制器和存儲器測試總線接口單元,該 方法還包括所述存儲器測試控制器根據(jù)所述自動測試設備輸入的測試控制信號,進 行狀態(tài)轉換;所述存儲器測試控制器在相應狀態(tài)下根據(jù)所述自動測試設備通過所述 存儲器測試總線接口單元輸入的存儲地址,將所述自動測試設備通過所述存 儲器測試總線接口單元輸入的測試數(shù)據(jù)寫入所述嵌入式存儲器中,或者在其 他相應狀態(tài)下根據(jù)所述自動測試設備通過所述存儲器測試總線接口單元輸 入的存儲地址,控制所述存儲器測試總線接口單元從所述嵌入式存儲器讀取 所存儲的測試數(shù)據(jù),并由所述存儲器測試總線接口單元發(fā)送給所述自動測試 設備進行驗證。
6、 如權利要求5所述的測試方法,其特征在于,所述存儲器測試控制 器根據(jù)所述自動測試設備輸入的測試控制信號,進行狀態(tài)轉換過程為所述自動測試設備在每個測試時鐘信號的上升沿輸入測試控制信號給 所述存儲器測試控制器,控制所述存儲器控制器進行不同的狀態(tài)轉換;所述狀態(tài)為空閑狀態(tài)、地址狀態(tài)、預讀狀態(tài)、讀狀態(tài)、讀回狀態(tài)及寫狀態(tài);在地址狀態(tài)下,所述存儲器測試控制器解析出存儲地址后,通過所述存 儲器地址總線發(fā)送給所述嵌入式存儲器;在讀狀態(tài)和讀回狀態(tài)下,所述存儲器測試控制器通過存儲器控制總線發(fā) 送存儲器讀使能信號給所述嵌入式存儲器,并發(fā)送存儲器測試控制器測試輸 出信號給所述存儲器測試總線接口單元,所述存儲器測試總線接口單元通過 所述存儲器輸出數(shù)據(jù)總線讀取所述嵌入式存儲器中存儲的測試數(shù)據(jù)后,發(fā)送 給所述自動測試設備;在寫狀態(tài)下,所述存儲器測試控制器通過存儲器控制總線發(fā)送存儲器寫 使能信號給所述嵌入式存儲器,通過存儲器輸入數(shù)據(jù)總線將通過所述存儲器 測試總線接口單元接收的由自動測試設備發(fā)送的測試數(shù)據(jù)寫入所述嵌入式 存儲器中;所述在寫狀態(tài)下或讀回狀態(tài)下,根據(jù)不同的測試控制信號,對存儲地址 進行遞增或遞減。
7、 如權利要求6所述的測試方法,其特征在于,當所述自動測試設備采用掃描測試方式時,所述存儲器測試控制器在相應狀態(tài)下根據(jù)所述自動測 試設備通過所述存儲器測試總線接口單元輸入的存儲地址,將所述自動測試 設備通過所述存儲器測試總線接口單元輸入的測試數(shù)據(jù)寫入所述嵌入式存 儲器中,或者在其他相應狀態(tài)下根據(jù)所述自動測試設備通過所述存儲器測試 總線接口單元輸入的存儲地址,控制所述存儲器測試總線接口單元從所述嵌入式存儲器讀取所存儲的測試數(shù)據(jù),并由所述存儲器測試總線接口單元發(fā)送 給所述自動測試設備進行驗證為Al、在地址狀態(tài)下,所述存儲器測試控制器解析出所述自動測試設備通過所述存儲器測試總線接口單元輸入的存儲地址,并通過存儲器地址總線 將所述存儲地址傳輸給所述嵌入式存儲器,進入寫狀態(tài),所述存儲器測試控 制器將所述自動測試設備通過所述存儲器測試總線接口輸入的測試數(shù)據(jù),通過存儲器輸入數(shù)據(jù)總線寫入所述嵌入式存儲器中,轉回地址狀態(tài);Bl、從地址狀態(tài)轉為預讀狀態(tài)下,所述存儲器測試控制器解析出所述 自動測試設備通過所述存儲器測試總線接口單元輸入的存儲地址,并將所述態(tài)轉入讀回狀態(tài)下,所述存儲器測試控制器控制所述存儲器測試總線接口單 元從所述嵌入式存儲器讀取所存儲的測試數(shù)據(jù),并由所述存儲器測試總線接 口單元發(fā)送給自動測試設備進行驗證,驗證不通過,狀態(tài)轉回空閑狀態(tài),驗 證通過,狀態(tài)轉回地址狀態(tài);Cl、更改測試數(shù)據(jù)后,重復執(zhí)行步驟A1和B1;Dl、更改存儲地址后,重復執(zhí)行步驟A1 C1。
8、如權利要求6所述的測試方法,其特征在于,當所述自動測試設備 采用March C方式時,所述存儲器測試控制器在相應狀態(tài)下根據(jù)所述自動測 試設備通過所述存儲器測試總線接口單元輸入的存儲地址,將所述自動測試 設備通過所述存儲器測試總線接口單元輸入的測試數(shù)據(jù)寫入所述嵌入式存 儲器中,或者在其他相應狀態(tài)下根據(jù)所述自動測試設備通過所述存儲器測試 總線接口單元輸入的存儲地址,控制所述存儲器測試總線接口單元從所述嵌入式存儲器讀取所存儲的測試數(shù)據(jù),并由所述存儲器測試總線接口單元發(fā)送給所述自動測試設備進行驗證為A2、在所述地址狀態(tài)下所述存儲器測試控制器解析出所述自動測試設 備通過所述存儲器測試總線接口單元輸入的存儲地址,并通過存儲器地址總 線傳輸給所述嵌入式存儲器,進入寫狀態(tài),所述存儲器測試控制器將所述自 動測試設備通過存儲器測試總線接口單元輸入的測試數(shù)據(jù),通過存儲器輸入 數(shù)據(jù)總線單元寫入到嵌入式存儲器中,按照設定的步長遞增或遞減存儲地 址,進入下一個寫入測試數(shù)據(jù)的過程,直到寫完最后一個存儲地址后,轉回 到地址狀態(tài);B2、在地址狀態(tài)轉為預讀狀態(tài)下,所述存儲器測試控制器解析出所述 自動測試設備通過所述存儲器測試總線接口單元輸入的存儲地址,并通過存 儲器地址總線傳輸給所述嵌入式存儲器,從預讀狀態(tài)經(jīng)讀狀態(tài)轉入讀回狀 態(tài),所述存儲器測試控制器控制所述存儲器測試總線接口單元從所述嵌入式 存儲器讀取所存儲的測試數(shù)據(jù),并由所述存儲器測試總線接口單元發(fā)送給自 動測試設備進行-瞼i正,3全證不通過,狀態(tài)轉回空閑狀態(tài),-瞼證通過,進入寫 狀態(tài),根據(jù)所述自動測試設備通過所述存儲器測試總線接口單元輸入的不同 于步驟A2的測試數(shù)據(jù),由所述存儲器測試控制器將該不同于步驟A2的測 試數(shù)據(jù)通過所述存儲器輸入數(shù)據(jù)總線寫入所述嵌入式存儲器,按照設定的步 長遞增或遞減存儲地址,進入下一個寫入測試數(shù)據(jù)的過程,直到寫完最后一 個存儲地址后,轉回到地址狀態(tài);C2、在地址狀態(tài)轉為預讀狀態(tài)下,所述存儲器測試控制器解析出所述 自動測試設備通過所述存儲器測試總線接口單元輸入的存儲地址,并通過所 述存儲器地址總線傳輸給所述嵌入式存儲器,從預讀狀態(tài)經(jīng)讀狀態(tài)轉入讀回 狀態(tài),所述存儲器測試控制器控制所述存儲器測試總線接口單元從所述嵌入 式存儲器讀取所存儲的測試數(shù)據(jù),并由所述存儲器測試總線接口單元發(fā)送給 自動測試i殳備進行-瞼i正,驗證不通過,狀態(tài)轉回空閑狀態(tài),-瞼i正通過,進入 寫狀態(tài),根據(jù)所述自動測試設備通過所述存儲器測試總線接口單元輸入的不同于步驟B2和步驟A2的測試數(shù)據(jù),由所述存儲器測試控制器將該不同于 步驟B2和步驟A2的測試數(shù)據(jù)通過所述存儲器輸入數(shù)據(jù)總線寫入到所述嵌 入式存儲器中,按照設定的步長遞增或遞減存儲地址,進入下一個寫入測試 數(shù)據(jù)的過程,直到寫完最后一個存儲地址后,轉回到地址狀態(tài)。
全文摘要
一種嵌入式存儲器的測試系統(tǒng)及測試方法,該系統(tǒng)包括測試裝置和與其相連的自動測試設備,該裝置包括存儲器測試控制器和存儲器測試總線接口單元相連,存儲器測試控制器根據(jù)自動測試設備輸入的測試控制信號,進行狀態(tài)轉換,在相應狀態(tài)下根據(jù)自動測試設備通過存儲器測試總線接口單元輸入的存儲地址,將自動測試設備通過存儲器測試總線接口單元輸入的測試數(shù)據(jù)寫入嵌入式存儲器,或者在相應狀態(tài)下根據(jù)自動測試設備通過存儲器測試總線接口單元輸入的存儲地址,控制存儲器測試總線接口單元讀取嵌入式存儲器存儲的測試數(shù)據(jù)并由存儲器測試總線接口單元發(fā)送自動測試設備進行驗證。本發(fā)明在減少SoC管腳數(shù)目及節(jié)省測試成本的情況下完成嵌入式存儲器的測試。
文檔編號G11C29/56GK101458971SQ20081018076
公開日2009年6月17日 申請日期2008年12月2日 優(yōu)先權日2008年12月2日
發(fā)明者王惠剛 申請人:炬力集成電路設計有限公司