




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
從理論到實踐:JTAG與IJTAG測試架構(gòu)的自動設(shè)計與實現(xiàn)一、引言1.1研究背景與意義隨著半導(dǎo)體技術(shù)的飛速發(fā)展,芯片的集成度不斷提高,功能日益復(fù)雜。從早期簡單的小規(guī)模集成電路,到如今高度集成的片上系統(tǒng)(SoC),芯片內(nèi)部集成了數(shù)以億計的晶體管和多種復(fù)雜的功能模塊,如中央處理器(CPU)、圖形處理器(GPU)、內(nèi)存控制器等。這種技術(shù)演進在提升芯片性能和功能的同時,也給芯片測試帶來了前所未有的挑戰(zhàn)。傳統(tǒng)的芯片測試方法,如基于探針的測試技術(shù),在面對新型芯片封裝和復(fù)雜電路結(jié)構(gòu)時,逐漸顯得力不從心。以球柵陣列(BGA)封裝為例,其引腳隱藏在芯片底部,使得探針難以接觸,無法進行有效的電氣連接和信號檢測。多層電路板中間層走線的檢測也成為難題,由于物理空間的限制和信號傳輸?shù)母蓴_,傳統(tǒng)測試手段難以觸及這些內(nèi)部線路。此外,隨著互連速率攀升到5Gb/s以上,在高速I/O(HSIO)總線上放置測試焊盤變得近乎不可能,電容耦合效應(yīng)會對HSIO信號傳輸造成災(zāi)難性破壞,導(dǎo)致測試焊盤在許多新型設(shè)計中被禁止使用。這些問題使得侵入式測試技術(shù)的覆蓋范圍不斷縮小,無法滿足現(xiàn)代芯片測試的需求。在這樣的背景下,聯(lián)合測試行動組(JTAG)和內(nèi)部JTAG(IJTAG)測試架構(gòu)應(yīng)運而生。JTAG作為一種標(biāo)準(zhǔn)化的邊界掃描測試技術(shù),最初的開發(fā)目標(biāo)是提供一種更有效的電路板測試方法,以驗證電路板上芯片之間的連通性。通過在芯片的輸入輸出引腳與內(nèi)核電路之間插入邊界掃描單元(BSC),JTAG能夠?qū)崿F(xiàn)對器件及其外圍電路的測試,大大提高了芯片的可控性和可觀察性,有效地解決了傳統(tǒng)測試方法在新型芯片封裝和復(fù)雜電路結(jié)構(gòu)下的難題,使得電路板測試的成本和時間大幅降低。IJTAG則是在JTAG基礎(chǔ)上發(fā)展起來的新一代測試技術(shù)。隨著芯片內(nèi)嵌入式儀器的數(shù)量和類型急劇增加,芯片設(shè)計人員發(fā)現(xiàn),內(nèi)嵌控制器是測試、驗證和調(diào)試集成電路的最具成本效益和效率的手段之一。IJTAG標(biāo)準(zhǔn)通過在芯片級定義一種標(biāo)準(zhǔn)化的儀器接口和高效的架構(gòu),實現(xiàn)了對嵌入式儀器的訪問和管理,有助于將測試和測量儀器嵌入到芯片中,實現(xiàn)從基于用探針實際測量芯片或電路的外部侵入式測試設(shè)備向內(nèi)部的、非侵入式軟件驅(qū)動方法的過渡,為解決電路板和系統(tǒng)級驗證、測試和調(diào)試中的困難提供了新的途徑。對JTAG和IJTAG測試架構(gòu)進行自動設(shè)計與實現(xiàn)的研究具有重要意義。從技術(shù)層面來看,這有助于進一步提高芯片測試的效率和準(zhǔn)確性,滿足日益增長的芯片測試需求。自動設(shè)計與實現(xiàn)能夠減少人工干預(yù),降低設(shè)計錯誤的風(fēng)險,提高測試架構(gòu)的設(shè)計質(zhì)量和一致性。同時,通過優(yōu)化測試架構(gòu),能夠更快速地檢測出芯片中的故障,提高芯片的良品率,降低生產(chǎn)成本。從產(chǎn)業(yè)發(fā)展角度來看,JTAG和IJTAG測試架構(gòu)的自動設(shè)計與實現(xiàn)是推動半導(dǎo)體產(chǎn)業(yè)發(fā)展的關(guān)鍵技術(shù)之一。隨著芯片技術(shù)的不斷進步,半導(dǎo)體產(chǎn)業(yè)對測試技術(shù)的要求也越來越高。高效、準(zhǔn)確的測試技術(shù)能夠加速芯片的研發(fā)和生產(chǎn)周期,提高產(chǎn)業(yè)的競爭力。此外,這一研究成果還有助于促進測試設(shè)備和工具的創(chuàng)新,帶動相關(guān)產(chǎn)業(yè)鏈的發(fā)展,為整個半導(dǎo)體產(chǎn)業(yè)的發(fā)展提供有力支撐。在學(xué)術(shù)研究領(lǐng)域,對JTAG和IJTAG測試架構(gòu)的深入研究也具有重要價值。這一領(lǐng)域涉及到電子設(shè)計自動化(EDA)、數(shù)字電路設(shè)計、測試?yán)碚摰榷鄠€學(xué)科的交叉,通過對其自動設(shè)計與實現(xiàn)的研究,能夠豐富和拓展相關(guān)學(xué)科的理論和方法,為后續(xù)的學(xué)術(shù)研究提供新的思路和方向。隨著芯片技術(shù)的不斷發(fā)展,JTAG和IJTAG測試架構(gòu)的自動設(shè)計與實現(xiàn)已成為芯片測試領(lǐng)域的重要研究課題,對于推動芯片技術(shù)進步、促進半導(dǎo)體產(chǎn)業(yè)發(fā)展以及豐富學(xué)術(shù)研究成果都具有不可忽視的重要意義。1.2國內(nèi)外研究現(xiàn)狀在JTAG測試架構(gòu)的研究方面,國外起步較早,取得了豐富的成果。自1990年IEEE1149.1標(biāo)準(zhǔn)確立以來,眾多國際知名企業(yè)和研究機構(gòu)積極投入到JTAG技術(shù)的研究與應(yīng)用中。如德州儀器(TI)、英特爾(Intel)等公司,在其芯片產(chǎn)品中廣泛應(yīng)用JTAG技術(shù),實現(xiàn)了芯片的高效測試與調(diào)試。相關(guān)研究圍繞JTAG的架構(gòu)優(yōu)化、測試算法改進以及與其他測試技術(shù)的融合展開。例如,通過改進邊界掃描單元的結(jié)構(gòu),提高測試數(shù)據(jù)的傳輸效率;利用遺傳算法等智能算法,優(yōu)化測試向量的生成,以減少測試時間和成本。國內(nèi)對JTAG技術(shù)的研究也在不斷深入。許多高校和科研機構(gòu),如清華大學(xué)、北京大學(xué)、中國科學(xué)院微電子研究所等,在JTAG技術(shù)的理論研究和工程應(yīng)用方面取得了一系列成果。研究內(nèi)容涉及JTAG控制器的設(shè)計、測試鏈路的優(yōu)化以及測試軟件的開發(fā)等。一些國內(nèi)企業(yè)也開始將JTAG技術(shù)應(yīng)用于芯片設(shè)計和生產(chǎn)中,逐步提高自身的芯片測試能力。IJTAG測試架構(gòu)作為一種新興的測試技術(shù),近年來受到了國內(nèi)外學(xué)術(shù)界和產(chǎn)業(yè)界的廣泛關(guān)注。國外的研究主要集中在IJTAG標(biāo)準(zhǔn)的完善和應(yīng)用拓展上。如IEEE1687標(biāo)準(zhǔn)工作組不斷對IJTAG標(biāo)準(zhǔn)進行修訂和完善,以適應(yīng)不斷變化的芯片技術(shù)發(fā)展需求。一些研究機構(gòu)致力于開發(fā)基于IJTAG的測試工具和平臺,提高芯片測試的自動化水平和測試效率。例如,通過開發(fā)智能化的測試軟件,實現(xiàn)對IJTAG測試架構(gòu)的自動配置和測試流程的自動執(zhí)行。國內(nèi)在IJTAG測試架構(gòu)的研究方面相對起步較晚,但發(fā)展迅速。部分高校和科研機構(gòu)開始開展相關(guān)研究,探索IJTAG技術(shù)在國內(nèi)芯片產(chǎn)業(yè)中的應(yīng)用前景。研究工作主要包括IJTAG架構(gòu)的設(shè)計與實現(xiàn)、測試策略的制定以及與國內(nèi)芯片設(shè)計流程的融合等。一些企業(yè)也開始關(guān)注IJTAG技術(shù),并嘗試將其應(yīng)用于實際的芯片測試中,以提高芯片的測試質(zhì)量和競爭力。盡管國內(nèi)外在JTAG和IJTAG測試架構(gòu)的研究方面取得了一定的進展,但仍存在一些不足與空白。在JTAG測試架構(gòu)方面,隨著芯片技術(shù)的不斷發(fā)展,如三維集成電路(3D-IC)和片上網(wǎng)絡(luò)(NoC)等新型芯片結(jié)構(gòu)的出現(xiàn),傳統(tǒng)JTAG測試架構(gòu)在測試覆蓋率、測試效率和可擴展性等方面面臨挑戰(zhàn)。目前針對這些新型芯片結(jié)構(gòu)的JTAG測試架構(gòu)優(yōu)化研究還相對較少,如何設(shè)計出適應(yīng)新型芯片結(jié)構(gòu)的JTAG測試架構(gòu),以提高測試的有效性和全面性,是亟待解決的問題。在IJTAG測試架構(gòu)方面,雖然IJTAG標(biāo)準(zhǔn)已經(jīng)制定,但在實際應(yīng)用中仍存在一些問題。例如,IJTAG儀器的兼容性和互操作性有待提高,不同廠家生產(chǎn)的IJTAG儀器之間難以實現(xiàn)無縫對接和協(xié)同工作。此外,IJTAG測試架構(gòu)的自動設(shè)計工具還不夠成熟,設(shè)計過程中需要大量的人工干預(yù),導(dǎo)致設(shè)計效率低下。如何開發(fā)出高效、通用的IJTAG測試架構(gòu)自動設(shè)計工具,提高設(shè)計的自動化水平和質(zhì)量,也是當(dāng)前研究的重點和難點。1.3研究目標(biāo)與內(nèi)容本研究旨在深入探索JTAG和IJTAG測試架構(gòu),實現(xiàn)其自動設(shè)計與高效實現(xiàn),以滿足現(xiàn)代芯片測試日益增長的復(fù)雜需求。通過對相關(guān)理論和技術(shù)的深入研究,結(jié)合先進的算法和工具,構(gòu)建自動化設(shè)計流程,提高測試架構(gòu)設(shè)計的效率和質(zhì)量,推動芯片測試技術(shù)的進一步發(fā)展。在研究內(nèi)容方面,首先會深入剖析JTAG和IJTAG測試架構(gòu)的工作原理。詳細(xì)研究JTAG的邊界掃描原理,包括邊界掃描單元的結(jié)構(gòu)和工作機制,以及JTAG測試鏈路的建立和數(shù)據(jù)傳輸過程。對于IJTAG,將重點研究其儀器接口和架構(gòu)設(shè)計,了解IJTAG如何實現(xiàn)對嵌入式儀器的訪問和管理,以及IJTAG與JTAG在架構(gòu)和功能上的差異。這一基礎(chǔ)研究將為后續(xù)的自動設(shè)計與實現(xiàn)提供堅實的理論支持。在JTAG測試架構(gòu)自動設(shè)計方面,將研究適應(yīng)新型芯片結(jié)構(gòu)的JTAG測試架構(gòu)優(yōu)化方法。針對3D-IC和NoC等新型芯片結(jié)構(gòu),分析傳統(tǒng)JTAG測試架構(gòu)存在的問題,提出改進方案。例如,通過設(shè)計新的邊界掃描單元結(jié)構(gòu),提高測試覆蓋率;優(yōu)化測試鏈路布局,減少測試時間和成本。同時,開發(fā)JTAG測試架構(gòu)自動設(shè)計工具,實現(xiàn)測試架構(gòu)的自動化生成。利用電子設(shè)計自動化(EDA)技術(shù),結(jié)合算法優(yōu)化,使工具能夠根據(jù)芯片的功能和結(jié)構(gòu)需求,自動生成最優(yōu)的JTAG測試架構(gòu)。對于IJTAG測試架構(gòu)自動設(shè)計,將致力于解決IJTAG儀器的兼容性和互操作性問題。研究制定統(tǒng)一的標(biāo)準(zhǔn)和規(guī)范,確保不同廠家生產(chǎn)的IJTAG儀器能夠?qū)崿F(xiàn)無縫對接和協(xié)同工作。開發(fā)IJTAG測試架構(gòu)自動設(shè)計工具,提高設(shè)計的自動化水平。該工具將能夠根據(jù)芯片的嵌入式儀器配置和測試需求,自動生成高效的IJTAG測試架構(gòu),并對設(shè)計結(jié)果進行優(yōu)化和驗證。在JTAG和IJTAG測試架構(gòu)實現(xiàn)方面,將進行硬件實現(xiàn)的研究。采用合適的硬件平臺,如現(xiàn)場可編程門陣列(FPGA)或?qū)S眉呻娐罚ˋSIC),實現(xiàn)JTAG和IJTAG測試架構(gòu)。在實現(xiàn)過程中,優(yōu)化硬件電路設(shè)計,提高測試架構(gòu)的性能和穩(wěn)定性。還會進行軟件實現(xiàn)的研究,開發(fā)相應(yīng)的測試軟件,實現(xiàn)對JTAG和IJTAG測試架構(gòu)的控制和管理。測試軟件將具備測試向量生成、測試數(shù)據(jù)采集和分析等功能,能夠有效地支持芯片測試工作。最后,對設(shè)計實現(xiàn)的JTAG和IJTAG測試架構(gòu)進行全面的性能評估。通過實驗測試,分析測試架構(gòu)的測試覆蓋率、測試時間、測試成本等指標(biāo),評估其性能優(yōu)劣。根據(jù)評估結(jié)果,對測試架構(gòu)進行優(yōu)化和改進,進一步提高其性能和可靠性。1.4研究方法與技術(shù)路線本研究綜合運用多種研究方法,以確保對JTAG和IJTAG測試架構(gòu)的自動設(shè)計與實現(xiàn)進行全面、深入的探索。在研究過程中,采用文獻研究法對國內(nèi)外關(guān)于JTAG和IJTAG測試架構(gòu)的相關(guān)文獻進行廣泛搜集和深入分析。通過梳理學(xué)術(shù)期刊論文、會議論文、專利文獻以及技術(shù)報告等資料,全面了解該領(lǐng)域的研究現(xiàn)狀、發(fā)展趨勢和關(guān)鍵技術(shù),為研究提供堅實的理論基礎(chǔ)和技術(shù)參考。例如,對IEEE1149.1和IEEE1687標(biāo)準(zhǔn)的相關(guān)文獻進行詳細(xì)研讀,深入理解JTAG和IJTAG的技術(shù)原理、架構(gòu)特點以及應(yīng)用案例。案例分析法也是本研究的重要方法之一。通過分析實際的芯片設(shè)計和測試案例,深入研究JTAG和IJTAG測試架構(gòu)在不同場景下的應(yīng)用情況。如對某公司采用JTAG技術(shù)進行芯片測試的案例進行分析,了解其在測試覆蓋率、測試時間和成本等方面的實際表現(xiàn),總結(jié)成功經(jīng)驗和存在的問題,為后續(xù)的研究和設(shè)計提供實踐依據(jù)。實驗驗證法是本研究不可或缺的環(huán)節(jié)。搭建實驗平臺,對設(shè)計實現(xiàn)的JTAG和IJTAG測試架構(gòu)進行實驗驗證。通過實驗,獲取測試數(shù)據(jù),評估測試架構(gòu)的性能指標(biāo),如測試覆蓋率、測試時間、測試成本等。根據(jù)實驗結(jié)果,對測試架構(gòu)進行優(yōu)化和改進,確保其滿足實際應(yīng)用需求。例如,利用FPGA開發(fā)板搭建實驗平臺,對JTAG測試架構(gòu)的自動設(shè)計工具生成的測試架構(gòu)進行實驗驗證,分析測試結(jié)果,不斷優(yōu)化工具的算法和參數(shù)。本研究的技術(shù)路線遵循從理論分析到實踐驗證的邏輯順序。在理論分析階段,深入研究JTAG和IJTAG測試架構(gòu)的工作原理、標(biāo)準(zhǔn)規(guī)范以及相關(guān)技術(shù)。詳細(xì)剖析JTAG的邊界掃描原理,包括邊界掃描單元的結(jié)構(gòu)和工作機制,以及JTAG測試鏈路的建立和數(shù)據(jù)傳輸過程。對于IJTAG,重點研究其儀器接口和架構(gòu)設(shè)計,了解IJTAG如何實現(xiàn)對嵌入式儀器的訪問和管理,以及IJTAG與JTAG在架構(gòu)和功能上的差異。同時,分析當(dāng)前JTAG和IJTAG測試架構(gòu)在面對新型芯片結(jié)構(gòu)時存在的問題和挑戰(zhàn),為后續(xù)的設(shè)計優(yōu)化提供方向。在設(shè)計階段,針對JTAG測試架構(gòu),研究適應(yīng)新型芯片結(jié)構(gòu)的優(yōu)化方法。根據(jù)3D-IC和NoC等新型芯片結(jié)構(gòu)的特點,設(shè)計新的邊界掃描單元結(jié)構(gòu),提高測試覆蓋率;優(yōu)化測試鏈路布局,減少測試時間和成本。開發(fā)JTAG測試架構(gòu)自動設(shè)計工具,利用EDA技術(shù)和算法優(yōu)化,實現(xiàn)測試架構(gòu)的自動化生成。對于IJTAG測試架構(gòu),致力于解決IJTAG儀器的兼容性和互操作性問題。研究制定統(tǒng)一的標(biāo)準(zhǔn)和規(guī)范,確保不同廠家生產(chǎn)的IJTAG儀器能夠?qū)崿F(xiàn)無縫對接和協(xié)同工作。開發(fā)IJTAG測試架構(gòu)自動設(shè)計工具,根據(jù)芯片的嵌入式儀器配置和測試需求,自動生成高效的IJTAG測試架構(gòu),并對設(shè)計結(jié)果進行優(yōu)化和驗證。在實現(xiàn)階段,進行JTAG和IJTAG測試架構(gòu)的硬件實現(xiàn)和軟件實現(xiàn)。采用合適的硬件平臺,如FPGA或ASIC,實現(xiàn)測試架構(gòu)的硬件電路設(shè)計,優(yōu)化硬件電路設(shè)計,提高測試架構(gòu)的性能和穩(wěn)定性。開發(fā)相應(yīng)的測試軟件,實現(xiàn)對測試架構(gòu)的控制和管理,測試軟件具備測試向量生成、測試數(shù)據(jù)采集和分析等功能,能夠有效地支持芯片測試工作。最后,在驗證與優(yōu)化階段,對設(shè)計實現(xiàn)的JTAG和IJTAG測試架構(gòu)進行全面的性能評估。通過實驗測試,分析測試架構(gòu)的各項性能指標(biāo),評估其性能優(yōu)劣。根據(jù)評估結(jié)果,對測試架構(gòu)進行優(yōu)化和改進,進一步提高其性能和可靠性,確保研究成果能夠滿足實際應(yīng)用的需求。二、JTAG和IJTAG測試架構(gòu)基礎(chǔ)理論2.1JTAG測試架構(gòu)2.1.1JTAG的起源與發(fā)展歷程JTAG技術(shù)的起源可以追溯到20世紀(jì)80年代。當(dāng)時,隨著集成電路技術(shù)的飛速發(fā)展,芯片的引腳數(shù)量不斷增加,傳統(tǒng)的針床測試方法在面對新型芯片封裝時逐漸顯得力不從心。例如,表面貼裝技術(shù)(SMT)的出現(xiàn)使得芯片引腳變得更小且更密集,難以使用傳統(tǒng)的探針進行測試。多層印刷電路板的廣泛應(yīng)用也增加了測試的難度,內(nèi)部線路難以直接接觸和檢測。為了解決這些問題,1985年,歐洲的一些制造機構(gòu)成立了歐洲聯(lián)合測試行動組織(JETAG,JointEuropeanTestActionGroup),旨在研究集成電路的測試方法。后來,該組織與北美公司合作,于1986年更名為聯(lián)合測試行動組(JTAG,JointTestActionGroup),并著手制定相關(guān)的測試標(biāo)準(zhǔn)。1990年,JTAG正式由IEEE的1149.1-1990號文檔標(biāo)準(zhǔn)化,該標(biāo)準(zhǔn)定義了測試訪問端口(TAP,TestAccessPort)和邊界掃描結(jié)構(gòu),規(guī)定了進行邊界掃描所需要的硬件和軟件,為芯片測試提供了一種全新的方法。通過在芯片內(nèi)部定義TAP,利用邊界掃描技術(shù),能夠在不直接接觸芯片引腳的情況下,對芯片內(nèi)部的電路進行測試和調(diào)試,大大提高了測試的效率和準(zhǔn)確性。自1990年批準(zhǔn)后,IEEE分別于1993年和1995年對該標(biāo)準(zhǔn)作了補充,形成了現(xiàn)在使用的IEEE1149.1a-1993和IEEE1149.1b-1994,進一步完善了JTAG標(biāo)準(zhǔn),使其能夠更好地適應(yīng)不斷發(fā)展的芯片技術(shù)。隨著時間的推移,JTAG技術(shù)得到了廣泛的應(yīng)用和發(fā)展。從最初主要用于芯片的邊界掃描測試,逐漸擴展到系統(tǒng)級調(diào)試、在系統(tǒng)編程(ISP,In-SystemProgrammable)等領(lǐng)域。在現(xiàn)代硬件設(shè)計中,JTAG被用于調(diào)試CPU內(nèi)核、加載固件、測試和調(diào)試嵌入式系統(tǒng)以及進行高速串行總線測試等。例如,在嵌入式系統(tǒng)開發(fā)中,開發(fā)人員可以利用JTAG接口對芯片進行編程和調(diào)試,快速定位和解決系統(tǒng)中的問題,提高開發(fā)效率。許多FPGA和ASIC芯片都支持JTAG接口,方便用戶進行芯片的配置和測試。如今,JTAG技術(shù)已經(jīng)成為半導(dǎo)體測試領(lǐng)域不可或缺的一部分,隨著芯片技術(shù)的不斷進步,JTAG技術(shù)也在不斷演進,以滿足日益增長的芯片測試需求。2.1.2JTAG的工作原理JTAG的核心工作原理基于邊界掃描技術(shù),通過在芯片內(nèi)部定義測試訪問端口(TAP),實現(xiàn)對芯片內(nèi)部節(jié)點的測試和調(diào)試。其工作機制涉及多個關(guān)鍵組件的協(xié)同工作,包括TAP控制器、邊界掃描寄存器等。TAP控制器是JTAG的核心組件之一,它本質(zhì)上是一個狀態(tài)機,負(fù)責(zé)管理測試邏輯的狀態(tài)轉(zhuǎn)換。TAP控制器通過接收測試模式選擇信號(TMS)和測試時鐘信號(TCK)來控制狀態(tài)的轉(zhuǎn)換。TMS信號是一個單比特信號,用于設(shè)置JTAG口處于特定的測試模式,在TCK的上升沿被采樣,從而驅(qū)動TAP控制器狀態(tài)機的運轉(zhuǎn)。TCK則為TAP的操作提供獨立的時鐘信號,確保測試邏輯的時序準(zhǔn)確。TAP控制器共有16個狀態(tài),這些狀態(tài)構(gòu)成了一個復(fù)雜的狀態(tài)轉(zhuǎn)換圖。在系統(tǒng)上電后,TAP控制器首先進入Test-Logic-Reset狀態(tài),這是一個初始狀態(tài),確保測試邏輯處于已知的復(fù)位狀態(tài)。然后,它可以根據(jù)TMS信號的變化依次進入Run-Test/Idle、Select-DR-Scan、Select-IR-Scan、Capture-IR、Shift-IR、Exit1-IR、Update-IR等狀態(tài)。在這些狀態(tài)中,TAP控制器完成不同的操作,如加載指令、傳輸數(shù)據(jù)等。例如,在Capture-IR狀態(tài)下,一個特定的邏輯序列被加載到指令寄存器中;在Shift-IR狀態(tài)下,可以將一條特定的指令送到指令寄存器中;在Update-IR狀態(tài)下,剛才輸入到指令寄存器中的指令將用來更新指令寄存器,使其生效。邊界掃描寄存器是JTAG實現(xiàn)測試功能的另一個關(guān)鍵組件。它由一系列邊界掃描單元(BSC,Boundary-ScanCell)組成,這些單元分布在芯片的輸入輸出引腳附近。當(dāng)芯片處于調(diào)試狀態(tài)時,邊界掃描寄存器可以將芯片和外圍的輸入輸出隔離開來,實現(xiàn)對芯片輸入輸出信號的觀察和控制。對于芯片的輸入引腳,可以通過與之相連的邊界掃描寄存器單元把信號(數(shù)據(jù))加載到該引腳中去;對于芯片的輸出引腳,也可以通過與之相連的邊界掃描寄存器“捕獲”該引腳上的輸出信號。在正常運行狀態(tài)下,邊界掃描寄存器對芯片來說是透明的,不影響芯片的正常功能。而在測試狀態(tài)下,邊界掃描寄存器可以相互連接起來,在芯片的周圍形成一個邊界掃描鏈(Boundary-ScanChain)。這個掃描鏈可以串行地輸入和輸出數(shù)據(jù),通過TCK和TMS等控制信號,就可以方便地對處在調(diào)試狀態(tài)下的芯片進行測試和調(diào)試。例如,通過向邊界掃描鏈中輸入測試向量,然后讀取掃描鏈輸出的數(shù)據(jù),就可以檢測芯片引腳之間的連接是否正確,以及芯片內(nèi)部邏輯是否存在故障。除了TAP控制器和邊界掃描寄存器,JTAG還包括測試數(shù)據(jù)輸入信號(TDI,TestDataIn)和測試數(shù)據(jù)輸出信號(TDO,TestDataOut)。TDI用于將串行測試數(shù)據(jù)和指令移入芯片,數(shù)據(jù)在TCK的上升沿被寄存到器件內(nèi)部的移位寄存器中,按照設(shè)定好的路徑依次通過一系列寄存器。TDO則用于將數(shù)據(jù)從器件的內(nèi)部寄存器鏈中移出,在特定的指令下,將寄存器鏈的最終數(shù)據(jù)輸出到測試設(shè)備,以便進行分析和判斷。JTAG通過TAP控制器、邊界掃描寄存器以及相關(guān)信號的協(xié)同工作,實現(xiàn)了對芯片的高效測試和調(diào)試,為現(xiàn)代芯片測試提供了一種可靠的解決方案。2.1.3JTAG的架構(gòu)組成JTAG架構(gòu)主要由JTAG標(biāo)準(zhǔn)端口、JTAG狀態(tài)機控制器、JTAG寄存器以及JTAG指令解碼器等部分組成,各部分之間相互協(xié)作,共同實現(xiàn)JTAG的測試和調(diào)試功能。JTAG標(biāo)準(zhǔn)端口是JTAG架構(gòu)與外部測試設(shè)備進行通信的接口,通常包括以下幾個重要信號:測試時鐘(TCK,TestClock),為TAP控制器提供時鐘信號,控制測試邏輯的時序,它是一個獨立的時鐘,不依賴于芯片的主時鐘,頻率范圍可根據(jù)設(shè)計需求在幾十千赫茲到幾十兆赫茲之間變化;測試模式選擇(TMS,TestModeSelect),這是一個單比特信號,用于設(shè)置JTAG口處于特定的測試模式,在TCK的上升沿被采樣,通過TMS信號的不同取值組合,可以控制TAP控制器在16個狀態(tài)之間進行轉(zhuǎn)換;測試數(shù)據(jù)輸入(TDI,TestDataIn),用于將串行測試數(shù)據(jù)和指令移入芯片,數(shù)據(jù)按照時鐘信號的節(jié)拍依次進入芯片內(nèi)部的寄存器;測試數(shù)據(jù)輸出(TDO,TestDataOut),將芯片內(nèi)部寄存器鏈中的數(shù)據(jù)移出,輸出給外部測試設(shè)備進行分析;測試復(fù)位(TRST,TestLogicReset),這是一個可選信號,低電平有效,用于復(fù)位TAP控制器和測試邏輯,確保測試環(huán)境在不干擾設(shè)備正常工作模式下,被置于一個已知的狀態(tài)。在一些對測試可靠性和重復(fù)性要求較高的設(shè)計中,通常會實現(xiàn)TRST引腳。JTAG狀態(tài)機控制器是JTAG架構(gòu)的核心控制單元,它通過TMS和TCK信號來管理測試邏輯的狀態(tài)轉(zhuǎn)換。如前文所述,TAP控制器具有16個狀態(tài),這些狀態(tài)構(gòu)成了一個復(fù)雜的狀態(tài)機。在不同的狀態(tài)下,TAP控制器執(zhí)行不同的操作,如加載指令、傳輸數(shù)據(jù)、控制邊界掃描寄存器等。通過狀態(tài)機的有序運轉(zhuǎn),JTAG能夠?qū)崿F(xiàn)各種測試和調(diào)試功能。JTAG寄存器是JTAG架構(gòu)中存儲數(shù)據(jù)和指令的部分,包括指令寄存器和多個數(shù)據(jù)寄存器。指令寄存器用于存儲JTAG指令,這些指令指導(dǎo)測試流程的執(zhí)行,IEEE規(guī)范規(guī)定該寄存器至少為2bit,以實現(xiàn)對4種強制性指令的編碼。指令寄存器由移位寄存器和鎖存器組成,長度等于指令的長度,指令從TDI串行輸入,同時鎖存在鎖存器中。數(shù)據(jù)寄存器則包括邊界掃描寄存器、旁路寄存器、芯片標(biāo)識寄存器等。邊界掃描寄存器由芯片引腳上的所有邊界掃描單元組成,這些單元串聯(lián)起來形成邊界掃描鏈,用于捕獲和移位測試數(shù)據(jù),實現(xiàn)對芯片輸入輸出信號的觀察和控制。旁路寄存器是一個1位寄存器,用于旁路不需要測試的芯片,當(dāng)選擇旁路寄存器時,TDI僅經(jīng)過一級觸發(fā)器即可輸出至TDO,從而縮短測試時間。芯片標(biāo)識寄存器存儲芯片的標(biāo)識信息,如版本號、型號、制造廠商等,當(dāng)需要對該器件進行替換時可查詢該寄存器。JTAG指令解碼器負(fù)責(zé)解析指令寄存器中的指令,根據(jù)不同的指令類型,控制JTAG架構(gòu)中其他組件的工作。例如,當(dāng)解析到EXTEST指令時,指令解碼器會控制邊界掃描寄存器將測試向量串行移位至被測的連線或者邏輯電路,同時捕獲響應(yīng)數(shù)據(jù),并將測試結(jié)果串行移位輸出;當(dāng)解析到BYPASS指令時,指令解碼器會選擇旁路寄存器,決定該芯片是否被測試。JTAG架構(gòu)中的各個組成部分緊密配合,通過標(biāo)準(zhǔn)端口接收外部測試設(shè)備的控制信號和數(shù)據(jù),利用狀態(tài)機控制器管理測試邏輯的狀態(tài)轉(zhuǎn)換,通過寄存器存儲和傳輸數(shù)據(jù)與指令,最終實現(xiàn)對芯片的全面測試和調(diào)試。2.1.4JTAG的指令集及應(yīng)用JTAG標(biāo)準(zhǔn)定義了一系列指令,這些指令在芯片測試過程中發(fā)揮著關(guān)鍵作用,不同的指令用于實現(xiàn)不同的測試目的。以下是一些常用的JTAG指令及其應(yīng)用。EXTEST指令是JTAG指令集中的一個重要指令,主要用于測試板級芯片間的互連線。在實際應(yīng)用中,當(dāng)需要檢測電路板上不同芯片之間的連接是否正確時,就可以使用EXTEST指令。其測試過程如下:首先通過TMS信號運轉(zhuǎn)狀態(tài)機,依次進入Select-IR、Shift-IR和Run-Test/idle等狀態(tài),將EXTEST指令加載到指令寄存器中。然后,通過TDI輸入數(shù)據(jù)到芯片一的邊界掃描寄存器中,更新芯片一的輸出管腳信號。芯片二捕獲輸入管腳數(shù)據(jù),并將捕獲到的數(shù)據(jù)通過TDO輸出。通過分析輸出的數(shù)據(jù),就可以判斷芯片間的互連線是否存在開路、短路等故障。例如,在一塊包含多個芯片的電路板上,使用EXTEST指令可以快速檢測出芯片之間的連接是否正常,確保電路板的電氣連接可靠性。BYPASS指令用于旁路不需要測試的芯片,以縮短測試時間。當(dāng)電路板上存在一些已知功能正常的芯片,或者某些芯片在當(dāng)前測試階段不需要進行測試時,就可以使用BYPASS指令。在執(zhí)行BYPASS指令時,TDI和TDO之間只有一個bit的旁路寄存器,數(shù)據(jù)直接通過旁路寄存器從TDI傳輸?shù)絋DO,跳過了芯片內(nèi)部復(fù)雜的測試邏輯。這樣可以大大減少測試數(shù)據(jù)的傳輸量和測試時間,提高測試效率。例如,在一個包含多個相同功能芯片的系統(tǒng)中,已經(jīng)對其中一部分芯片進行了全面測試,確認(rèn)其功能正常,在后續(xù)的測試中就可以使用BYPASS指令跳過這些芯片,集中精力測試其他可能存在問題的芯片。SAMPLE指令用于獲取芯片輸入輸出管腳上的即時數(shù)據(jù)。在芯片正常運行過程中,通過執(zhí)行SAMPLE指令,可以對芯片輸入輸出管腳的數(shù)據(jù)進行采樣,從而了解芯片的實時工作狀態(tài)。這對于調(diào)試芯片和系統(tǒng)非常有用,可以幫助工程師快速定位芯片在運行過程中出現(xiàn)的問題。例如,在一個微處理器芯片中,使用SAMPLE指令可以實時獲取其數(shù)據(jù)總線和地址總線上的數(shù)據(jù),分析芯片的工作是否正常,是否存在數(shù)據(jù)傳輸錯誤等問題。PRELOAD指令用于控制芯片輸入輸出管腳。通過該指令,可以將已知的數(shù)據(jù)加載到邊界掃描寄存器中,從而控制芯片的輸入輸出管腳狀態(tài)。這在一些特定的測試場景中非常有用,例如在對芯片進行功能測試時,可以通過PRELOAD指令設(shè)置芯片的輸入管腳狀態(tài),然后觀察輸出管腳的響應(yīng),以驗證芯片的功能是否正確。IDCODE指令用于獲取芯片的ID信息,該信息由32位組成,由JEDEC組織分配給每一個廠家。通過讀取芯片的IDCODE,可以確定芯片的型號、制造廠商等信息,這對于芯片的識別、替換以及系統(tǒng)的維護都非常重要。例如,在進行芯片維修時,通過讀取IDCODE可以快速確定需要更換的芯片型號,提高維修效率。INTEST指令用于芯片內(nèi)部測試。通過邊界掃描技術(shù),該指令可以控制芯片內(nèi)部邏輯的輸入輸出,進行內(nèi)部的測試操作。例如,在對芯片內(nèi)部的邏輯電路進行測試時,使用INTEST指令可以將測試向量輸入到芯片內(nèi)部的邏輯單元中,然后檢測其輸出結(jié)果,判斷芯片內(nèi)部邏輯是否存在故障。在實際的芯片測試案例中,以一款包含多個功能模塊的復(fù)雜芯片為例,在測試過程中,首先使用IDCODE指令獲取芯片的身份信息,確認(rèn)芯片的型號和制造商是否正確。然后,利用EXTEST指令對芯片與外部電路的連接進行測試,確保引腳連接的正確性。接著,使用INTEST指令對芯片內(nèi)部的各個功能模塊進行測試,檢查模塊的功能是否正常。在測試過程中,如果發(fā)現(xiàn)某些模塊不需要進行測試,可以使用BYPASS指令將其旁路,提高測試效率。通過SAMPLE和PRELOAD指令,可以對芯片的輸入輸出管腳進行實時監(jiān)測和控制,進一步驗證芯片的功能。通過綜合運用JTAG的指令集,能夠全面、高效地對芯片進行測試和調(diào)試,確保芯片的質(zhì)量和性能。2.2IJTAG測試架構(gòu)2.2.1IJTAG的產(chǎn)生背景與發(fā)展IJTAG的產(chǎn)生源于現(xiàn)代芯片技術(shù)發(fā)展帶來的一系列挑戰(zhàn)。隨著集成電路技術(shù)的飛速進步,片上系統(tǒng)(SoC)中集成的IP核數(shù)量急劇增加,一個典型的SoC內(nèi)可能包含超過100個IP核。同時,芯片內(nèi)嵌入式儀器的數(shù)量和類型也在不斷增多,傳統(tǒng)的測試技術(shù)難以滿足對這些復(fù)雜芯片的測試、驗證和調(diào)試需求。在JTAG技術(shù)的發(fā)展過程中,雖然它在電路板測試和芯片邊界掃描測試方面取得了顯著成效,但隨著芯片內(nèi)部結(jié)構(gòu)的日益復(fù)雜,JTAG逐漸暴露出一些局限性。例如,片上IP數(shù)量的增加導(dǎo)致JTAG指令集不斷膨脹,指令解碼器變得極為復(fù)雜,難以管理和維護。此外,JTAG采用的廣播架構(gòu)在面對大量嵌入式儀器時,效率低下,無法實現(xiàn)對各個儀器的靈活訪問。為了解決這些問題,2005年,IEEE開始著手開發(fā)內(nèi)嵌控制器(IJTAG)標(biāo)準(zhǔn),即IEEE1687標(biāo)準(zhǔn)。其核心目標(biāo)是提供一種標(biāo)準(zhǔn)化的儀器接口和高效的架構(gòu),實現(xiàn)對嵌入式儀器的便捷訪問和管理。通過將測試和測量儀器嵌入到芯片中,IJTAG有助于實現(xiàn)從基于外部侵入式測試設(shè)備向內(nèi)部的、非侵入式軟件驅(qū)動測試方法的轉(zhuǎn)變。在IJTAG的發(fā)展歷程中,關(guān)鍵的技術(shù)突破之一是定義了元件連接語言(ICL,InstrumentConnectivityLanguage)和過程描述語言(PDL,ProceduralDescriptionLanguage)。ICL用于描述元件之間的連接關(guān)系,使得不同的嵌入式儀器能夠在統(tǒng)一的框架下進行連接和管理。PDL則用于描述對元件的操作,為測試流程的自動化執(zhí)行提供了有力支持。另一個重要的技術(shù)突破是引入了掃描互連塊(SIB,ScanInterconnectBlock)和邊界訪問點(BAP,BoundaryAccessPoint)等關(guān)鍵組件。SIB負(fù)責(zé)管理和連接不同的嵌入式儀器,形成高效的測試鏈路;BAP則提供了與外部測試設(shè)備的接口,實現(xiàn)了測試數(shù)據(jù)的輸入輸出。這些組件的引入,極大地提高了IJTAG測試架構(gòu)的靈活性和可擴展性。隨著時間的推移,IJTAG標(biāo)準(zhǔn)不斷完善和發(fā)展。IEEE1687標(biāo)準(zhǔn)工作組持續(xù)對標(biāo)準(zhǔn)進行修訂和更新,以適應(yīng)不斷變化的芯片技術(shù)發(fā)展需求。IJTAG技術(shù)在學(xué)術(shù)界和產(chǎn)業(yè)界得到了廣泛的研究和應(yīng)用,許多芯片設(shè)計公司開始在其產(chǎn)品中采用IJTAG技術(shù),提高芯片的測試和調(diào)試效率。2.2.2IJTAG的工作原理與創(chuàng)新點IJTAG在繼承JTAG邊界掃描技術(shù)的基礎(chǔ)上,進行了一系列創(chuàng)新,以實現(xiàn)對嵌入式儀器的高效訪問和管理。其工作原理主要圍繞著掃描互連塊(SIB)和邊界訪問點(BAP)等關(guān)鍵組件展開。SIB是IJTAG架構(gòu)中的核心組件之一,它類似于一個智能的連接樞紐,負(fù)責(zé)管理和連接不同的嵌入式儀器。SIB通過內(nèi)部的掃描鏈,將各個嵌入式儀器連接起來,形成一個有機的整體。在測試過程中,SIB能夠根據(jù)測試需求,靈活地選擇和切換不同的嵌入式儀器,實現(xiàn)對它們的單獨測試或聯(lián)合測試。例如,當(dāng)需要測試芯片內(nèi)部的一個特定IP核時,SIB可以將該IP核的測試鏈路與其他儀器隔離,確保測試的準(zhǔn)確性和獨立性。BAP則是IJTAG與外部測試設(shè)備進行通信的接口。它接收來自外部測試設(shè)備的測試命令和數(shù)據(jù),并將其傳遞給SIB和相關(guān)的嵌入式儀器。BAP還負(fù)責(zé)將測試結(jié)果從嵌入式儀器傳輸回外部測試設(shè)備,以便進行分析和判斷。BAP的設(shè)計充分考慮了與JTAG接口的兼容性,使得IJTAG能夠與現(xiàn)有的JTAG測試設(shè)備無縫對接,降低了測試成本。IJTAG的創(chuàng)新點之一在于其高效的儀器訪問機制。與JTAG的廣播架構(gòu)不同,IJTAG采用了一種基于層次化的結(jié)構(gòu),使得測試設(shè)備能夠直接訪問到每個嵌入式儀器,大大提高了測試效率。通過ICL語言對儀器連接關(guān)系的描述,IJTAG能夠快速定位和訪問到所需的儀器,減少了測試時間和數(shù)據(jù)傳輸量。IJTAG還引入了虛擬儀器的概念。通過軟件定義的方式,IJTAG可以將多個物理儀器組合成一個虛擬儀器,實現(xiàn)更復(fù)雜的測試功能。這種虛擬儀器的靈活性和可重構(gòu)性,使得IJTAG能夠適應(yīng)不同的測試需求,提高了測試的覆蓋率和準(zhǔn)確性。IJTAG在測試過程的自動化方面也有顯著創(chuàng)新。利用PDL語言,IJTAG可以描述復(fù)雜的測試過程和操作序列,實現(xiàn)測試流程的自動化執(zhí)行。測試人員只需編寫相應(yīng)的PDL腳本,就可以自動完成一系列的測試操作,減少了人工干預(yù),提高了測試的可靠性和一致性。IJTAG通過對關(guān)鍵組件的創(chuàng)新設(shè)計和引入新的概念和技術(shù),實現(xiàn)了對嵌入式儀器的高效訪問和管理,為現(xiàn)代芯片測試提供了一種更先進、更靈活的解決方案。2.2.3IJTAG的架構(gòu)組成與特點IJTAG架構(gòu)主要由掃描互連塊(SIB)、邊界訪問點(BAP)、嵌入式儀器以及元件連接語言(ICL)和過程描述語言(PDL)等部分組成,各部分相互協(xié)作,共同實現(xiàn)IJTAG的測試功能。SIB是IJTAG架構(gòu)的核心組件,它在整個測試架構(gòu)中起到了連接和管理嵌入式儀器的關(guān)鍵作用。SIB通常由多個掃描單元組成,這些掃描單元通過內(nèi)部的掃描鏈相互連接。每個掃描單元可以連接一個或多個嵌入式儀器,通過控制掃描鏈的移位操作,SIB能夠?qū)崿F(xiàn)對不同嵌入式儀器的選擇和訪問。SIB還具備數(shù)據(jù)緩存和轉(zhuǎn)發(fā)的功能,能夠在測試過程中臨時存儲和轉(zhuǎn)發(fā)測試數(shù)據(jù),提高測試效率。例如,在對多個嵌入式儀器進行聯(lián)合測試時,SIB可以將來自不同儀器的測試數(shù)據(jù)進行緩存和整理,然后一次性發(fā)送給外部測試設(shè)備,減少了數(shù)據(jù)傳輸?shù)拇螖?shù)和時間。BAP作為IJTAG與外部測試設(shè)備的接口,負(fù)責(zé)實現(xiàn)測試命令和數(shù)據(jù)的傳輸。BAP通常包括多個信號引腳,如測試時鐘(TCK)、測試模式選擇(TMS)、測試數(shù)據(jù)輸入(TDI)和測試數(shù)據(jù)輸出(TDO)等,這些信號引腳與JTAG接口的信號引腳類似,保證了IJTAG與現(xiàn)有JTAG測試設(shè)備的兼容性。BAP接收來自外部測試設(shè)備的測試命令和數(shù)據(jù),并將其轉(zhuǎn)換為適合IJTAG內(nèi)部傳輸?shù)母袷?,然后傳遞給SIB。BAP將SIB返回的測試結(jié)果轉(zhuǎn)換為外部測試設(shè)備能夠識別的格式,輸出給外部測試設(shè)備。BAP還具備一定的信號處理和錯誤檢測功能,能夠確保測試數(shù)據(jù)的準(zhǔn)確傳輸。嵌入式儀器是IJTAG架構(gòu)中用于實際測試和測量的組件,它們可以是各種類型的測試電路、傳感器或監(jiān)測模塊。這些嵌入式儀器被集成在芯片內(nèi)部,通過SIB與其他組件相連。嵌入式儀器的種類和功能根據(jù)芯片的設(shè)計需求而定,例如,在一些高性能處理器芯片中,可能會集成功耗監(jiān)測儀器、溫度傳感器、邏輯分析儀等嵌入式儀器,用于實時監(jiān)測芯片的運行狀態(tài)和性能指標(biāo)。嵌入式儀器的存在使得IJTAG能夠?qū)崿F(xiàn)對芯片內(nèi)部各種參數(shù)和功能的全面測試和驗證。ICL和PDL在IJTAG架構(gòu)中也起著不可或缺的作用。ICL用于描述IJTAG架構(gòu)中各個組件之間的連接關(guān)系和配置信息。通過ICL,設(shè)計人員可以清晰地定義嵌入式儀器與SIB、BAP之間的連接方式,以及各個儀器的屬性和功能。ICL文件通常采用文本格式,易于編寫和修改,為IJTAG架構(gòu)的設(shè)計和調(diào)試提供了便利。PDL則用于描述測試過程和操作序列。測試人員可以使用PDL編寫詳細(xì)的測試腳本,定義測試步驟、數(shù)據(jù)傳輸方式、儀器控制指令等。PDL腳本可以被IJTAG測試系統(tǒng)自動執(zhí)行,實現(xiàn)測試流程的自動化。與JTAG架構(gòu)相比,IJTAG架構(gòu)具有以下獨特特點。IJTAG架構(gòu)具有更高的靈活性。通過SIB的靈活連接和ICL對連接關(guān)系的描述,IJTAG能夠適應(yīng)不同類型和數(shù)量的嵌入式儀器,方便地進行測試架構(gòu)的擴展和重構(gòu)。而JTAG架構(gòu)在面對大量嵌入式儀器時,由于其廣播架構(gòu)的限制,靈活性較差。IJTAG架構(gòu)的測試效率更高。IJTAG采用的層次化結(jié)構(gòu)和高效的儀器訪問機制,使得測試設(shè)備能夠直接訪問到每個嵌入式儀器,減少了測試時間和數(shù)據(jù)傳輸量。相比之下,JTAG架構(gòu)在測試多個儀器時,需要通過廣播方式發(fā)送測試命令和數(shù)據(jù),效率較低。IJTAG架構(gòu)還具有更好的可維護性和可擴展性。通過ICL和PDL對架構(gòu)和測試過程的描述,IJTAG的設(shè)計和測試過程更加清晰和規(guī)范,便于維護和管理。同時,IJTAG架構(gòu)的開放性使得新的嵌入式儀器和測試功能能夠方便地添加到現(xiàn)有架構(gòu)中,具有良好的可擴展性。2.2.4IJTAG的語言體系(ICL和PDL)IJTAG的語言體系包括元件連接語言(ICL)和過程描述語言(PDL),這兩種語言在IJTAG測試架構(gòu)中發(fā)揮著重要作用,分別從不同層面支持測試架構(gòu)的設(shè)計、配置和測試過程的執(zhí)行。ICL主要用于描述IJTAG架構(gòu)中各個組件之間的連接關(guān)系和配置信息。它以一種結(jié)構(gòu)化的方式定義了嵌入式儀器、掃描互連塊(SIB)和邊界訪問點(BAP)等組件之間的連接方式,以及每個組件的屬性和功能。ICL文件通常采用文本格式,遵循一定的語法規(guī)則,便于編寫和閱讀。例如,在一個包含多個嵌入式儀器的芯片中,ICL文件可以詳細(xì)描述每個儀器與SIB的連接端口、儀器的類型和參數(shù)等信息。通過ICL,設(shè)計人員能夠清晰地表達測試架構(gòu)的設(shè)計意圖,為后續(xù)的測試工作提供準(zhǔn)確的配置依據(jù)。在實際應(yīng)用中,ICL語言的使用使得IJTAG測試架構(gòu)的設(shè)計更加靈活和可擴展。當(dāng)需要添加或更換嵌入式儀器時,只需修改ICL文件中的相關(guān)內(nèi)容,而無需對硬件電路進行大規(guī)模的改動。這大大降低了測試架構(gòu)的設(shè)計和維護成本,提高了設(shè)計的效率和可靠性。ICL還能夠方便地與其他設(shè)計工具和測試平臺進行集成,促進了IJTAG技術(shù)在不同項目中的應(yīng)用。PDL則專注于描述測試過程和操作序列。它為測試人員提供了一種編寫測試腳本的語言,通過PDL腳本,測試人員可以詳細(xì)定義測試步驟、數(shù)據(jù)傳輸方式、儀器控制指令等。PDL腳本可以被IJTAG測試系統(tǒng)自動執(zhí)行,實現(xiàn)測試流程的自動化。例如,一個典型的PDL腳本可能包含以下操作:初始化測試環(huán)境,設(shè)置測試參數(shù),選擇要測試的嵌入式儀器,發(fā)送測試向量,接收并分析測試結(jié)果等。PDL語言具有豐富的指令集和控制結(jié)構(gòu),能夠滿足各種復(fù)雜測試場景的需求。PDL語言的優(yōu)勢在于它能夠?qū)y試過程進行標(biāo)準(zhǔn)化和規(guī)范化。通過編寫PDL腳本,測試人員可以將測試步驟和操作固化下來,避免了人為因素對測試結(jié)果的影響,提高了測試的可靠性和一致性。PDL腳本還可以方便地進行復(fù)用和修改,對于不同的測試項目和需求,只需對腳本進行適當(dāng)?shù)恼{(diào)整,就可以快速生成新的測試方案。在IJTAG測試中,ICL和PDL相互配合,共同實現(xiàn)了測試架構(gòu)的自動設(shè)計與高效測試。ICL定義了測試架構(gòu)的硬件連接和配置信息,為PDL提供了操作的對象和環(huán)境;PDL則根據(jù)ICL定義的架構(gòu),執(zhí)行具體的測試操作,實現(xiàn)對嵌入式儀器的測試和驗證。例如,在對一個芯片進行測試時,首先根據(jù)芯片的設(shè)計需求,使用ICL語言編寫ICL文件,定義好嵌入式儀器與SIB、BAP之間的連接關(guān)系。然后,根據(jù)測試目的和要求,使用PDL語言編寫PDL腳本,詳細(xì)描述測試過程和操作步驟。在測試執(zhí)行階段,IJTAG測試系統(tǒng)讀取ICL文件和PDL腳本,自動配置測試環(huán)境,執(zhí)行測試操作,并將測試結(jié)果反饋給測試人員。2.3JTAG與IJTAG測試架構(gòu)對比分析2.3.1標(biāo)準(zhǔn)之間的差異性JTAG基于IEEE1149.1標(biāo)準(zhǔn),該標(biāo)準(zhǔn)于1990年被正式確立,最初的開發(fā)目標(biāo)是提供一種更有效的電路板測試方法,以驗證電路板上芯片之間的連通性。隨著時間的推移,IEEE分別于1993年和1995年對該標(biāo)準(zhǔn)作了補充,形成了現(xiàn)在使用的IEEE1149.1a-1993和IEEE1149.1b-1994。IEEE1149.1標(biāo)準(zhǔn)定義了測試訪問端口(TAP)和邊界掃描結(jié)構(gòu),規(guī)定了進行邊界掃描所需要的硬件和軟件,為電路板測試提供了一種標(biāo)準(zhǔn)化的解決方案。IJTAG則基于IEEE1687標(biāo)準(zhǔn),該標(biāo)準(zhǔn)于2005年開始開發(fā),當(dāng)時芯片內(nèi)嵌入式儀器的數(shù)量和類型急劇增加,傳統(tǒng)的測試技術(shù)難以滿足需求。IEEE1687標(biāo)準(zhǔn)的核心目標(biāo)是提供一種標(biāo)準(zhǔn)化的儀器接口和高效的架構(gòu),實現(xiàn)對嵌入式儀器的便捷訪問和管理。該標(biāo)準(zhǔn)定義了元件連接語言(ICL)和過程描述語言(PDL),用于描述元件之間的連接關(guān)系和對元件的操作。從應(yīng)用范圍來看,JTAG主要應(yīng)用于電路板測試和芯片邊界掃描測試。在電路板測試中,JTAG能夠檢測芯片之間的互連是否正確,以及芯片的輸入輸出引腳是否正常工作。在芯片邊界掃描測試中,通過邊界掃描寄存器,JTAG可以對芯片內(nèi)部的邏輯電路進行測試和調(diào)試。IJTAG則更側(cè)重于芯片內(nèi)部嵌入式儀器的測試和管理。隨著芯片集成度的不斷提高,芯片內(nèi)部包含了越來越多的嵌入式儀器,如溫度傳感器、邏輯分析儀等。IJTAG通過其獨特的架構(gòu)和語言體系,能夠?qū)崿F(xiàn)對這些嵌入式儀器的靈活訪問和控制,提高芯片內(nèi)部測試的效率和準(zhǔn)確性。在一個包含多個嵌入式儀器的芯片中,IJTAG可以通過SIB將這些儀器連接起來,形成一個有機的整體。通過ICL描述儀器之間的連接關(guān)系,利用PDL編寫測試腳本,實現(xiàn)對各個儀器的單獨測試或聯(lián)合測試。而JTAG在面對這種復(fù)雜的嵌入式儀器環(huán)境時,由于其廣播架構(gòu)的限制,難以實現(xiàn)對每個儀器的高效訪問和管理。2.3.2硬件架構(gòu)差異JTAG的硬件架構(gòu)主要由JTAG標(biāo)準(zhǔn)端口、JTAG狀態(tài)機控制器、JTAG寄存器以及JTAG指令解碼器等部分組成。JTAG標(biāo)準(zhǔn)端口通常包括測試時鐘(TCK)、測試模式選擇(TMS)、測試數(shù)據(jù)輸入(TDI)、測試數(shù)據(jù)輸出(TDO)和測試復(fù)位(TRST,可選)等信號引腳。這些引腳為JTAG架構(gòu)與外部測試設(shè)備提供了通信接口。JTAG狀態(tài)機控制器是一個具有16個狀態(tài)的狀態(tài)機,通過TMS和TCK信號來管理測試邏輯的狀態(tài)轉(zhuǎn)換。在不同的狀態(tài)下,TAP控制器執(zhí)行不同的操作,如加載指令、傳輸數(shù)據(jù)、控制邊界掃描寄存器等。JTAG寄存器包括指令寄存器和多個數(shù)據(jù)寄存器,指令寄存器用于存儲JTAG指令,數(shù)據(jù)寄存器則包括邊界掃描寄存器、旁路寄存器、芯片標(biāo)識寄存器等,用于存儲和傳輸測試數(shù)據(jù)。JTAG指令解碼器負(fù)責(zé)解析指令寄存器中的指令,根據(jù)不同的指令類型,控制JTAG架構(gòu)中其他組件的工作。IJTAG的硬件架構(gòu)主要由掃描互連塊(SIB)、邊界訪問點(BAP)、嵌入式儀器等部分組成。SIB是IJTAG架構(gòu)的核心組件,它由多個掃描單元組成,通過內(nèi)部的掃描鏈將各個嵌入式儀器連接起來。SIB能夠根據(jù)測試需求,靈活地選擇和切換不同的嵌入式儀器,實現(xiàn)對它們的單獨測試或聯(lián)合測試。例如,在測試一個包含多個IP核的芯片時,SIB可以將不同的IP核的測試鏈路進行隔離和選擇,確保測試的準(zhǔn)確性和獨立性。BAP是IJTAG與外部測試設(shè)備進行通信的接口,它接收來自外部測試設(shè)備的測試命令和數(shù)據(jù),并將其傳遞給SIB和相關(guān)的嵌入式儀器。BAP還負(fù)責(zé)將測試結(jié)果從嵌入式儀器傳輸回外部測試設(shè)備,以便進行分析和判斷。BAP的信號引腳與JTAG接口的信號引腳類似,保證了IJTAG與現(xiàn)有JTAG測試設(shè)備的兼容性。嵌入式儀器是IJTAG架構(gòu)中用于實際測試和測量的組件,它們被集成在芯片內(nèi)部,通過SIB與其他組件相連。在連接方式上,JTAG采用的是鏈?zhǔn)竭B接,多個芯片通過JTAG接口串聯(lián)在一起,形成一個JTAG鏈。在JTAG鏈中,數(shù)據(jù)從TDI輸入,依次通過各個芯片的邊界掃描寄存器,最后從TDO輸出。這種連接方式在測試多個芯片時,數(shù)據(jù)傳輸需要依次經(jīng)過每個芯片,效率較低。IJTAG則采用了一種層次化的連接方式,通過SIB將不同的嵌入式儀器連接起來,形成一個層次分明的測試架構(gòu)。在這種架構(gòu)下,測試設(shè)備可以直接訪問到每個嵌入式儀器,減少了數(shù)據(jù)傳輸?shù)穆窂胶蜁r間,提高了測試效率。在信號傳輸方面,JTAG主要通過TDI和TDO進行串行數(shù)據(jù)傳輸,數(shù)據(jù)傳輸?shù)乃俣仁艿綍r鐘頻率和鏈路長度的限制。IJTAG在繼承JTAG信號傳輸方式的基礎(chǔ)上,通過SIB的優(yōu)化設(shè)計,提高了數(shù)據(jù)傳輸?shù)男屎挽`活性。SIB可以對數(shù)據(jù)進行緩存和轉(zhuǎn)發(fā),減少了數(shù)據(jù)傳輸?shù)难舆t。2.3.3應(yīng)用場景差異在芯片測試方面,JTAG適用于對芯片邊界掃描測試和基本功能測試。通過邊界掃描寄存器,JTAG可以對芯片的輸入輸出引腳進行測試,檢測引腳之間的連接是否正確,以及引腳的電氣特性是否正常。在對一個微控制器芯片進行測試時,JTAG可以通過邊界掃描寄存器,將測試向量輸入到芯片的輸入引腳,然后讀取輸出引腳的響應(yīng),判斷芯片的功能是否正常。IJTAG則更適合對芯片內(nèi)部嵌入式儀器的測試。隨著芯片集成度的不斷提高,芯片內(nèi)部包含了大量的嵌入式儀器,如溫度傳感器、功耗監(jiān)測器等。IJTAG通過其獨特的架構(gòu)和語言體系,能夠?qū)崿F(xiàn)對這些嵌入式儀器的靈活訪問和控制,準(zhǔn)確地獲取儀器的測試數(shù)據(jù),評估芯片的內(nèi)部性能。在對一個高性能處理器芯片進行測試時,IJTAG可以通過SIB連接各個嵌入式儀器,利用ICL和PDL實現(xiàn)對儀器的配置和測試,獲取芯片的溫度、功耗等參數(shù),判斷芯片的工作狀態(tài)是否正常。在電路板測試場景中,JTAG是一種常用的測試技術(shù),主要用于檢測電路板上芯片之間的互連是否正確。通過EXTEST指令,JTAG可以將測試向量輸入到電路板上的芯片中,然后讀取其他芯片的響應(yīng),判斷芯片之間的連線是否存在開路、短路等故障。在一塊包含多個芯片的電路板上,使用JTAG可以快速檢測出芯片之間的連接是否正常,確保電路板的電氣連接可靠性。IJTAG在電路板測試中也有應(yīng)用,但相對較少。由于IJTAG主要關(guān)注芯片內(nèi)部的測試,對于電路板級的互連測試,其優(yōu)勢不如JTAG明顯。在一些特殊情況下,如電路板上的芯片內(nèi)部包含了大量的嵌入式儀器,需要同時對芯片內(nèi)部儀器和電路板互連進行測試時,IJTAG可以發(fā)揮其優(yōu)勢,通過與JTAG的結(jié)合,實現(xiàn)對電路板的全面測試。在系統(tǒng)調(diào)試方面,JTAG常用于對嵌入式系統(tǒng)的調(diào)試。開發(fā)人員可以利用JTAG接口,對芯片進行編程和調(diào)試,快速定位和解決系統(tǒng)中的問題。在嵌入式系統(tǒng)開發(fā)過程中,開發(fā)人員可以通過JTAG接口將調(diào)試工具連接到芯片上,實時監(jiān)測芯片的運行狀態(tài),單步執(zhí)行程序,查看寄存器和內(nèi)存中的數(shù)據(jù),從而快速定位和解決系統(tǒng)中的問題,提高開發(fā)效率。IJTAG在系統(tǒng)調(diào)試中則更側(cè)重于對復(fù)雜系統(tǒng)中多個芯片和嵌入式儀器的協(xié)同調(diào)試。在一個包含多個芯片和大量嵌入式儀器的復(fù)雜系統(tǒng)中,IJTAG可以通過其層次化的架構(gòu)和靈活的儀器訪問機制,實現(xiàn)對各個芯片和儀器的統(tǒng)一管理和調(diào)試。通過ICL和PDL,開發(fā)人員可以編寫復(fù)雜的測試腳本,對系統(tǒng)進行全面的測試和調(diào)試,確保系統(tǒng)的穩(wěn)定性和可靠性。在一個大型的片上系統(tǒng)(SoC)中,IJTAG可以將各個芯片和嵌入式儀器連接起來,形成一個統(tǒng)一的測試和調(diào)試環(huán)境,開發(fā)人員可以通過IJTAG接口,對整個系統(tǒng)進行全面的調(diào)試和優(yōu)化。三、JTAG和IJTAG測試架構(gòu)自動設(shè)計方法3.1自動設(shè)計的需求分析與目標(biāo)設(shè)定3.1.1自動設(shè)計的需求分析在現(xiàn)代芯片設(shè)計流程中,芯片測試是確保芯片質(zhì)量和性能的關(guān)鍵環(huán)節(jié),而JTAG和IJTAG測試架構(gòu)作為重要的測試手段,其設(shè)計的效率和準(zhǔn)確性直接影響著芯片的研發(fā)周期和生產(chǎn)成本。從效率需求來看,隨著芯片集成度的不斷提高,設(shè)計規(guī)模呈指數(shù)級增長。例如,一款先進的片上系統(tǒng)(SoC)可能包含數(shù)十億個晶體管和數(shù)百個功能模塊,傳統(tǒng)的手動設(shè)計JTAG和IJTAG測試架構(gòu)的方式需要耗費大量的時間和人力。在手動設(shè)計JTAG測試架構(gòu)時,工程師需要逐個確定邊界掃描單元的位置和連接方式,對于大規(guī)模芯片,這一過程可能需要數(shù)周甚至數(shù)月的時間。而自動設(shè)計能夠通過算法和工具快速生成測試架構(gòu),大大縮短設(shè)計周期。根據(jù)相關(guān)研究和實際案例,采用自動設(shè)計工具后,JTAG和IJTAG測試架構(gòu)的設(shè)計時間能夠縮短50%以上,顯著提高了芯片測試的準(zhǔn)備效率,使芯片能夠更快地進入測試和驗證階段。準(zhǔn)確性也是自動設(shè)計的重要需求。手動設(shè)計過程中,由于人為因素的影響,容易出現(xiàn)錯誤,如邊界掃描單元連接錯誤、測試鏈路布局不合理等。這些錯誤可能導(dǎo)致測試覆蓋率降低,無法準(zhǔn)確檢測出芯片中的故障。自動設(shè)計工具通過嚴(yán)格的算法和規(guī)則檢查,能夠避免人為錯誤,確保測試架構(gòu)的準(zhǔn)確性。以IJTAG測試架構(gòu)的自動設(shè)計為例,工具可以根據(jù)ICL和PDL語言的規(guī)范,自動生成正確的儀器連接關(guān)系和測試流程,保證測試過程的準(zhǔn)確性和可靠性。隨著芯片技術(shù)的不斷發(fā)展,新型芯片結(jié)構(gòu)不斷涌現(xiàn),如三維集成電路(3D-IC)和片上網(wǎng)絡(luò)(NoC)等。這些新型芯片結(jié)構(gòu)對JTAG和IJTAG測試架構(gòu)的設(shè)計提出了新的挑戰(zhàn),需要自動設(shè)計工具能夠適應(yīng)不同的芯片結(jié)構(gòu)和測試需求。在3D-IC中,由于芯片堆疊層數(shù)增加,信號傳輸路徑復(fù)雜,自動設(shè)計工具需要能夠優(yōu)化測試鏈路的布局,確保信號的穩(wěn)定傳輸和高效測試。芯片設(shè)計過程中通常需要遵循一系列標(biāo)準(zhǔn)和規(guī)范,如IEEE1149.1和IEEE1687標(biāo)準(zhǔn)等。自動設(shè)計工具應(yīng)能夠確保生成的JTAG和IJTAG測試架構(gòu)符合這些標(biāo)準(zhǔn)和規(guī)范,避免因設(shè)計不符合標(biāo)準(zhǔn)而導(dǎo)致的兼容性問題和測試失敗。在實際的芯片設(shè)計項目中,不同的芯片設(shè)計團隊可能有不同的設(shè)計習(xí)慣和流程。自動設(shè)計工具需要具備良好的可定制性,能夠根據(jù)團隊的需求進行靈活配置,適應(yīng)不同的設(shè)計環(huán)境。3.1.2自動設(shè)計的目標(biāo)設(shè)定縮短設(shè)計周期是自動設(shè)計的首要目標(biāo)之一。通過自動化的設(shè)計流程,利用高效的算法和工具,減少人工干預(yù),能夠顯著縮短JTAG和IJTAG測試架構(gòu)的設(shè)計時間。以一款包含多個IP核的復(fù)雜芯片為例,傳統(tǒng)手動設(shè)計可能需要數(shù)周時間,而采用自動設(shè)計工具后,設(shè)計周期可縮短至數(shù)天甚至更短。這使得芯片能夠更快地進入測試階段,加快芯片的研發(fā)進程,滿足市場對芯片快速上市的需求。提高測試覆蓋率是自動設(shè)計的另一個重要目標(biāo)。自動設(shè)計工具能夠通過優(yōu)化測試架構(gòu),確保測試向量能夠覆蓋芯片的各個功能模塊和信號路徑,從而提高測試的全面性和準(zhǔn)確性。在JTAG測試架構(gòu)中,自動設(shè)計工具可以根據(jù)芯片的結(jié)構(gòu)和功能特點,智能地選擇邊界掃描單元的位置和連接方式,提高對芯片內(nèi)部邏輯的測試覆蓋率。對于IJTAG測試架構(gòu),自動設(shè)計工具可以根據(jù)嵌入式儀器的分布和測試需求,優(yōu)化掃描互連塊的連接,實現(xiàn)對各個儀器的有效測試,提高芯片內(nèi)部測試的覆蓋率。降低設(shè)計成本也是自動設(shè)計的關(guān)鍵目標(biāo)之一。自動設(shè)計減少了人工設(shè)計所需的人力和時間成本,同時通過提高測試覆蓋率,能夠更早地發(fā)現(xiàn)芯片中的故障,減少因芯片故障導(dǎo)致的生產(chǎn)損失。在大規(guī)模芯片生產(chǎn)中,一個芯片故障可能導(dǎo)致整個批次的產(chǎn)品報廢,而通過自動設(shè)計提高測試覆蓋率,能夠有效降低這種風(fēng)險,降低生產(chǎn)成本。提高測試架構(gòu)的可維護性和可擴展性是自動設(shè)計的長期目標(biāo)。隨著芯片技術(shù)的不斷發(fā)展和芯片功能的不斷升級,測試架構(gòu)需要具備良好的可維護性和可擴展性,以便能夠適應(yīng)未來的變化。自動設(shè)計工具通過采用標(biāo)準(zhǔn)化的設(shè)計流程和模塊化的設(shè)計方法,使得測試架構(gòu)易于維護和擴展。當(dāng)芯片需要增加新的功能模塊或嵌入式儀器時,自動設(shè)計工具能夠快速調(diào)整測試架構(gòu),滿足新的測試需求。三、JTAG和IJTAG測試架構(gòu)自動設(shè)計方法3.2基于算法的自動設(shè)計策略3.2.1遺傳算法在JTAG和IJTAG測試架構(gòu)設(shè)計中的應(yīng)用遺傳算法是一種模擬自然界生物進化過程的優(yōu)化算法,其核心思想源于達爾文的進化論,通過模擬遺傳、變異、選擇等生物進化過程,在解空間中搜索最優(yōu)解。該算法的基本流程如下:首先,初始化一個包含多個個體的種群,每個個體代表問題的一個潛在解,在JTAG和IJTAG測試架構(gòu)設(shè)計中,個體可以表示為不同的測試架構(gòu)方案。接著,計算每個個體的適應(yīng)度值,適應(yīng)度函數(shù)用于評估個體在解決問題時的優(yōu)劣程度。在JTAG測試架構(gòu)設(shè)計中,適應(yīng)度函數(shù)可以根據(jù)測試覆蓋率、測試時間、硬件資源消耗等指標(biāo)來定義。例如,測試覆蓋率越高、測試時間越短、硬件資源消耗越少,個體的適應(yīng)度值就越高。在一個包含多個芯片的JTAG測試架構(gòu)設(shè)計中,適應(yīng)度函數(shù)可以綜合考慮每個芯片的測試覆蓋率以及整個測試鏈路的傳輸延遲,以評估不同測試架構(gòu)方案的優(yōu)劣。然后,基于適應(yīng)度值進行選擇操作,選擇適應(yīng)度較高的個體作為父代,以增加優(yōu)良基因在種群中的傳播。常見的選擇方法包括輪盤賭選擇、錦標(biāo)賽選擇等。輪盤賭選擇方法根據(jù)個體的適應(yīng)度值占總適應(yīng)度值的比例來確定每個個體被選中的概率,適應(yīng)度值越高的個體被選中的概率越大。對選中的父代個體進行交叉和變異操作,產(chǎn)生新的子代個體。交叉操作模擬生物的交配過程,將兩個父代個體的部分基因進行交換,生成新的個體。變異操作則是對個體的基因進行隨機改變,以增加種群的多樣性,避免算法陷入局部最優(yōu)解。在JTAG測試架構(gòu)設(shè)計中,交叉操作可以將不同測試架構(gòu)方案中的邊界掃描鏈布局進行交換,變異操作可以隨機調(diào)整邊界掃描單元的連接方式。重復(fù)上述計算適應(yīng)度、選擇、交叉和變異的過程,直到滿足終止條件,如達到預(yù)定的迭代次數(shù)或適應(yīng)度值不再變化等。此時,種群中適應(yīng)度最高的個體即為問題的近似最優(yōu)解。在JTAG測試架構(gòu)設(shè)計中,遺傳算法可用于優(yōu)化掃描鏈布局。傳統(tǒng)的JTAG掃描鏈布局往往采用簡單的順序連接方式,這種方式在面對大規(guī)模芯片時,可能導(dǎo)致測試時間過長、測試覆蓋率不足等問題。利用遺傳算法,可以根據(jù)芯片的結(jié)構(gòu)和功能特點,自動搜索最優(yōu)的掃描鏈布局方案。通過將掃描鏈布局表示為染色體,以測試覆蓋率和測試時間為適應(yīng)度函數(shù),遺傳算法能夠在眾多可能的布局方案中,找到使測試覆蓋率最大化且測試時間最小化的布局。在IJTAG測試架構(gòu)設(shè)計中,遺傳算法可用于指令集生成。IJTAG的指令集設(shè)計需要考慮多種因素,如嵌入式儀器的類型、數(shù)量、測試需求等。遺傳算法可以通過對不同指令組合的模擬和評估,生成最適合IJTAG測試架構(gòu)的指令集。將指令集表示為染色體,以指令集的執(zhí)行效率、對嵌入式儀器的支持程度等為適應(yīng)度函數(shù),遺傳算法能夠不斷優(yōu)化指令集,提高IJTAG測試架構(gòu)的測試效率和準(zhǔn)確性。3.2.2模擬退火算法在測試架構(gòu)設(shè)計中的應(yīng)用模擬退火算法是一種基于蒙特卡洛思想設(shè)計的近似求解最優(yōu)化問題的方法,其靈感來源于物理退火過程。在物理退火中,將固體加溫至充分高,再讓其徐徐冷卻,加溫時,固體內(nèi)部粒子隨溫升變?yōu)闊o序狀,內(nèi)能增大,而徐徐冷卻時粒子漸趨有序,在每個溫度都達到平衡態(tài),最后在常溫時達到基態(tài),內(nèi)能減為最小。模擬退火算法模擬了這一過程,在解空間中進行搜索,以尋找最優(yōu)解。該算法的基本原理如下:首先,初始化一個初始解和一個較高的初始溫度。初始解可以是一個隨機生成的測試架構(gòu)方案,初始溫度則決定了算法在搜索過程中接受較差解的概率。在每一個溫度下,算法從當(dāng)前解出發(fā),通過一定的鄰域搜索策略生成一個新解。計算新解與當(dāng)前解的目標(biāo)函數(shù)值之差。如果新解的目標(biāo)函數(shù)值優(yōu)于當(dāng)前解(即差值小于0),則接受新解作為當(dāng)前解;如果新解的目標(biāo)函數(shù)值比當(dāng)前解差(即差值大于0),則以一定的概率接受新解,這個概率與溫度和差值有關(guān),通常使用Metropolis準(zhǔn)則來計算接受概率,即接受概率為,其中為當(dāng)前溫度,為目標(biāo)函數(shù)值之差。隨著搜索的進行,逐漸降低溫度,降低的方式通常采用一定的降溫策略,如指數(shù)降溫、線性降溫等。在低溫下,算法更傾向于接受較好的解,從而使搜索逐漸收斂到最優(yōu)解。當(dāng)溫度降低到一定程度,或者滿足其他終止條件時,算法停止,此時得到的當(dāng)前解即為近似最優(yōu)解。在JTAG和IJTAG測試架構(gòu)設(shè)計中,模擬退火算法可用于解決復(fù)雜問題,如測試鏈路的優(yōu)化。在JTAG測試架構(gòu)中,測試鏈路的布局會影響測試效率和測試覆蓋率。傳統(tǒng)的測試鏈路布局方法可能無法充分考慮芯片的復(fù)雜結(jié)構(gòu)和信號傳輸特性。模擬退火算法可以通過不斷調(diào)整測試鏈路的連接方式,尋找最優(yōu)的布局方案。在一個包含多個功能模塊的芯片中,模擬退火算法可以從初始的測試鏈路布局開始,隨機改變鏈路的連接方式,計算每次改變后的測試覆蓋率和測試時間等指標(biāo),根據(jù)Metropolis準(zhǔn)則決定是否接受新的布局。隨著溫度的降低,算法逐漸收斂到一個較優(yōu)的測試鏈路布局,提高測試效率和測試覆蓋率。在IJTAG測試架構(gòu)中,模擬退火算法可用于優(yōu)化掃描互連塊(SIB)的連接。SIB的連接方式直接影響到嵌入式儀器的訪問效率和測試性能。模擬退火算法可以通過對SIB連接的不斷調(diào)整,尋找最優(yōu)的連接方案。將SIB的連接方式表示為解空間中的一個點,以嵌入式儀器的訪問效率和測試時間為目標(biāo)函數(shù),模擬退火算法在解空間中進行搜索。在高溫時,算法可以接受較差的連接方案,以擴大搜索范圍;隨著溫度降低,算法逐漸接受更優(yōu)的連接方案,最終得到一個優(yōu)化的SIB連接方式,提高IJTAG測試架構(gòu)的性能。3.3基于工具的自動設(shè)計流程3.3.1常用的JTAG和IJTAG測試架構(gòu)設(shè)計工具介紹在JTAG和IJTAG測試架構(gòu)的自動設(shè)計領(lǐng)域,有多種專業(yè)工具可供使用,這些工具各自具備獨特的功能、特點和適用場景。Tessent是西門子EDA公司推出的一款功能強大的測試解決方案工具,在JTAG和IJTAG測試架構(gòu)設(shè)計中應(yīng)用廣泛。Tessent基于IEEE1149.1標(biāo)準(zhǔn)(即JTAG標(biāo)準(zhǔn))和IEEE1687標(biāo)準(zhǔn)(即IJTAG標(biāo)準(zhǔn))開發(fā),為工程師提供了全面的測試功能。在JTAG測試架構(gòu)設(shè)計方面,Tessent支持邊界掃描測試,能夠自動生成邊界掃描鏈,優(yōu)化測試鏈路布局,提高測試覆蓋率。通過其強大的算法,Tessent可以根據(jù)芯片的結(jié)構(gòu)和功能特點,智能地選擇邊界掃描單元的位置和連接方式,確保測試向量能夠覆蓋芯片的各個關(guān)鍵節(jié)點。在一個包含多個功能模塊的芯片中,Tessent可以分析模塊之間的信號連接關(guān)系,自動生成最優(yōu)的邊界掃描鏈,減少測試時間和成本。在IJTAG測試架構(gòu)設(shè)計方面,Tessent支持基于IJTAG的嵌入式儀器測試。它能夠根據(jù)芯片中嵌入式儀器的配置和測試需求,自動生成高效的IJTAG測試架構(gòu)。Tessent提供了豐富的元件連接語言(ICL)和過程描述語言(PDL)支持,工程師可以通過編寫ICL文件定義儀器之間的連接關(guān)系,利用PDL編寫測試腳本,實現(xiàn)對嵌入式儀器的靈活訪問和控制。Tessent還具備強大的測試數(shù)據(jù)分析功能,能夠?qū)y試結(jié)果進行深入分析,幫助工程師快速定位和解決測試中出現(xiàn)的問題。XJTAG是由劍橋大學(xué)畢業(yè)生設(shè)計開發(fā)的一套系統(tǒng),包括JTAG調(diào)試器硬件和上位機軟件。其上位機軟件功能強大,在JTAG測試架構(gòu)設(shè)計中具有獨特的優(yōu)勢。XJTAG支持最多4個TAP接口,TCK最高可達166MHz,能夠滿足高速測試的需求。JTAG信號電壓可在1.1-3.3v之間以0.1v步進進行配置,適應(yīng)不同芯片的電壓要求。所有IO管腳都內(nèi)置了電壓測量和頻率測量功能,方便工程師對測試信號進行實時監(jiān)測和分析。XJTAG還提供了開放的DLLAPI接口,便于用戶進行二次開發(fā)和定制化應(yīng)用。在實際應(yīng)用中,對于一些對測試靈活性和擴展性要求較高的項目,開發(fā)人員可以利用XJTAG的API接口,將其與其他測試工具或自動化測試系統(tǒng)進行集成,實現(xiàn)更復(fù)雜的測試功能。例如,在一個大型的芯片測試項目中,開發(fā)人員可以通過XJTAG的API接口,將其與自動化測試設(shè)備(ATE)進行集成,實現(xiàn)對多個芯片的并行測試,提高測試效率。TopJTAG是一款小巧簡潔的邊界掃描測試軟件,適用于簡單的JTAG測試場景。它可以基于常用的仿真器,如J-Link、USB-Blaster等,配合TopJTAGProbe軟件來實現(xiàn)邊界掃描測試。TopJTAG界面簡潔,使用簡單,對于初學(xué)者或只需要進行簡單邊界掃描測試的用戶來說,是一個不錯的選擇。在實際使用中,用戶可以通過TopJTAG輕松實現(xiàn)IO的讀取、控制、波形的顯示、脈沖的計數(shù)等基本功能。例如,在對一個小型芯片進行簡單的引腳連接測試時,用戶可以使用TopJTAG快速搭建測試環(huán)境,讀取芯片引腳的狀態(tài),判斷引腳連接是否正確。TopJTAG還提供了對芯片外置的CFIFlash進行編程和讀取的功能,方便用戶對芯片的存儲進行測試和操作。3.3.2工具輔助下的自動設(shè)計流程詳解以Tessent工具為例,其自動設(shè)計JTAG和IJTAG測試架構(gòu)的流程涵蓋多個關(guān)鍵步驟,從測試需求的輸入到最終測試架構(gòu)的生成,每個環(huán)節(jié)都緊密相連,確保設(shè)計的高效性和準(zhǔn)確性。在測試需求輸入階段,工程師首先要明確芯片的功能和結(jié)構(gòu)信息。對于JTAG測試架構(gòu)設(shè)計,需要了解芯片的引腳數(shù)量、功能以及芯片內(nèi)部邏輯電路的布局等信息。在設(shè)計一個微控制器芯片的JTAG測試架構(gòu)時,工程師要確定芯片的輸入輸出引腳、控制引腳等,以及芯片內(nèi)部各個功能模塊的連接關(guān)系。對于IJTAG測試架構(gòu)設(shè)計,除了芯片的基本信息外,還需要詳細(xì)了解芯片內(nèi)嵌入式儀器的類型、數(shù)量、位置以及它們之間的連接關(guān)系。在一個包含多個嵌入式儀器的芯片中,要明確每個儀器的功能、接口類型以及與其他儀器的通信方式。工程師還需根據(jù)芯片的測試要求,確定測試目標(biāo)和約束條件。測試目標(biāo)可能包括測試覆蓋率、測試時間、測試成本等。約束條件則可能涉及硬件資源限制,如芯片的引腳數(shù)量、內(nèi)部寄存器資源等。在某些芯片設(shè)計中,由于引腳資源有限,JTAG測試架構(gòu)設(shè)計時要考慮如何在有限的引腳資源下實現(xiàn)高效的測試。在Tessent工具中,這些測試需求和信息通過特定的文件格式或用戶界面輸入到工具中。Tessent支持多種輸入方式,如通過讀取設(shè)計文件(如Verilog、VHDL文件)獲取芯片的結(jié)構(gòu)信息,通過用戶自定義的配置文件輸入測試目標(biāo)和約束條件。測試架構(gòu)生成階段,Tessent會根據(jù)輸入的測試需求和信息,運用其內(nèi)置的算法和規(guī)則,自動生成初步的測試架構(gòu)。在JTAG測試架構(gòu)生成過程中,Tessent首先會根據(jù)芯片的引腳和邏輯電路信息,確定邊界掃描單元的位置和連接方式。它會考慮如何優(yōu)化邊界掃描鏈的布局,以減少測試時間和提高測試覆蓋率。Tessent可能會采用貪心算法等策略,將緊密相關(guān)的引腳和邏輯電路分配到同一掃描鏈中,減少掃描鏈的長度和信號傳輸延遲。對于IJTAG測試架構(gòu),Tessent會根據(jù)嵌入式儀器的信息,生成掃描互連塊(SIB)和邊界訪問點(BAP)的連接方案。它會利用ICL語言自動生成描述儀器連接關(guān)系的文件,確定每個儀器與SIB的連接端口和通信協(xié)議。Tessent還會根據(jù)測試需求,生成相應(yīng)的PDL腳本,定義測試過程和操作序列。在生成初步測試架構(gòu)后,Tessent會對其進行優(yōu)化。對于JTAG測試架構(gòu),優(yōu)化過程可能包括掃描鏈的合并、分割和排序等操作,以進一步提高測試效率和覆蓋率。在一個包含多個掃描鏈的JTAG測試架構(gòu)中,Tessent會分析掃描鏈之間的信號相關(guān)性,將一些可以合并的掃描鏈進行合并,減少掃描鏈的數(shù)量,從而減少測試時間。對于IJTAG測試架構(gòu),優(yōu)化過程可能包括SIB連接的調(diào)整、測試腳本的優(yōu)化等。Tessent會根據(jù)測試數(shù)據(jù)的傳輸量和測試時間要求,優(yōu)化SIB的連接方式,確保測試數(shù)據(jù)能夠快速、準(zhǔn)確地傳輸。它還會對PDL腳本進行優(yōu)化,減少不必要的操作步驟,提高測試效率。在測試架構(gòu)生成和優(yōu)化完成后,Tessent會對生成的測試架構(gòu)進行驗證。驗證過程包括檢查測試架構(gòu)是否符合相關(guān)標(biāo)準(zhǔn)和規(guī)范,如IEEE1149.1和IEEE1687標(biāo)準(zhǔn)。Tessent會檢查JTAG測試架構(gòu)中邊界掃描單元的設(shè)計是否符合標(biāo)準(zhǔn)要求,IJTAG測試架構(gòu)中ICL文件和PDL腳本的語法是否正確。Tessent還會進行功能驗證,模擬實際測試過程,檢查測試架構(gòu)是否能夠正確地實現(xiàn)測試功能。在JTAG測試架構(gòu)驗證中,Tessent會輸入測試向量,檢查測試結(jié)果是否與預(yù)期一致。對于IJTAG測試架構(gòu),Tessent會運行生成的PDL腳本,檢查嵌入式儀器的測試數(shù)據(jù)是否能夠準(zhǔn)確獲取和分析。如果驗證過程中發(fā)現(xiàn)問題,Tessent會給出相應(yīng)的提示和建議,工程師可以根據(jù)這些信息對測試架構(gòu)進行調(diào)整和優(yōu)化,直到測試架構(gòu)通過驗證。3.4自動設(shè)計中的關(guān)鍵技術(shù)問題及解決方案3.4.1測試資源分配問題在JTAG和IJTAG測試架構(gòu)的自動設(shè)計中,測試資源分配是一個關(guān)鍵且復(fù)雜的問題。隨著芯片集成度的不斷提高,芯片內(nèi)部包含的功能模塊和嵌入式儀器數(shù)量日益增多,這使得測試資源的分配變得愈發(fā)困難。從資源種類來看,測試資源包括硬件資源和軟件資源。硬件資源如測試引腳、邊界掃描單元、掃描互連塊等,軟件資源如測試指令、測試向量、測試腳本等。在JTAG測試架構(gòu)中,邊界掃描單元的數(shù)量是有限的,如何將這些有限的邊界掃描單元合理分配到各個芯片引腳和功能模塊,以實現(xiàn)全面的測試覆蓋,是一個需要解決的問題。在IJTAG測試架構(gòu)中,掃描互連塊的連接資源也是有限的,如何在眾多嵌入式儀器中合理分配這些連接資源,確保每個儀器都能被有效訪問和測試,同樣是一個挑戰(zhàn)。測試資源分配還受到芯片結(jié)構(gòu)和功能的影響。不同的芯片結(jié)構(gòu)和功能需求,對測試資源的分配方式也不同。在一個包含多個IP核的片上系統(tǒng)(SoC)中,每
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 標(biāo)識類公司管理制度
- 檢測后血液管理制度
- 檢驗科公章管理制度
- 模具加熱棒管理制度
- 殘疾康復(fù)室管理制度
- 毒害品安全管理制度
- 民辦青少年管理制度
- 家用紡織品行業(yè)消費者行為分析
- 汽修店學(xué)徒管理制度
- 汽車舉升機管理制度
- 跨區(qū)域動物疫病防控的科技創(chuàng)新與應(yīng)用
- 停車場承包經(jīng)營協(xié)議書范本
- 工作分析實務(wù)-國家開放大學(xué)電大易考通考試題目答案
- 急性呼吸窘迫綜合征的護理課件(演示)
- 2025年廣州市越秀區(qū)建設(shè)街招考聘用勞動保障監(jiān)察協(xié)管員高頻重點提升(共500題)附帶答案詳解
- 醫(yī)療器械產(chǎn)品運輸質(zhì)量保證措施
- 2025年寧夏銀川市靈武市文化旅游投資開發(fā)有限公司招聘筆試參考題庫附帶答案詳解
- 《寶鋼集團財務(wù)共享中心建設(shè)的案例探析》1600字
- 鐵路工務(wù)應(yīng)急處置課件
- 燃?xì)庑袠I(yè)法律法規(guī)培訓(xùn)
- T-GDHES 003-2024 預(yù)應(yīng)力混凝土U形板樁應(yīng)用技術(shù)規(guī)程
評論
0/150
提交評論