有利于驗證未測試功能的RTL緩沖器插入和故障分級技術(shù)
目前,集成電路的設(shè)計周期要求更短,但是規(guī)模卻更大,結(jié)構(gòu)更復(fù)雜,提高芯片的測試覆蓋率成為人們關(guān)注的焦點之一,本文介紹的緩沖器插入工具可以通過基于RTL的SSAF分級技術(shù)有效地提高測試覆蓋率。?Eric?Hoang?Jamie?Fontenot?Kuang?Hsien?Chen?設(shè)計制造經(jīng)理?摩托羅拉高級設(shè)計工具系統(tǒng)部?利用設(shè)計綜合進一步縮短設(shè)計周期是電子行業(yè)賴以生存的基本手段,因此,所有的設(shè)計必須符合一定的自動測試生成(ATG)設(shè)計約束條件,以便利用ATG工具取得更高的測試覆蓋率。然而,在設(shè)計綜合過程中,約束條件規(guī)定:利用ATG工具無法測試大量的數(shù)字邏輯電路,怎么辦?如何在規(guī)定的設(shè)計時間內(nèi)提高測試覆蓋率??本文描述一種商用工具,在RTL設(shè)計過程中,它能夠測量當前的測試覆蓋率,確定模式增強的低測試覆蓋率模塊。該工具向RTL設(shè)計中插入零延時的緩沖器之后,RTL設(shè)計就可以進行故障分級。具備門級單個附著故障(SSAF)分級信息的相關(guān)測試結(jié)果,可以反映RTL設(shè)計階段故障分析的優(yōu)點。?傳統(tǒng)的故障分級方法?當前,設(shè)計周期越來越短,門級測試分級非常困難。電路密度持續(xù)增加,以摩托羅拉最新的嵌入式處理器MPC555為例,它包含:Power?PC核、448K字節(jié)閃存、32K字節(jié)SRAM和15個附加模塊。在這樣的設(shè)計中,測試結(jié)果必須與設(shè)計周期縮短的趨勢相適應(yīng),測試分級必須在設(shè)計早期完成。?測試分級是對設(shè)計邏輯仿真環(huán)境提出的進一步要求,在該仿真環(huán)境中,要采用功能驗證模式對模型進行邏輯仿真。另外,故障仿真需要有效的檢測器的輸出選通時序信息。最小的工具需求包括:兼容邏輯的有效性、故障仿真器以及具有恰當內(nèi)存以便處理設(shè)計網(wǎng)表SSAF分級的工作站,如果不具備這樣的條件,測試將很難進行下去。?對綜合過程生成的邏輯進行故障分析很困難。由于邏輯簡化、電路優(yōu)化以及電路圖綜合工具對門級元件布局和布線方法的影響,要跟蹤門級邏輯的功能相當復(fù)雜。?綜合設(shè)計和測試分級流程?測試分級流程由故障仿真和故障分析兩個階段組成(如圖1所示)。在故障仿真階段,通過故障仿真工具獲得的初始故障列表要與所有用于生產(chǎn)的模式一起進行故障仿真。未檢測到的故障列表將在故障分析階段用于編寫附加測試模式,并用于識別和刪除冗余邏輯或不可測邏輯。?要用故障分析來識別待寫的附加向量,首先要進行全局分析以確定低覆蓋率的分層模塊。未測試功能和不可測試邏輯模塊可通過分析低覆蓋率部分來確定,然后分析相關(guān)的故障集(多例程、并行位等)。一旦生成了附加模式,邏輯上不可測故障(LUD)就可從這些區(qū)域刪除,接著要重新計算故障覆蓋率。如果故障覆蓋率仍然太低,單一故障只能采用其它測試模式單獨處理。如果要滿足特定的設(shè)計時間要求,則可能要增加成本。?RTL分級的一種方法?如前所述,只有在門級網(wǎng)表生成以后,才能進行故障仿真和附加模式的生成。目前,網(wǎng)表生成后直接進入設(shè)計階段,因而在掩模之前,就可能沒有足夠的時間按期實現(xiàn)完整的故障仿真和附加模式生成。?在RTL級對插入的緩沖器故障進行故障分級,可以一邊產(chǎn)生功能模式一邊開始故障分級,不必等待門級網(wǎng)表的生成。功能驗證的測試覆蓋率是掩膜的重要指標,當技術(shù)指標解釋方法提供模式生成時,可由功能驗證的測試覆蓋率了解整個測試覆蓋的質(zhì)量,從測試分級中獲得的測試覆蓋和故障分析信息,可進一步改進測試模式。在形成門級網(wǎng)表之前,若時間容許的話,上述信息還能改善特定區(qū)域的可測試性。?緩沖器插入是RTL分級過程中最關(guān)鍵的方法,這種方法的核心在于,通過在模型中恰當?shù)奈恢迷黾恿阊訒r的緩沖器,可以修改原始的RTL模型。增加的緩沖器在RTL模型中處于可變及可執(zhí)行的狀態(tài),附著故障注入到這些插入緩沖器的輸入端仿真RTL可變附著故障。緩沖器插入全部完成后,任何能夠處理混合門和RTL的商業(yè)故障分級工具都能進行標準的單個附著故障分級,并生成故障覆蓋報告。?我們建議的RTL分級流程,能通過TurboFCE工具插入RTL緩沖器來實現(xiàn)。Verifault工具能實現(xiàn)故障分級,如圖2所示。所要求的輸入包括Verilog?RTL模型、功能或附加測試模式。輸出包括故障分級報告、未檢測的故障列表和有助于低故障覆蓋分析的混合RTL模型。建立在RTL分級流程中的主要測試區(qū)域包括增強的測試模式和增強的RTL模型可測試特性。?測試模式的增強過程通過低故障覆蓋模塊的故障分析觸發(fā)來實現(xiàn)。模式增強可通過修改現(xiàn)有的測試模式或編寫新的附加模式來實現(xiàn)。要增強RTL模型,必須在設(shè)計初期,通過并行開發(fā)模型和測試向量來實現(xiàn)。?RTL故障分級的優(yōu)點?雖然測試分級的功能與門級分級相似,但是在RTL分級所花費的時間更少,其抽象的級別高于門級抽象,總的故障數(shù)和未檢測到的故障成比例地減少,相應(yīng)地減少了所需的設(shè)計資源。同時,利用該方法完成故障分析的速度快于利用綜合門級網(wǎng)表進行的門級故障分析。?我們測試的MPC555包括6個模塊:總線接口、計數(shù)器、閃存外圍電路、閃存控制電路和64輸入隊列A/D轉(zhuǎn)換器,這些部件常用于模塊化設(shè)計環(huán)境。對不同的模塊,現(xiàn)有的測試模式有4到27個。待設(shè)計模塊的規(guī)模從0.2MB(MPC590?CNTC模塊)到0.6MB(Flash控制器模塊)不等,每個RTL模組采用插入緩沖器模式實現(xiàn),不同的緩沖器插入模式產(chǎn)生相應(yīng)的測試用Verilog?RTL模組。緩沖器插入設(shè)計模組必須經(jīng)過故障仿真,然后與門級故障仿真結(jié)果進行比較。?未檢測故障的分析?對緩沖器插入RTL模型的未檢測故障列表的分析,要跟門級故障分析同時進行。伴隨單個故障的群(cluster)故障也同樣存在于RTL模型之中。?與門級一樣,充滿未檢測故障的RTL控制信號路徑表現(xiàn)出未經(jīng)測試的功能特性。在利用所有的測試模式進行故障仿真之后,分析存在未檢測節(jié)點的原因,可以找到編寫附加測試模式的根據(jù),該根據(jù)可能是:模式驗證方法中缺少某些基本功能特性,或者未檢測的故障表現(xiàn)出的模糊邊界條件。與門級故障分析處理過程相似,無用或冗余的不可測試節(jié)點在完成識別之前,將仍然保持未檢測故障的特性。?相關(guān)結(jié)果的評估?測試數(shù)據(jù)表明,插入緩沖器的RTL模型與門級模型相比,故障覆蓋率差距在0.6%到13%之間,工具增強之后,差距減少了。良好的RTL模型拓撲使它的插入緩沖器分級與門級節(jié)點故障分級相似。優(yōu)質(zhì)RTL模型拓撲能使插入緩沖器的分級達到門級輸入故障的分級水平。正如我們期待的那樣,特定設(shè)計模組的優(yōu)質(zhì)和劣質(zhì)模型的故障總和通常小于門級故障的總和。?研究發(fā)現(xiàn),優(yōu)質(zhì)模型的故障數(shù)量大約為門級故障的1/4到1/2,劣質(zhì)模型的故障數(shù)量大約為門級故障的1/3到2/3,這個結(jié)論有助于優(yōu)化緩沖器插入的過程,以提高RTL與門級故障列表之間的相關(guān)性。優(yōu)化的結(jié)果將提高對低覆蓋率模塊的驗證準確性,同時改善對全局覆蓋率的評估。?工具的局限性和折衷方案?如上文所述,在故障插入工具使用中存在故障分級的局限性。添加緩沖器可能會改變原始RTL模型的功能特性,因為寄存器傳輸邏輯比門級邏輯的抽象層次高,基于RTL的故障分級方法會引起精度損失。如果需要100%門級SSAF覆蓋分級,測試工具需要更加易于識別的附加測試模式、冗余和不可測試邏輯,但是不能完全替代門級故障分析。要完成包括RTL附加模式在內(nèi)的所有模型的門級故障仿真,需要對剩余的未檢測故障列表進行處理,這個過程通常與門級測試分級有關(guān)。?在生成門級網(wǎng)表之前,RTL分級有助于提高門級測試覆蓋率,而設(shè)計初期的RTL故障分級能夠支持附加測試向量的生成,進而在掩膜之前獲得特定SSAF的覆蓋率。在后續(xù)的開發(fā)過程中,還要持續(xù)改進設(shè)計驗證、可測性設(shè)計和制造測試的開發(fā),新的工具和技巧已經(jīng)在開發(fā)之中。?目前,市場上出現(xiàn)了幾種RTL代碼覆蓋工具。通常,這些工具可以檢查測試過程中沒有經(jīng)過處理的可執(zhí)行的描述、分支條件、表達式和順序模塊中可能的路徑。代碼的轉(zhuǎn)換信息可通過特定的工具取得,雖然測試工具本身并不提供直接的可測試性分析信息,也不能確保完整的功能測試,但某些工具已經(jīng)用于測量和增強RTL代碼的覆蓋率。?顯然,有必要采用有效的RTL可測試性分析工具,這樣的工具將有助于識別行為結(jié)構(gòu)的可控制性或可觀察性,也可以在設(shè)計初期改善設(shè)計的可測試性,減小測試的復(fù)雜性,從而通過結(jié)構(gòu)和/或功能測試達到更好的故障覆蓋率。?RTL?SSAF分級?在繼續(xù)復(fù)用功能測試組件滿足制造過程測試需求的同時,我們還要達到現(xiàn)實功能驗證的目標。在掩膜之前,門級單個附著故障測試分級已經(jīng)實現(xiàn)了最小85%的測試覆蓋率,顯示了良好的功能覆蓋。由于研究過程取得了滿意的相關(guān)結(jié)果,緩沖器插入RTL分級可以作為門級分級的替代方法,從而實現(xiàn)預(yù)掩膜輸入要求的測試覆蓋率目標。為了將環(huán)境和仿真工具對相關(guān)性的影響減低到最小程度,門級仿真過程中普遍使用的故障仿真器和選通時序?qū)⒗^續(xù)沿用。?RTL覆蓋率的增長很可能改善門級故障覆蓋率。在設(shè)計初期進行RTL分級,有助于識別冗余邏輯的驗證,并方便進行設(shè)計修正以便增強可測試性和附加測試模式的生成,從而改善門級測試覆蓋率。?結(jié)論?目前,設(shè)計周期更短、規(guī)模更大、結(jié)構(gòu)更復(fù)雜的設(shè)計項目為門級設(shè)計分級技術(shù)的發(fā)展創(chuàng)造了條件。緩沖器插入工具使基于RTL的SSAF分級技術(shù)有可能替代門級分級技術(shù)。TurboFCE工具可以滿足這方面的需求。我們的研究中采用了六個設(shè)計模塊,結(jié)果表明:在RTL分級與門級分級間有0.6%到13%的相關(guān)性。需要進一步解決的問題在于,緩沖器插入到模塊描述區(qū)域的工具仍然缺乏足夠的處理能力。?需要進一步研究的內(nèi)容包括:全面理解RTL分級技術(shù)與門級分級技術(shù)之間的相關(guān)性,正確評估該工具在故障分析中的應(yīng)用和附加向量(AOV)生成的結(jié)果。最近,已經(jīng)有工具能夠?qū)崿F(xiàn)基于RTL的快速設(shè)計、DFT和ATPG,因此,通過高效地應(yīng)用基于RTL的多用途工具將進一步縮短開發(fā)周期。?
評論
查看更多