基于復(fù)用的SOC測試技術(shù)
1 引言
本文引用地址:http://m.butianyuan.cn/article/149344.htm90年代國際上出現(xiàn)的SOC概念,以系統(tǒng)為中心、基于IP模塊多層次、高度復(fù)用的設(shè)計思想受到普遍重視和廣泛應(yīng)用。SOC的高集成度和復(fù)雜度使得SOC測試面臨挑戰(zhàn),傳統(tǒng)的基于整個電路的測試方法不再適用。對于IP模塊和SOC而言,在電路設(shè)計向可復(fù)用這一目標(biāo)發(fā)展的同時,測試中的復(fù)用也變得愈加重要,成為解決SOC測試的關(guān)鍵,也成為目前該領(lǐng)域研究的焦點。本文在分析SOC與SOB(system on board)本質(zhì)區(qū)別的基礎(chǔ)上,闡明復(fù)用對于SOC測試的重要性,對現(xiàn)有主要幾類基于復(fù)用思想的SOC測試進(jìn)行分析。
2 SOC的測試
SOC使集成電路設(shè)計者分為兩個部分:IP模塊的設(shè)計者和SOC集成者(IP模塊的使用者)[2,4,5] 。IP模塊是設(shè)計者提供的具有特定功能和相關(guān)參數(shù)描述的模塊;而SOC集成者利用它們和用戶自定義邏輯(UDL)集成在一起,實現(xiàn)既定的功能。從表面上看,這種設(shè)計類似于傳統(tǒng)的基于芯片的SOB 設(shè)計,但二者存在本質(zhì)區(qū)別。
SOB中的IC是經(jīng)制造生產(chǎn)和測試后的實體,因此對SOB集成者而言,測試是針對系統(tǒng)中IC之間連接的測試。在SOB的設(shè)計集成過程中,IC的制造商和系統(tǒng)的集成者有相對獨立的測試開發(fā)和實施階段,如圖1所示。從描述的層次而言,SOC中的IP模塊可以分為軟核、固核以及硬核。每一個核又可以是若干更小的模塊共同構(gòu)成,但無論什么模塊,相對于SOB中的芯片而言是虛擬器件,在進(jìn)行SOC集成設(shè)計時都未經(jīng)物理實現(xiàn)。IP模塊提供者對所設(shè)計的虛擬模塊進(jìn)行測試開發(fā),卻不能對IP模塊進(jìn)行實際的物理測試。因此IP模塊設(shè)計者和SOC集成者的測試開發(fā)和實施將不再是彼此獨立和分割的兩個階段。SOC集成者要完成包括IP模塊在內(nèi)的整個芯片的測試方案[2]。因此,SOC測試較傳統(tǒng)的SOB測試而言,更加復(fù)雜,也更具挑戰(zhàn)性。
圖1 SOB與SOC測試的比較
3 復(fù)用技術(shù)與SOC測試
隨著技術(shù)的發(fā)展和市場的需要,IP模塊和SOC 的設(shè)計正逐漸以分布和并行的方式進(jìn)行。來源于不同的各種IP模塊的多層次復(fù)用是SOC的基礎(chǔ)。IP 模塊是對功能和實現(xiàn)方式的描述,是未經(jīng)物理實現(xiàn)的虛擬器件,不同類型的IP模塊有不同的模型和測試方法,IP模塊的提供者雖然無法對模塊進(jìn)行物理測試,但必須向SOC集成者提供模塊的測試信息,其中包括模塊的測試方法、可測性結(jié)構(gòu)、測試產(chǎn)生方法及測試集等 [2,4,6]。如果不以這些模塊的測試信息為基礎(chǔ),SOC集成者就無法對高達(dá)千萬門級的芯片進(jìn)行測試,而復(fù)用則是SOC測試的關(guān)鍵。因此,國際上IEEE P1500工作組和VSIA(virtual socket in ter face alliance)聯(lián)盟正在制定相關(guān)的國際標(biāo)準(zhǔn)[6,7] ,研究焦點集中于規(guī)范IP模塊設(shè)計者和SOC集成者之間的軟硬件接口,如模塊測試語言(CTL,)和可擴(kuò)展結(jié)構(gòu),以實現(xiàn)SOC測試中IP模塊測試信息的即插即用。但標(biāo)準(zhǔn)并不進(jìn)行復(fù)用方法和測試集成及優(yōu)化的研究,有許多問題尚未解決。因此采用何種方式復(fù)用,如何解決復(fù)用中遇到的問題成為目前 SOC測試研究的焦點之一。從復(fù)用的角度,現(xiàn)有的SOC測試解決方案大致分為兩類:直接復(fù)用和間接復(fù)用。
3.1 直接復(fù)用
該方法的基本思路是自頂向下,直接在芯片級使用已有的模塊測試信息,通過實現(xiàn)對每個IP模塊的測試訪問從而解決整個芯片的測試[8]。核心是通過構(gòu)建測試通路實現(xiàn)對各IP模塊的測試訪問,前提是各IP模塊都具有良好的可測性和完整的測試信息。這類方法的有效性關(guān)鍵在于兩個方面,即各模塊原有測試信息的質(zhì)量和在SOC中各模塊測試訪問的實現(xiàn)。具體的方案如下。
① 測試總線。ARM公司發(fā)布的32位AMBA(advanced microcontroller bus architecture)總線結(jié)構(gòu),通過解決每個IP模塊的測試訪問問題來最終完成整個SOC的測試,但其兼容性、測試費用及測試時間上有其局限性 [9]。Duel Technologies公司也作了類似的工作,提出了“測試總線”,連接每個IP模塊,雖然優(yōu)化了測試所占用的芯片面積,但無法同時將多個IP模塊連到總線上進(jìn)行測試。
② 端口訪問。Intel公司提出將每個IP模塊的接口端通過多路選擇器接到芯片的引腳上直接進(jìn)行訪問[10]。但當(dāng)IP模塊增加時,對多路選擇器的控制就會過于復(fù)雜,且該方法對IP的端口數(shù)有明確的限制。
③ 模塊的透明模型。文獻(xiàn)[11]提出一種基于IP模塊透明模型的方法,它要求每個IP模塊都有一種工作模式——透明模式。當(dāng)對SOC中某一個IP模塊進(jìn)行測試時,其它模塊均處于透明模式,從而為該模塊提供測試訪問通路。這種方案較前兩種方案減少了硬件開銷,但對IP模塊的設(shè)計有特殊要求,且數(shù)據(jù)傳輸通道多位串行會導(dǎo)致測試時間過長。
④ 邊界掃描。Texas Instrument公司利用IEEE 1149.1標(biāo)準(zhǔn)中的邊界掃描測試(BST)技術(shù),通過標(biāo)準(zhǔn)的掃描鏈串行訪問IP模塊,該方案是將用于解決SOB的測試技術(shù)移植到了SOC上。該方案的硬件開銷會隨著電路集成度提高而加大,測試時間也會隨著SOC規(guī)模的增加變得無法接受[12]。
3.2 間接復(fù)用
這類方法的基本思路是自底向上,利用每個模塊級的測試信息,通過綜合轉(zhuǎn)換形成該模塊在芯片級可以實施的測試信息,直至形成整個芯片的測試。核心是以系統(tǒng)為出發(fā)點,利用各IP模塊的測試信息,綜合SOC的結(jié)構(gòu)或功能特點,形成SOC 對各IP模塊的測試數(shù)據(jù)和方案。具體的方案如下。
① 宏測試。從設(shè)計出發(fā),在自IP模塊向系統(tǒng)集成的過程中不斷將模塊的測試信息進(jìn)行擴(kuò)展,直至芯片級。其中較為典型的是Philips公司將解決IC測試的Macro Test技術(shù)用于SOC測試[13]。其基本思路是將每個IP模塊的測試信息以測試協(xié)議描述,結(jié)合整個系統(tǒng)的設(shè)計,識別合適的訪問路徑擴(kuò)展到芯片級,再通過芯片級的測試協(xié)議調(diào)度每個模塊的測試順序,最終通過單獨測試每個IP的方法來完成SOC測試。該方法對SOC中的IP模塊及其測試信息有嚴(yán)格的規(guī)定。
評論