帳號:
密碼:
最新動態
產業快訊
CTIMES / 文章 /
SoC整合測試技術探索──P1500與CTL簡介
 

【作者: 李建模、高琮評】   2005年03月05日 星期六

瀏覽人次:【13348】

傳統電路板的設計方法SoB(System on Board)與現在開發中的SoC(System on chip;系統單晶片)設計方法十分類似,同樣是整合事先設計好的 IP Core(個別設計的電路,功能不一),但是在做系統的整合測試時,卻有基本上的差異。


在SoB設計方法中,是將各IP Core 晶片分別生產出來,再整合成系統,所以可以針對每顆IP Core 晶片,個別測試其硬體層級的電路功能;但是在SoC的整合過程中則不是這樣,因為SoC強調的就是單晶片的觀念,在此系統晶片生產之前,個別的IP Core與UDL(User-Defined Logic)並不會有實際的硬體產生,因此只能做軟體層級的驗證,無法對個別的IP Core做硬體層級的電路測試,只有等到SoC生產的時候,與整個系統同時進行測試。因此IP Core的供應者只提供測試的方法與測試資料,而SoC的設計者卻必須負責系統的整合,並將各個IP Core的測試資料,轉換成SoC相對應的測試資料,進行測試。


對此,學界、業界現今在開發一套技術,以針對SoC進行整合測試,也就是所謂的P1500標準,其原理是對IP Core外加一些電路,使其具有一定規格,方便做SoC整合測試;而為了描述P1500標準,也同時發展出另一套測試語言CTL(Core Test Language)。CTL目前是屬於IEEE P1450.6標準的範圍,其目的是為了描述P1500標準的包裝界面以及系統測試的各項資訊而產生的。以下將分別就P1500標準及CTL兩種技術,提出說明。


P1500標準介紹

IEEE P1500 標準的全名為IEEE P1500 Standard for Embedded Core Test (SECT),編號前的P代表此標準目前仍處於Proposal的階段,尚未成為IEEE正式的標準。P1500標準目標是在建立一套完善的方法,使其滿足各種不同的測試項目與測試策略,並盡可能的支援各項測試的需求。


事實上,因為SoC的整合者,對IP Core內部的瞭解十分有限,即使是軟體層級的IP Core,也可能經過加密而無法知悉IP Core內部的資訊。IP Core的供應商必須提供給系統或設計廠測試的方法,例如其DFT(Design for Test)的方法以及測試資料,但在設計這些IP Core的測試方法的時候,IP Core的供應商有時並不瞭解SoC測試的條件及環境,因此這些測試方法有可能會不符合SoC的測試要求;例如Test Coverage太低、或者測試成本太高。對於一個SoC系統整合者而言,要如何確保IP Core供應商給予足夠的測試資料,才能在完全不知道IP內部的資訊,也不能加以更動IP Core原有設計的情形下,在系統的層級完成對IP Core的測試?這便是發展P1500標準,主要想達成的任務。


P1500標準包含了平行(parallel)測試與循序(serial)測試的機制、以及標準的測試控制指令,以測試SoC晶片內的IP Core與其接線,有效的達到測試時隔離與保護的目的。發展P1500標準可以達到系統晶片測試自動化,並且利用更佳的DFT(Design for Testability)技術來降低SoC的測試成本,同時提高測試的品質。參考(圖一)。


《圖一 P1500 架構圖[1]》
《圖一 P1500 架構圖[1]》

在此測試架構中,須先將內部每一個IP Core1~IP CoreN以P1500 標準包裝(Standard P1500 Core TestWrapper),利用輸入輸出埠(圖一的TAM-source、TAM-Sink),將測試資料由TAM-Source輸入,再以循序或平行 的模式由TAM-in 送進待測的IP Core,並將結果由TAM-out 輸出,最後送到TAM-Sink 觀察,依此順序我們可以針對每一個IP Core做測試。


此測試架構可分成三部分:


  • (1) IP cores:將所有IP cores包上P1500的標準包裝,傳送測試資料及控制訊號,完成對特定IP core 所需的測試。


  • (2)Chip Level Controller:SoC晶片的設計者可以自行定義其測試控制器,此控制器能產生控制訊號,並利用這些控制訊號來控制TAM 和標準包裝中的WIR (Wrapper Instruction Register),完成對chip及IP cores 所需進行的測試流程。


  • (3)User-Defined Test Access Mechanism:SoC晶片的設計者可以自行定義,透過TAM-in 將所需的測試資料傳送入IP Core,並將結果由TAM-out 輸出。



(圖二)為IP Core以P1500包裝後的圖。P1500標準在核心的外圍,加上供指令輸入的暫存器Wrapper Instruction Register(WIR),供資料輸入的暫存器Wrapper Bypass Register(WBY)及Wrapper Boundary Register(WBR),並藉由9個標準的信號來存取(包括WSI、WSO、WRST、WCLK、SelectWR、Capture、Shift、Update、Transfer)。


《圖二 以P1500包裝後的IP Core》
《圖二 以P1500包裝後的IP Core》

<圖片來源:P1500 web site>


P1500 Wrapper的介面IO 可分為兩大類型,如(圖三)所示,即循序存取的 Wrapper Serial Port (WSP),以及平行存取的Wrapper Parallel Port (WPP)。



《圖三 P1500 Wrapper的介面IO[6]》
《圖三 P1500 Wrapper的介面IO[6]》

WSP是標準中必要的介面,其訊號分別定義如下:


  • ˙Wrapper Serial Input(WSI):資料循序的輸入端。


  • ˙Wrapper Serial Output(WSO):資料循序的輸出端。


  • ˙Wrapper Clock(WCLK):時脈輸入。


  • ˙Wrapper Reset(WRST):重置訊號。


  • ˙Instruction Register Selection(SelectWR);用來決定輸入至WIR還是其餘的 Data Registers。


  • ˙Wrapper Capture(Capture):控制Wrapper資料的擷取。


  • ˙Wrapper Shift(Shift):控制Wrapper資料的移動。


  • ˙Wrapper Update(Update):控制Wrapper資料的更新。


  • ˙Wrapper Transfer(Transfer:控制Wrapper資料的傳遞。



在串列式(serial)存取機制中,測試資料從WSI傳至WSO,有多條路徑可供選擇,經由P1500包裝介面的控制訊號,也就是(圖四)中的Wrapper Control &Clocks,發出控制訊號(綠色線)來控制多工器(Gn、G1)及暫存器(WBR、WIR、Bypass、CDR 1-N),就可以選擇所需的資料路徑,由於所有資料皆由 WSI一筆一筆排成一列輸入,所以稱其為串列式。其測試過程一開始,先利用Wrapper Control & Clocks 將指令資料輸入至指令暫存器(Wrapper Instruction Register; WIR)中,決定其測試模式,再由此指令配合控制訊號選擇一個配合此測試模式的資料暫存器(WBR、CDR、Bypass)輸入資料,以進行測試。


其中的WBR(Wrapper Boundary Register)是由週邊暫存器單元(Wrapper Boundary Cell;WBC)所組合而成的暫存器。在P1500 標準中規定,在核心電路的每一輸入輸出線上皆需加上此WBC,所以其bit 數必須視IP Core而定。WBC的主要功能在於可接收由存取機制傳送來的測試資料,並傳入IP Core的輸入埠(TAM in),亦可將由IP Core輸出的資料,經由此暫存器送出給存取機制。因為由WBC管理IP Core的輸出入埠的資料進出,所以其存取機制,可以是並列式的,也可以是串列式的。CDR為原本IP Core中的Scan Chain,由Scan Cell(IP Core內部暫存器)組成,可配合IP Core輸出入埠的資料,進行測試。Bypass為 1-bit 的暫存器,


當不對此IP Core 進行測試時,即可經由此此暫存器通過,使測試資料可以不進入IP Core內部,直接由WSI 輸入通過bypass 再由WSO 輸出快速到達下


一個被測試的IP Core。


《圖四 P1500串列機制界面[1]》
《圖四 P1500串列機制界面[1]》

在串列式的存取機制中,僅有單一位元的資料輸入輸出線,所以在IP Core 內部只能有一條Scan Chain,在使用上顯然有所限制,所以P1500 必須支援並列式存取,才能滿足多條Scan Chain同時存在。(圖五)即並列式機制架構,除了原先的串列式存取界面(WrapperSerial Input;WSI、Wrapper Serial Outpu;WSO)外,並加了並列存取界面(TAM-in、TAMout)。經由並列存取界面之多條輸出輸入線(圖中紅色路徑)同時存取資料,自然可大幅增加測試準確率。


《圖五 P1500並列機制界面[1]》
《圖五 P1500並列機制界面[1]》

CTL簡介

核心電路測試描述語言(Core Test Language;CTL)是專為P1500 所制定的一套電路測試描述語言,用來描述IP core及SoC晶片的整合測試等資訊。CTL是由IEEE 1450 Standard Test Information Language(簡稱STIL)所延伸而來的,STIL的主要目的在描述測試資料與測試訊號時序。在SoC技術時,因為不只單一個IP Core在晶片上,要測試這些IP Core,我們使用P1500來使每一個IP Core 有類似的外殼,在此情況下,IP core 跟IP Core 之間的溝通就變的較為容易;相對的,因為CTL是隨P1500的發展而一同制定的,CTL也必須符合SoC技術的要求,要比STIL多加上不同測試模式下的測試需求,來描述IP core 跟IP Core 之間電路的整合測試方式。


《圖六 CTL Structure[2]》
《圖六 CTL Structure[2]》

從(圖六)可看出CTL需要相同於STIL的一些資訊,有輸出輸入端(Signals)、系統時脈訊號及一些輸出輸入的時間控制(Timing)、Scan Chain的內部結構(ScanStructures)、測試資料(Patterns)、測試訊號次序及模式(Protocols),亦需要原本STIL沒有的資訊,例如原本IP Core的測試模式及資訊(Internal)、P1500外接線路的測試模式及資訊(External)、不同的測試模


式下輸入測試訊號的描述(PatternInformation)。


(圖七)為P1500-CTL 示意圖,左邊為包裝P1500的IP Core;一般來說CTL針對此SoC層級的晶片,需包含Signals、SignalGroups、Timing、Pattern、MacroDefs、ScanStructures、Internal、External、PatternInformation等描述。



《圖七 P1500-CTL 示意圖[2]》
《圖七 P1500-CTL 示意圖[2]》

如(圖八),CTL可以在不清楚IP Core內部的情況下進行測試,而這項特性是必須的,因為大部分的情況下,系統中每個IP Core是由不同的個人或團隊分別完成,如果要求系統整合者了解晶片中每一個IP Core,顯然是強人所難。



《圖八 CTL保密性測試特性[2]》
《圖八 CTL保密性測試特性[2]》

如(圖九),CTL可以支援階層式的描述,也就是說可以描述SoC內每一個IP Core的資訊,同時也描述其測試模式。



《圖九 CTL階層式描述》
《圖九 CTL階層式描述》

CTL 對測試模式的描述

Environment {


CTL{}


CTL mode1{TestMode InternalTest;}


CTL mode2{TestMode EXternalTest;}


CTL modeN{TestMode N;}


}    


在CTL中將測試模式定義在Environment之下,每個CTL宣告都是在定義一種測試模式,若此宣告沒有名稱,表示其為global,其餘每一個CTL皆可看到,其內容,如上方第一個CTL宣告即是global,而測試模式mode1則表示InternalTest,一般來說一個CTL測試模式的宣告,除一開始註明所代表的操作模式外,仍須定義Protocols、各Signals訊號在此測試模式下,分別扮演的角色、接線的連接情形,此操作模式的定義才算完整。


一般來說CTL的測試模式如(圖十)所示;以下並列舉三種必要的測試模式。


《圖十 CTL的測試模式》
《圖十 CTL的測試模式》

(1)BYPASS Mode

如(圖十一),當不對此IP Core做測試時使用此模式,經由外部控制訊號WSC,輸入指令給指令暫存器(WIR),使其測試模式為BYPASS Mode,並提供控制訊號給WBR、Bypass、IP Core等,使測試資料從WSI→Bypass→WSO通過,並前進到其欲測試的IP Core。


《圖十一 BYPASS Mode》
《圖十一 BYPASS Mode》

<資料來源:2002 IEEE P1500>


(2)WS_INTEST Mode

如(圖十二),當對此IP Core內部做測試時使用此模式;同樣經由外部控制訊號WSC,輸入指令給指令暫存器,使其測試模式為WS_ INTEST Mode,其測試資料從WSI→WBR→Internal Scan→WBR→WSO一一輸入,等一定位元的測試資料輸入到暫存器中(WBR、Internal Scan),觀察其輸出,然後輸入下一段一定位元的測試資料,直到測試結束。


《圖十二 WS_INTEST Mode》
《圖十二 WS_INTEST Mode》

(3)WS_EXTEST Mode

如(圖十三),當對此IP Core外部P1500接線做測試時使用此模式,同樣經由外部控制訊號WSC,輸入指令給指令暫存器,使其測試模式為WS_ EXTEST Mode,其測試資料從WSI→WBR→WBR→WSO一一輸入,等一定位元的測試資料輸入到暫存器中(WBR),觀察其輸出,然後輸入下一段一定位元的測試資料,直到測試結束。


《圖十三 WS_EXTEST Mode》
《圖十三 WS_EXTEST Mode》

<資料來源:2002 IEEE P1500>


結論

目前SoC晶片的設計研究,正走在時代的趨勢,許多設計大廠陸續投入研發人力,著力於開發相容的原型設計,並擁有各自的SoC測試整合技術。P1500標準做為發展SoC晶片設計的重要技術,也趨近成熟,雖然目前P1500技術仍處於Proposal的階段,相信其成為IEEE正式的標準,也是指日可待。目前數個市場領導EDA廠商早已藉由參與P1500的制訂取得最新的訊息,以開發相關的EDA工具;而CTL技術,正由測試機台的廠商積極研發支援CTL標準的測試機台與軟體環境。


所以一旦P1500及CTL成為IEEE正式的標準,符合P1500標準的SoC測試整合的EDA工具就會出現在市面上,同時先進的設計公司也都會擁有公司內部測試整合的能力,並且市面上也有能夠支援CTL的測試機台可實際使用。如果國內的IC設計產業朝SoC晶片設計的領域前進,P1500跟CTL兩項輔助技術之發展值得特別關注。


(作者李建模為台大電子工程學研究所/台大系統晶片中心研發教授,高琮評為研究生)


<參考文獻:


[1]工研院/系統晶片技術中心‧可測試設計課"Introduction to IEEE P1500 Test Standard"


http://www.taiwansoc.org/download/member_file/2002/test/2002-7.pdf


[2] Maurice Lousberg Philips "P1500's Core Test Launguage"


http://grouper.ieee.org/groups/1500/date01/ctl-date01.pdf


[3]黃稚存、吳誠文 "簡介IEEE P1500: 嵌入式核心測試的工業界標準(上)"


http://nsoc.eic.nctu.edu.tw/Uploads/p1500-031009-2154617.doc


[4]黃稚存、吳誠文 "簡介IEEE P1500: 嵌入式核心測試的工業界標準(下)"


http://nsoc.eic.nctu.edu.tw/Uploads/p1500-031009154533.doc


[5] Erik Jan Marinissen "Update of IEEE P1500 Core Wrapper Architecture"


http://grouper.ieee.org/groups/1500/itc02/ctag0210.pdf


[6] Jin-Fu Li; Hsin-Jung Huang; Jeng-Bin Chen; Chih-Pin Su; Cheng-Wen Wu; Chuang Cheng; Shao-I Chen; Chi-Yi Hwang; Hsiao-Ping Lin;"A HIERARCHICAL TEST METHODOLOGY FOR SYSTEMS ON CHIP" Micro, IEEE , Volume: 22 , Issue: 5 , Sept.-Oct. 2002 Pages:69 - 81


[7] ERIK JAN MARINISSEN, ROHIT KAPUR,MAURICE LOUSBERG, TERESA MCLAURIN, MIKE RICCHETTI, YERVANT ZORIAN "On IEEE P1500's Standard for Embedded Core Test"


JOURNAL OF ELECTRONIC TESTING: Theory and Applications 18, 365-383, 2002>


延 伸 閱 讀

為了更順利的進行SoC測試,IEEE正在研擬相關的國際測試標準:P1500。相關介紹請見「SoC國際測試標準:IEEE P1500」一文。

本文將分別介紹 IEEE 1149.1 與 IEEE 1149.4 測試標準。你可在「國際測試標準 IEEE 1149.1 與 1149.4」一文中得到進一步的介紹。

由於SoC的系統設計整合了多項不同功能的電路在相同的IC上,測試上也不同於以往將單功能的IC個別測試後,即可組成系統;取而代之的是高複雜度的SoC測試技術。在「SoC測試技術探索」一文為你做了相關的評析。

相關組織網站
IEEE P1500 Working Group官方網站
晶片系統國家型計畫
工研院系統晶片技術發展中心
相關文章
Arduino 攝影串流:DIY 簡易操作步驟
2GB、50美元!第五代樹莓派降規降價
輕觸開關中電力高度與電力行程對比
對整合式工廠自動化採取全面性作法
確保機器人的安全未來:資安的角色
comments powered by Disqus
相關討論
  相關新聞
» 虹彩光電於中國上海成立海外子公司 與多家企業簽署合作協議
» 研究:2024年全球智慧手機出貨量預期年成長5%
» SEMICON Taiwan開展倒數 AI與車電將助半導體產值破兆元
» 意法半導體40V工業級和汽車級線性穩壓器兼具效能與設計靈活性
» NVIDIA在日本與台灣推出用於生成式AI的NIM微服務


刊登廣告 新聞信箱 讀者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 遠播資訊股份有限公司版權所有 Powered by O3  v3.20.2048.18.189.171.134
地址:台北數位產業園區(digiBlock Taipei) 103台北市大同區承德路三段287-2號A棟204室
電話 (02)2585-5526 #0 轉接至總機 /  E-Mail: webmaster@ctimes.com.tw