你的位置:首頁 > 測試測量 > 正文

如何測試小型存儲器陣列

發(fā)布時間:2012-10-31 責任編輯:Lynnjiao

【導讀】隨著半導體工藝不斷地進步,那些原本存在芯片中的大型存儲器會轉變成數(shù)十或數(shù)百個小型的存儲器陣列,并且散布在芯片中各個角落。針對這種類型的小型陣列,如果想要偵測出與速度相關的瑕疵以及固定邏輯(stuck-at)故障,其實并不是一件容易的事。

傳統(tǒng)上,測試數(shù)字集成電路可以采用功能性向量,或是由自動測試向量生成(ATPG)工具所產(chǎn)生的向量。此類軟件工具主要為隨機邏輯生成基于掃描的測試向量,對于待測組件(DUT)的存儲器部分,卻無法提供測試方案。得依賴存儲器內建自測試(BIST)的方法來測試寄存器。

尤其是那些采用先進工藝的存儲器陣列,存在著許多難以預測的潛在瑕疵。傳統(tǒng)的存儲器BIST方案會利用March或其它算法重復簡單的測試序列來偵測大部分的寄存器故障。在一種存儲器BIST方法中,DUT中的狀態(tài)機自身能產(chǎn)生和分析那些測試存儲器中的每一個地址所需用到的測試向量,免去了外部 ATE機的測試工作。另一種方法,則是讓片上處理器來測試存儲器,其缺點在于通常得等到DUT設計接近完成的時候,才能判斷出這種方法的有效性。

由于會影響芯片的面積與性能,小型存儲器陣列通常并不適合增加存儲器BIST邏輯。那些地址空間很少但端口很多的存儲器尤其不適合BIST。因為相對于陣列大小,存儲器端口數(shù)量對BIST控制電路規(guī)模的影響更大,所以,可能導致實現(xiàn)BIST控制電路所需的門數(shù)甚至會和存儲器本身一樣大。同時,BIST還要求所有存儲器的輸入引腳都有一個多路選擇器來選擇BIST信號與系統(tǒng)信號。對多端口存儲器而言,多路選擇電路會引起布線擁擠,并且導致性能的嚴重下降。

宏測試采用向量轉換的技術
圖1:宏測試采用向量轉換的技術

圖1 宏測試采用向量轉換的技術,在掃描單元與內部宏單元,如嵌入式存儲器陣列之間傳遞測試向量。

嵌入式存儲器測試方案

考慮到BIST對小型存儲器陣列造成的負面影響,一個簡單的選擇便是不去測試 — 但用戶極有可能會收到瑕疵品。或者,在辦公室里花更多的時間,為每一個存儲器陣列,手工生成完成測試算法所需的向量。好在還有一種更有效的選擇 ─ 那就是利用ATPG工具和待測組件的掃描儀單元,在每一個嵌入式存儲器的輸入端生成測試向量,并從輸出端得到響應。這項新技術,有時候被稱為“向量轉換”,或者是“宏測試”(macro testing)(見圖1)。如此一來,工程師便可以運用一組宏向量序列,來測試獨立的嵌入式模塊(也可以稱之為宏)。一些EDA 公司可以提供有此功能的軟件工具。這些工具可以把那些為獨立的嵌入式存儲器(宏模塊) 所設計的宏向量自動轉化成芯片級掃描向量,并把結果傳送到掃描單元,供作驗證之用。

宏測試完成嵌入式模塊所需的測試不需要附加測試邏輯電路。其次,最終的嵌入式存儲器掃描向量還可以像標準的阻塞掃描向量一樣,具有簡單的測試協(xié)議,因此能夠減少在產(chǎn)品測試機臺上向量的調試時間。有些公司應用宏測試技術平行測試100多個存儲器。如此一來,宏測試掃描向量也不過是與最長的向量長度相同。這項技術可用于測試任何嵌入式模塊,即便是所謂的“黑盒子”(black box)。只要在模塊的I/O端定義向量,那么這些向量便可以傳遞通過外圍的邏輯電路。

流水線處理能夠讓連續(xù)的讀/寫操作在連續(xù)的時鐘周期內完成
圖2:流水線處理能夠讓連續(xù)的讀/寫操作在連續(xù)的時鐘周期內完成

圖2 流水線處理能夠讓連續(xù)的讀/寫操作在連續(xù)的時鐘周期內完成,提供全速存儲器BIST功能。

嵌入式存儲器中的時序故障

如同一般的隨機邏輯,嵌入式存儲器也需要測試靜態(tài)故障和“實速”(at-speed)故障。由于存儲器BIST通常在系統(tǒng)時鐘下運行,因此也被稱之為實速存儲器BIST。然而,即使BIST控制邏輯利用系統(tǒng)時鐘來設定測試序列,卻需要數(shù)個時序周期去完成單獨的讀/寫操作。因此,實速存儲器BIST電路雖然采用系統(tǒng)時鐘頻率,其實并無法如同芯片在正常模式運作下那樣,執(zhí)行讀寫周期。運用流水線(pipelining)讀寫操作,則可產(chǎn)生較為有效的測試,稱之為“全速”(full-speed) 存儲器BIST(見圖2)。簡言之,便是在連續(xù)的時鐘周期里,執(zhí)行連續(xù)(back-to-back)的讀寫操作,如同在正常系統(tǒng)操作模式下的存儲器一般。

對于大型存儲器而言,測試那些與速度相關的故障時,全速存儲器BIST其實是個不錯的選擇。但是對于小型或時序要求很高的存儲器而言,同樣的測試方法可能會有問題。宏測試工具要把每組功能性向量轉換成掃描向量,所以每組向量的測試速度則必然變慢。不僅如此,有些嵌入式存儲器完全同步,并使用與掃描鏈相同的時鐘信號。當時鐘信號觸發(fā)其模塊時,掃描單元上先前的設定值便會被新值所取代。如此一來,便無法傳遞模塊輸出端的期待值。因此,傳統(tǒng)的宏測試方式無法適用于不具有門控時鐘的同步存儲器。

不過,同步宏測試可以解決這個問題。簡言之,便是執(zhí)行連續(xù)的全速測試,而不需要重復載入掃描鏈。同步宏測試會決定掃描單元上用來產(chǎn)生第一個宏向量的值,并載入掃描鏈。同時,也會決定用來產(chǎn)生第二個宏向量的值,并且在掃描單元的輸入端以管道方式傳輸。當掃描鏈被載入時,不同的時鐘信號即可以實速觸發(fā)。如此一來,好幾組的全速向量便被傳送到模塊。全速測試可以不受干擾地應用于設計中的幾乎任一模塊。不僅如此,全速測試只用到功能邏輯電路,而非測試邏輯電路,因此,可以執(zhí)行更接近實際狀況的全速測試。

結語

在實際測試中總是得面臨測試工具的成本,測試開發(fā)時間,測試機臺的時間,測試向量的調試時間,以及測試覆蓋率之間的考量與抉擇。宏測試是可以有效地對那些與日俱增的小型嵌入式模塊進行靜態(tài)與實速故障測試的工具。它甚至可以應用到較大的存儲器,透過芯片的功能邏輯,自動執(zhí)行全速測試。
 

要采購工具么,點這里了解一下價格!
特別推薦
技術文章更多>>
技術白皮書下載更多>>
熱門搜索
?

關閉

?

關閉