焦 芳,張 玥,嚴(yán)韞瑤,嚴(yán) 偉
(北京大學(xué) 軟件與微電子學(xué)院,北京100871)
多時(shí)鐘域并行測(cè)試控制器的設(shè)計(jì)
焦芳,張玥,嚴(yán)韞瑤,嚴(yán)偉
(北京大學(xué) 軟件與微電子學(xué)院,北京100871)
采用了IEEE1149中TAP控制器的概念與IEEE1500 wrapper的概念相結(jié)合,設(shè)計(jì)出一款基于 IEEE1500測(cè)試標(biāo)準(zhǔn)同時(shí)兼容 IEEE1149測(cè)試標(biāo)準(zhǔn)的測(cè)試控制器,并設(shè)計(jì)了滿足不同時(shí)鐘域同時(shí)并行配置通用寄存器的功能,可以節(jié)省多個(gè)時(shí)鐘域串行配置寄存器的時(shí)間,提高了測(cè)試效率。結(jié)果中的verdi仿真圖表明文章所設(shè)計(jì)的測(cè)試結(jié)構(gòu)達(dá)到了預(yù)期。
IEEE1500標(biāo)準(zhǔn);IEEE1149標(biāo)準(zhǔn);TAP;wrapper;測(cè)試
隨著集成電路產(chǎn)業(yè)的發(fā)展,設(shè)計(jì)、制造、測(cè)試已成為電路中十分關(guān)鍵的技術(shù)。測(cè)試成本伴隨著集成電路規(guī)模的增大,已經(jīng)占到整個(gè)生產(chǎn)制造成本的三成以上,并且還有向上增長(zhǎng)的趨勢(shì)[1]。如圖1[2]顯示了近幾年測(cè)試數(shù)據(jù)量的增加。
圖1 測(cè)試數(shù)據(jù)量增長(zhǎng)
從上圖可以看出,測(cè)試數(shù)據(jù)量正在逐年增加,對(duì)測(cè)試的要求也會(huì)越來(lái)越高,因此,是否可以提高測(cè)試效率日趨成為集成電路產(chǎn)業(yè)的關(guān)鍵。
JTAG(聯(lián)合測(cè)試行動(dòng)小組)希望可以找到一個(gè)通用的解決方案來(lái)處理測(cè)試問(wèn)題。該機(jī)構(gòu)推出了 IEEE 1149.1這個(gè)標(biāo)準(zhǔn),是IEEE推出用來(lái)進(jìn)行芯片測(cè)試的一個(gè)標(biāo)準(zhǔn),現(xiàn)在又發(fā)展更新出了IEEE1500及IEEE1687,而業(yè)內(nèi)多使用IEEE1149及IEEE1500作為測(cè)試標(biāo)準(zhǔn)[3]。
陳壽宏[4]等通過(guò) IEEE1500搭建 SOC測(cè)試平臺(tái)對(duì)電路進(jìn)行測(cè)試,雖然可以正確地實(shí)現(xiàn)測(cè)試任務(wù),但若對(duì)大規(guī)模電路進(jìn)行測(cè)試則會(huì)消耗很多的測(cè)試時(shí)間,增加測(cè)試成本。談恩民等[5]通過(guò)使用IEEE1500 wrapper的相關(guān)概念設(shè)計(jì)出可以支持sram故障測(cè)試的測(cè)試控制器。Elvira K[6]等也認(rèn)為基于IEEE1500標(biāo)準(zhǔn)可以提高測(cè)試質(zhì)量。本設(shè)計(jì)中同樣采用了IEEE1149、IEEE1500的相關(guān)概念,并加入了不同時(shí)鐘域并行配置通用寄存器的概念,在超大規(guī)模集成電路中可以提高測(cè)試效率,節(jié)省測(cè)試時(shí)間。
引言提到的 IEEE 1149.1標(biāo)準(zhǔn)里,有兩類非常重要的寄存器:數(shù)據(jù)寄存器和指令寄存器。TAP的主要功能就是用來(lái)訪問(wèn)芯片的所有數(shù)據(jù)寄存器和指令寄存器。TAP結(jié)構(gòu)的 TMS信號(hào)用來(lái)控制狀態(tài)機(jī)的轉(zhuǎn)換,TDI、TDO分別為數(shù)據(jù)的輸入和輸出。TCK和TRST分別為時(shí)鐘信號(hào)和復(fù)位信號(hào)。
TAP的狀態(tài)機(jī)如圖2所示,狀態(tài)機(jī)的轉(zhuǎn)換是由 TMS所控制的,整個(gè)TAP Controller在TCK的驅(qū)動(dòng)下,通過(guò)TMS=0,1會(huì)分別指向不同的次狀態(tài)。本設(shè)計(jì)采用IEEE1149中TAP的相關(guān)概念來(lái)進(jìn)行數(shù)據(jù)寄存器和指令寄存器的配置以此搭建測(cè)試平臺(tái)。
圖2 TAP controller狀態(tài)機(jī)
IEEE工作組提出了一種稱為外殼(wrapper)的結(jié)構(gòu),它是IEEE1500標(biāo)準(zhǔn)對(duì)比IEEE1149標(biāo)準(zhǔn)的重大創(chuàng)新和突破。
wrapper標(biāo)準(zhǔn)測(cè)試殼結(jié)構(gòu)包括旁路寄存器(WBY)、指令寄存器(WIR)、邊界寄存器(WBR)等。該結(jié)構(gòu)殼的特點(diǎn)在于可以增強(qiáng)內(nèi)部不可見(jiàn)節(jié)點(diǎn)的可觀察性,提高測(cè)試質(zhì)量。wrapper的結(jié)構(gòu)圖如圖3所示[9]。
圖3 wrapper結(jié)構(gòu)圖
該外殼在正常工作模式情況下,由于測(cè)試功能未被啟動(dòng),完全不會(huì)影響到芯片的正常邏輯功能。具體的實(shí)現(xiàn)是通過(guò)相應(yīng)的 bypass功能。外殼 wrapper通過(guò) bypass寄存器單純將外部電路與內(nèi)部的 function IP正常連接。正常模式下,輸入被打入外殼后被輸入到bypass寄存器1拍后隨后從輸出端口輸出。只有在測(cè)試模式下才會(huì)將輸入輸出連接入相應(yīng)的掃描鏈。
通過(guò)在不同時(shí)鐘域設(shè)計(jì)并行總線,來(lái)滿足同時(shí)并行配置通用寄存器的要求。每個(gè)時(shí)鐘域同時(shí)含有總線WPI,一旦輸入相應(yīng)的并行配置指令,WPI同時(shí)作為所有時(shí)鐘域通用寄存器的輸入,對(duì)通用寄存器進(jìn)行配置,對(duì)其做如下設(shè)計(jì)的主要目的是可以提高測(cè)試效率,滿足同時(shí)對(duì)通用寄存器配置的需要。其結(jié)構(gòu)簡(jiǎn)圖如圖4所示。
圖4 并行配置寄存器結(jié)構(gòu)圖
下面將從 IEEE1149中 tap的實(shí)現(xiàn),IEEE1500中wrapper的實(shí)現(xiàn),以及多時(shí)鐘域并行配置通用寄存器的實(shí)現(xiàn)這3個(gè)方面分析結(jié)果。
4.1IR、DR的訪問(wèn)實(shí)現(xiàn)
TAP控制器對(duì)IR、DR的訪問(wèn)實(shí)現(xiàn)verdi波形圖如圖5所示。
圖5 tap實(shí)現(xiàn)波形圖
觀察該波形圖可知,該波形圖依次體現(xiàn)了TAP對(duì)指令寄存器的訪問(wèn)和對(duì)數(shù)據(jù)寄存器訪問(wèn)的實(shí)現(xiàn),完成了如圖2所示TAP狀態(tài)機(jī)的轉(zhuǎn)換,成功實(shí)現(xiàn)了IEEE1149 TAP的相關(guān)功能。
4.2IEEE1500 wrapper的仿真實(shí)現(xiàn)
IEEE1500 wrapper實(shí)現(xiàn)的仿真電路圖如圖6所示。
上面一系列仿真圖是帶有wrapper的基于IEEE1500標(biāo)準(zhǔn)測(cè)試器的仿真實(shí)現(xiàn)。與IEEE1149相比它增加了一個(gè)SelectWIR signal,從而只用一個(gè)CAPTUTURE_DR即可實(shí)現(xiàn)CAPUTURE_IR及CAPTURE_DR的功能。SHIFT_DR、UPDATE_DR同理。其中所有測(cè)試信號(hào)均包上了一層wrapper。
圖6 wrapper實(shí)現(xiàn)波形圖
上述仿真圖實(shí)現(xiàn)了完整的指令寄存器及數(shù)據(jù)寄存器的訪問(wèn)實(shí)現(xiàn)。
4.3并行配置通用寄存器的仿真實(shí)現(xiàn)
實(shí)現(xiàn)并行配置通用寄存器的仿真圖如圖7所示。
圖7 并行配置通用寄存器的仿真實(shí)現(xiàn)
所配置的寄存器是 5個(gè) clock domain均有的通用寄存器,首先不采用并行配置的方法,即各個(gè)時(shí)鐘域以串行的方式配置其值均為’h26e,完成 5個(gè)時(shí)鐘域通用寄存器的配置共耗時(shí)間 0.15 ns;而當(dāng)采用多個(gè)時(shí)鐘域并行配置通用寄存器的方法,并行配置通用寄存器值為’h34d,則可同時(shí)完成5個(gè)時(shí)鐘域的配置,節(jié)省掉串行配置寄存器所耗時(shí)間,可以提高測(cè)試效率。
上圖僅以5個(gè)時(shí)鐘域舉例,然而在現(xiàn)階段的大規(guī)模集成電路設(shè)計(jì)中,所用到時(shí)鐘域往往有幾十個(gè),可以推測(cè)出此種配置通用寄存器的方法可以大大地節(jié)省測(cè)試時(shí)間。
4.4測(cè)試時(shí)間
表1為普通的測(cè)試控制器配置通用寄存器消耗的仿真時(shí)間隨時(shí)鐘域數(shù)目增加的變化(所有時(shí)鐘域串行配置)。普通的基于IEEE1500標(biāo)準(zhǔn)的測(cè)試控制器配置通用寄存器時(shí),所需要消耗的時(shí)間會(huì)隨著clock domain的增加而增加,會(huì)消耗大量的測(cè)試時(shí)間,在大規(guī)模集成電路中,所需要配置通用寄存器的時(shí)鐘域會(huì)非常多,通用寄存器數(shù)同樣也很多,會(huì)消耗大量的資源。
表2為增加了不同時(shí)鐘域并行配置通用寄存器結(jié)構(gòu)的測(cè)試控制器配置通用寄存器消耗的仿真時(shí)間隨時(shí)鐘域數(shù)目增加的變化。
表1 普通測(cè)試器配置通用寄存器時(shí)間(ns)
表2 本設(shè)計(jì)配置通用寄存器時(shí)間 (ns)
如上表我們可以清楚地看到,對(duì)比表1大量節(jié)省了配置通用寄存器的時(shí)間,并且節(jié)省的測(cè)試時(shí)間會(huì)隨著寄存器數(shù)目、時(shí)鐘域數(shù)目的增加而增加,可以極大地提高測(cè)試效率。
本文詳細(xì)介紹了IEEE1149中TAP及TAP controller,以及 IEEE 1500 wrapper的相關(guān)概念,并成功實(shí)現(xiàn)了基于以上標(biāo)準(zhǔn)的測(cè)試控制器的設(shè)計(jì),IEEE1500的 wrapper的設(shè)計(jì)實(shí)現(xiàn)增強(qiáng)了測(cè)試的可控制性和可觀測(cè)性。同時(shí)提出了一種針對(duì)多時(shí)鐘域并行配置寄存器的方法來(lái)提高測(cè)試效率,縮短測(cè)試時(shí)間,該方法節(jié)省的測(cè)試時(shí)間會(huì)隨寄存器數(shù)、時(shí)鐘域數(shù)目的增加而增加。
[1]吳明行,韓銀和,李曉維.基于CTL的SOC IP核的測(cè)試技術(shù)[J].計(jì)算機(jī)工程與科學(xué),2005(4):43-45.
[2]向剛.SoC測(cè)試優(yōu)化及其應(yīng)用技術(shù)研究[D].哈爾濱:哈爾濱工業(yè)大學(xué),2011.
[3]薛利興,張展,左德承,等.基于 JTAG的硬件故障注入工具[J].智能計(jì)算機(jī)與應(yīng)用,2011(4):40-43,48.
[4]陳壽宏,顏學(xué)龍,陳凱.基于IEEE 1500的數(shù)字 SOC測(cè)試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)測(cè)量與控制,2013(5):1140-1142.
[5]談恩民,馬江波,秦昌明.SoC的存儲(chǔ)器 Wrapper設(shè)計(jì)及故障測(cè)試[J].微電子學(xué)與計(jì)算機(jī),2011(6):122-125.
[6]ELVIRA K,MARYNA K,OLESIA G,et al.Fault Coverage Improving for SoC Based on IEEE1500 SECT standard.IEEE;2006.
[7]IEEE Standard Test Access Port and Boundary-Scan Architecture.IEEE Std 1149.1-2001.2001
[8]IEEE 1500Group.IEEE Standard Testability Method for Embed-ded Core Based Integrated Circuits.2005
[9]韓貴博.基于測(cè)試控制器的SOC低功耗優(yōu)化設(shè)計(jì)方法的研究[D].哈爾濱:哈爾濱理工大學(xué),2012
嚴(yán)偉(1966-),通信作者,男,博士,副教授,主要研究方向:SoC數(shù)字電路設(shè)計(jì)。
Design of parallel test controller applied to multiple clock domains
Jiao Fang,Zhang Yue,Yan Yunyao,Yan Wei
(School of Software&Microeletronics,Peking University,Beijing 100871,China)
This article combining the IEEE 1149 TAP controller concept and IEEE 1500 wrapper concept to design a test controller that based on IEEE 1500 standard and compatible with IEEE 1149 test standard.It also has the function that parallel configured the general register in different clock domain to improve the test efficiency.The results of verdi simulation diagram show that the test structure to achieve the desired.
IEEE1500 standard;IEEE1149 standard;TAP;wrapper;test
TP368.1
A
10.16157/j.issn.0258-7998.2016.09.007
2016-03-23)
焦芳(1991-),女,碩士研究生。主要研究方向:數(shù)字電路設(shè)計(jì)驗(yàn)證。
張玥(1990-),女,碩士研究生。主要研究方向:電機(jī)芯片設(shè)計(jì)。
中文引用格式:焦芳,張玥,嚴(yán)韞瑤,等.多時(shí)鐘域并行測(cè)試控制器的設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2016,42(9):29-31,35.
英文引用格式:Jiao Fang,Zhang Yue,Yan Yunyao,et al.Design of parallel test controller applied to multiple clock domains[J].Application of Electronic Technique,2016,42(9):29-31,35.