【正文】
0000000000 0 00 0 01 0 1掃描輸入掃描輸出測試激勵解壓縮:MUX網(wǎng)絡(luò)測試響應(yīng)壓縮:異或門網(wǎng)絡(luò) Adaptive Scan壓縮原理實驗過程:為了獲得較高的故障覆蓋率,我們采用了全掃描的設(shè)計方案,電路中共46137個觸發(fā)器,我們將其中除了兩個因需要必須為常數(shù)以外的全部單元替換成可掃描單元,掃描比例為100%。 命令含義create_test_protocol為設(shè)計創(chuàng)建測試協(xié)議,只有先創(chuàng)建了測試協(xié)議才能進行后面的測試協(xié)議規(guī)則檢查dft_drc掃描插入前進行設(shè)計規(guī)則檢查,主要檢查以下四類問題:建模問題、拓撲問題、協(xié)議推斷的結(jié)果問題和協(xié)議仿真階段的問題preview_dft掃描預(yù)覽,檢查掃描規(guī)范的一致性,完善掃描規(guī)范并生成掃描鏈的結(jié)構(gòu)報告insert_dft以預(yù)覽的掃描鏈結(jié)構(gòu)為目標,在綜合過程中對三態(tài)總線添加使之無效或有效的邏輯,給雙端口定向,將掃描寄存器連接成掃描鏈并優(yōu)化邏輯,減少約束違例情況dft_drc–coverage_estimate針對插入掃描結(jié)構(gòu)之后的邏輯進行測試規(guī)則檢查,并大致的估計所能達到的故障覆蓋率掃描插入如果沒有出現(xiàn)錯誤就可以保存設(shè)計結(jié)果了,包括報告出各種模式下掃描鏈的連接順序以及網(wǎng)表文件和測試協(xié)議文件。將觸發(fā)器替換成MUX掃描單元,并采用廣播式掃描結(jié)構(gòu),用同一個外部掃描輸入驅(qū)動不同的掃描鏈,以降低掃描所需的復(fù)用管腳數(shù),另一方面也在一定程度上降低了測試數(shù)據(jù)量。相比較而言,開關(guān)級故障模型與實際物理缺陷更相近,覆蓋的故障類型更多,但是應(yīng)用其產(chǎn)生測試向量也更加復(fù)雜,計算量巨大;行為級故障型生成測試向量的工作復(fù)雜度低,但是其抽象層次高,不能很好的覆蓋實際的物理缺陷。1999年國際半導體技術(shù)路線圖資料顯示,單固定型故障模型可以覆蓋CMOS電路中70%的制造故障??焖贂r序ATPG模式:該模式能為部分掃描設(shè)計提供有限的支持,這種模式允許在掃描加載和掃描卸載期間有十個捕獲過程,允許數(shù)據(jù)在設(shè)計中的非掃描單元中傳輸。TetraMAX接受了設(shè)計文件、測試協(xié)議文件以及仿真庫文件之后可以生成測試向量文件、故障報告文件以及用于對生成的向量進行仿真的測試平臺(testbench)文件。run_build命令之后進入設(shè)計規(guī)則檢查階段。其中,故障覆蓋率=檢測到的故障數(shù)/總故障數(shù)100%,而測試覆蓋率=檢測到的故障數(shù)/可測的故障數(shù)100%,它更能反映測試向量集合對故障覆蓋的效果,因此,這里我們給出測試覆蓋率(TC)的結(jié)果,TC(Test coverage)= (DT+(PTPT_credit))/(all_faultsUD(ANAU_credit))100%,Tetra MAX工具在進行測試覆蓋率計算時對PT類故障、AN類故障分別給予了部分可信度PT_credit、AU_credit。使用DFT Compiler和Tetra MAX壓縮技術(shù),可以顯著地縮短ATPG測試向量的大小,更容易滿足ATE Tester的memory要求。本文對各種DFT技術(shù)進行了理論上的研究,并與工程實踐相結(jié)合,在一款高性能通用處理器芯片上應(yīng)用了全掃描DFT技術(shù);在測試壓縮方面,研究了adaptive scan壓縮結(jié)構(gòu),并對此款高性能通用處理器應(yīng)用了adaptive scan壓縮結(jié)構(gòu)。根據(jù)是否與ATPG過程相結(jié)合,測試壓縮技術(shù)可以分為不干預(yù)ATPG過程的測試壓縮技術(shù)和與ATPG協(xié)同的測試壓縮技術(shù);根據(jù)解壓縮電路是否為測試向量集合定制,測試壓縮技術(shù)可以分為依賴于測試向量集合的壓縮技術(shù)和不依賴于測試向量集合的壓縮技術(shù);根據(jù)使用何種壓縮算法,測試壓縮技術(shù)大致又可以分為編碼壓縮方法、線性擴展的方法、非線性擴展的方法等。 參考文獻[1] The National Technology Roadmap for Semiconductors (ITRS), Semiconductor Industry Association,1997 Edition.[2] Joint Test Action Group (JTAG). IEEE Standard Test Access Port and BoundaryScan Architecture. IEEE std. . 1990.[3] . Levitt, “Designing UltraSparc for testability”, IEEE Design and Test of Computers,[15] C. V. Krishna, N. A. Touba, “Adjustable width linear binational scan vector depression”, In Proceedings of International Conference on ComputerAided Design, 2003, 863~866.致 謝 附錄1 DFT設(shè)計腳本 附錄2 ATPG腳本。本文的測試壓縮方法采用了adaptive scan 結(jié)構(gòu),今后還可以嘗試用菊花鏈壓縮結(jié)構(gòu)和Illinois壓縮結(jié)構(gòu)。測試壓縮技術(shù)可以有效地降低測試數(shù)據(jù)量和測試時間,與LBIST所不同的是,測試壓縮電路可以很方便地集成到用戶的設(shè)計中,不需要對系統(tǒng)邏輯進行任何更改,對電路的性能影響很小,同時能保證很高的故障覆蓋率。測試數(shù)據(jù)量的膨脹促進了對測試壓縮技術(shù)的研究,測試壓縮技術(shù)如今也成為一種重要的DFT技術(shù),因此,本文也對測試壓縮技術(shù)開展了相應(yīng)的研究工作。這款高性能通用處理器設(shè)計在較小的硬件開銷下,邏輯部分和存儲器部分都達到了較高的測試覆蓋率,%。 TEST模式下的命令命令參數(shù)含義set_faultsmodel stuck/transition指定故障類型為固定型故障或者跳變時延故障add_faultsread_faultsall*.file工具會自動計算電路中所有的故障并將所有故障添加進來,也可以從外部讀入故障文件set_atpgAbort_limit nATPG的過程會通過一些假設(shè)敏化通路來對故障進行控制和觀測。所有與設(shè)計有關(guān)的工藝庫模型都應(yīng)該被讀取。這里只對GodsonD進行了固定型故障的ATPG。在這兩種設(shè)計中組合ATPG模式可以利用較短的測試生成時間來達到較高的故障覆蓋率。除了固定型故障,在門級故障模型中,還有短路故障模型、開路故障模型、橋接故障模型、串擾故障模型等,它們分別代表了一類物理缺陷,各種故障模型所代表的物理缺陷間也可能有交集。故障模型與電路模型有關(guān),不同的電路層次有不同的故障模型,如行為級故障模型、門級故障模型、開關(guān)級故障模型等。本章在上一章的基礎(chǔ)上,介紹了帶有Adaptive Scan壓縮結(jié)構(gòu)的內(nèi)部掃描可測試性設(shè)計技術(shù)在一款高性能通用處理器芯片中的應(yīng)用。 命令參數(shù)含義set_scan_configurationchain_count 10test_mode Internal_scan設(shè)定Internal_scan模式下掃描鏈的條數(shù)是10條set_scan_configurationchain_length 380test_mode ScanCompression設(shè)定ScanCompression模式下掃描鏈的長度是380set_scan_pression_configurationbase_mode Internal_scantest_mode ScanCompression設(shè)定ScanCompression模式是以Internal_scan模式為基礎(chǔ)的set_pipeline_scan_data_configurationhead_pipeline_stage 1 head_pipeline_clock clock設(shè)定在輸入端口與解壓器、壓縮器與輸出端口之間都增加一級pipeline觸發(fā)器,并指定由時鐘clock控制在掃描輸入引腳和解壓縮器以及壓縮器和掃描輸出引腳之間插入pipeline寄存器可以有效的緩解在輸入輸出引腳和第一個所連的內(nèi)部的掃描觸發(fā)器之間的時序問題;另外壓縮邏輯是由XOR網(wǎng)絡(luò)組成,這樣會在掃描輸出引腳處造成大量的翻轉(zhuǎn),容易引起引腳處高頻振蕩的問題。在Adaptive Scan中,測試激勵的解壓縮采用可配置的MUX網(wǎng)絡(luò)的方法,其基本原理和Illinois廣播式結(jié)構(gòu)相同,區(qū)別在于可以在移位的時候配置那些掃描鏈共享同一個輸入;測試響應(yīng)的壓縮采用XOR網(wǎng)絡(luò)的方法。掃描觸發(fā)器由一個D觸發(fā)器和一個多路選擇器MUX組成。 GodsonD 處理器結(jié)構(gòu)圖通常,DFT設(shè)計的流程是:首先在數(shù)字系統(tǒng)設(shè)計的較高層次,DFT設(shè)計者需要運用高層次的可測試性度量方法分析電路的可測試性問題,以對芯片的設(shè)計做相應(yīng)的修改,并且使設(shè)計的硬件描述語言的代碼風格符合掃描設(shè)計規(guī)則,然后在RTL級完成BIST的設(shè)計,接著,在邏輯綜合之后.設(shè)計者進行掃描鏈的插入。針對一款高性能通用處理器芯片設(shè)計,我們提供了全掃描設(shè)計的DFT解決方案。在Adaptive Scan中,測試激勵的解壓縮采用可配置的MUX網(wǎng)絡(luò)的方法,其基本原理和Illinois廣播式結(jié)構(gòu)相同,區(qū)別在于可以在移位的時候配置那些掃描鏈共享同一個輸入;測試響應(yīng)的壓縮采用XOR網(wǎng)絡(luò)的方法, DFT技術(shù)已經(jīng)成為處理器設(shè)計中一個重要的組成部分, 必須在設(shè)計的早期從芯片級對測試進行規(guī)劃、確定測試策略和設(shè)計方法。分段4分段3分段2分段1掃描輸出掃描輸入掃描鏈掃描輸出掃描輸入圖2. 6多個電路的并行測試 Illinois掃描結(jié)構(gòu)[13]隨后,又出現(xiàn)了很多Illinois掃描結(jié)構(gòu)的改進方法,主要思想都是通過減少串行模式下測試向量的個數(shù)來降低測試數(shù)據(jù)量和測試時間,主要有以下幾種改進方法:采用多個掃描輸入共享的掃描結(jié)構(gòu),對掃描鏈進行分組,每個分組中的掃描鏈用同一個外部掃描輸入管腳驅(qū)動。這種思想最早源于將相同的測試向量廣播給不同子電路的測試方法,以解決多個電路并行測試的問題。(I.) 基于線性有限狀態(tài)機的方法LFSR是一類典型的線性有限狀態(tài)機。一般而言,ATPG的壓縮效果越好,X位的個數(shù)就越少,那么,測試壓縮技術(shù)的壓縮效果就會越差。(2)獲得較高的壓縮率,這是每個優(yōu)秀的壓縮算法必須做到的,因為追求高的壓縮率是選擇使用壓縮算法最根本的動機。盡管應(yīng)用LBIST可以極大地減少測試數(shù)據(jù)量,但由于LBIST存在故障覆蓋率、面積和時延開銷等問題,限制了LBIST的廣泛應(yīng)用。然而,隨著電路規(guī)模的增大、觸發(fā)器個數(shù)的增多,如果要實現(xiàn)高覆蓋率的測試,掃描測試的數(shù)據(jù)量將急劇增加,從而給依賴于ATE的測試帶來一些問題:1)龐大的測試數(shù)據(jù)量一方面對ATE的存儲容量提出了更高的要求,另一方面也意味著較長的測試時間;2)盡管掃描向量的測試時間可以通過設(shè)計大量的掃描鏈來減少,但由于實際中芯片管腳數(shù)和ATE測試通道數(shù)的限制,可以由ATE直接驅(qū)動的內(nèi)部掃描鏈的條數(shù)是有限的,使得設(shè)計的掃描鏈過長,增加了測試時間。其優(yōu)點是在測試模式下只需要一個測試時鐘,對應(yīng)一個管腳開銷(如果不復(fù)用功能管腳),ATPG運行時間短,測試向量個數(shù)少;但缺點是在測試模式下需要為測試時鐘布局,保證掃描鏈移位和捕獲的正確操作。然而,由于很難控制不同時鐘域的時鐘偏移,加上測試儀的精度有限,因此,很難保證這兩個時鐘同時有效。其中大部分都可以通過測試點插入的方法進行處理,但一般還是希望能從上層的設(shè)計中加以避免??紤]到芯片面積及性能的約束,根據(jù)記憶單元是否被全部地替換成掃描觸發(fā)器,掃描設(shè)計有“全掃描”和“部分掃描”之分。部分掃描設(shè)計相對靈活得多,不僅節(jié)省面積開銷,而且能減少對電路性能的影響,其代價是對時序電路的測試產(chǎn)生困難,故障覆蓋率可能會有一定程度的下降。為了解決這個問題,1965年IBM的設(shè)計人員在IBM/360系統(tǒng)中新增加了掃描設(shè)計:新增加了一種被稱為移位的模式,在該模式下,所有的觸發(fā)器被替換成掃描觸發(fā)器并被連接成若干個掃描鏈,每個掃描鏈的輸入/輸出連接到電路的輸入/輸出上,于是就可以通過掃描鏈把觸發(fā)器的狀態(tài)移入,這樣就可以控制電路中所有觸發(fā)器的值,如果要觀察所有觸發(fā)器的狀態(tài),則通過掃描鏈把觸發(fā)器的狀態(tài)移出??蓽y試性設(shè)計通過在芯片原始設(shè)計中插入各種用于提高芯片可測試性的硬件邏輯,從而使芯片變得容易測試,大幅度地節(jié)省芯片的測試成本,其目的就是為了確保芯片在生產(chǎn)制造之后,通過測試的產(chǎn)品都能夠正確無誤地工作。首先確定設(shè)計需求和測試需求,在這里的測試需求主要包括要測試的故障以及要測試的內(nèi)容;在書寫測試規(guī)范階段,主要的工作就是制定測試的各種規(guī)范,如故障覆蓋率的要求等;在測試開發(fā)階段,主要的工作是針對待測電路進行DFT設(shè)計,例如向待測電路插入邊界掃描、掃描鏈、針對存儲器加入MBIST等,然后進行測試向量生成同時評估測試向量的故障覆蓋率,進行向量仿真等,芯片的測