<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 測試測量 > 設(shè)計(jì)應(yīng)用 > 使JTAG邊界掃描與功能測試相結(jié)合

          使JTAG邊界掃描與功能測試相結(jié)合

          作者: 時間:2017-01-12 來源:網(wǎng)絡(luò) 收藏



          圖4.邊界掃描部件的簡化圖

          邊界掃描單元形成了一個串聯(lián)的掃描路徑,稱為邊界掃描寄存器。一序列需要寫入的數(shù)值可以通過TDI針腳被同步入這個寄存器中,而且一旦數(shù)據(jù)被邊界掃描單元捕獲,它可以通過TDO針腳被同步出去。JTAG器件可以被連接起來形成一個JTAG鏈。鏈中一個器件上的TDO針腳與另一個器件上的TDI針腳相連形成一個單一的寄存器??刂坪蜁r鐘信號(TMS和TCK)為鏈中的每個器件所共有。

          正因?yàn)槿绱耍琁CT可以在一定程度上或者完全被侵入性更小的邊界掃描測試所取代,使用邊界掃描單元來代替物理探針。每個JTAG鏈都需要一個適當(dāng)?shù)臏y試訪問端口(TAP),包含四個針腳(TDI,TDO,TMS與TCK,以及一個可選的第五個TRST針腳)在一個外部連接器上。這與一個JTAG控制器相連,通常是一個伴有邊界掃描軟件套裝的小型USB硬件。

          雖然JTAG邊界掃描被發(fā)現(xiàn)可以提高整體測試訪問,因而覆蓋率,但是它是一個數(shù)字協(xié)議,所以并不能直接測試模擬部分。邊界掃描訪問僅限于帶有至少一個JTAG器件的網(wǎng)(及與之相連的部件)。許多主導(dǎo)的JTAG邊界掃描系統(tǒng)含有“可測試設(shè)計(jì)”工具。它可以在設(shè)計(jì)階段顯示一個板卡的測試覆蓋率,突出顯示板卡上沒有足夠JTAG訪問的區(qū)域。在這個階段,或許可以將一個不支持JTAG的器件用一個支持的替換,以增加測試覆蓋率。

          新方法:使邊界掃描與功能測試相結(jié)合

          想要全面地測試一個系統(tǒng),邊界掃描測試必須與功能測試一起運(yùn)行。邊界掃描與ICT一樣,只能驗(yàn)證每個部件放置正確以及運(yùn)行正常。它不會驗(yàn)證整個電路像設(shè)計(jì)的一樣工作。

          當(dāng)把ICT與功能測試(生產(chǎn)結(jié)束時最常見的)相結(jié)合時,工程師幾乎總會發(fā)現(xiàn)它們在兩個不同的工作臺上測試。因?yàn)閷τ诿總€JTAG鏈只需要一個單一連接器上的4個針腳,把邊界掃描融入到一個功能測試裝置上非常容易,并且能節(jié)約寶貴的時間與精力。事實(shí)上一些電子測試專家已經(jīng)開始開發(fā)可以把功能和邊界掃描集成到一個工作臺的裝置和測試臺,以提供具有競爭力的總體成本以及開發(fā)時間的、更完全的設(shè)備。


          圖5(左)已將被測設(shè)備插入的集成功能測試與邊界掃描測試裝置


          圖6(右)裝置內(nèi)部,功能測試設(shè)備與邊界掃描測試接口相集成的地方。

          最大效率

          集合功能與邊界掃描測試于一個系統(tǒng)帶來大量的和重要的好處。兩個方法相互補(bǔ)充,在于彌補(bǔ)每個技術(shù)可能的缺陷,以帶來更高的可靠性與有效性。兩個一起使用可能創(chuàng)造其它方式不可能取得的、良好的測試條件。

          例如,通過用于功能測試的探針的激發(fā),可能生成能被邊界掃描鏈所驗(yàn)證的模式,然后可以激活電路中可以被功能測試所驗(yàn)證的部分。集成方法的有效性意味著您不僅可以從一個設(shè)備中運(yùn)行兩種測試類型,還意味著這些測試為板卡的設(shè)計(jì)與生產(chǎn)提供了更大的把握。

          這些益處可以從一個測試直接與FPGA相連的DAC的簡單例子中看到。使用邊界掃描可以恰當(dāng)?shù)仳?qū)動FPGA的I/O來為DAC的模擬輸出編程,從而可以通過功能測試被捕獲板測量到。另一方面,如果我們考慮一個與FPGA直接相交互的ADC,在功能測試中可以使用一個生成卡來激活前者,然后使用邊界掃描來檢測被ADC讀數(shù)所編譯的位元。

          以上的集成方法允許工程師們達(dá)到:
          • 被測設(shè)備(模擬與數(shù)字)上和所有網(wǎng)的所有電路全部或者接近全部的覆蓋率
          • 更短的測試時間-除了邊界掃描與功能測試序列被并行執(zhí)行的事實(shí),考慮在測試臺上裝載與卸載被測試設(shè)備的時間也是必須。很明顯它在使用兩個工作臺的時候是雙倍的
          • 高性能在線燒錄
          • 更快,更準(zhǔn)確的故障診斷

          目前有可用的強(qiáng)大的工具來允許您擁有交互的硬件以及執(zhí)行測試序列的開發(fā)環(huán)境,以用于集成測試系統(tǒng)的開發(fā)。只要簡單地把PXIJTAG模塊裝進(jìn)PXI架里,它就能允許與邊界掃描鏈的交互。它可以和適用于具體應(yīng)用的功能測試的幾個硬件裝備在一起。

          盡管邊界掃描測試序列的開發(fā)應(yīng)該用專業(yè)的工具(一個JTAG開發(fā)環(huán)境)來進(jìn)行,生成的序列不僅可以與為功能測試所開發(fā)的序列相關(guān)聯(lián),您還可以共同管理序列中提供兩類測試交互的部分。這樣,一旦功能和邊界掃描序列開發(fā)完成,并且集成一起,操作員接口將會被獨(dú)特地定制。

          通過選擇一個可以允許不同類型硬件容易的結(jié)合模塊測試系統(tǒng),包括第三方所開發(fā)的,您就有一個可以輕松升級與配置的、集成功能和邊界掃描測試的單一工作臺,不僅可以提供測試的可靠性,而且減少他們的成本與時間。

          什么是邊界掃描?

          硅設(shè)計(jì)方面的進(jìn)步,例如增加器件密度和最近的BGA封裝,使傳統(tǒng)測試方法的功效大打折扣。為了克服這些問題,一些世界領(lǐng)先的硅生產(chǎn)商聯(lián)合起來成立了聯(lián)合測試小組。

          這個小組的研究發(fā)現(xiàn)和建議被用來作為IEEE 1149.1標(biāo)準(zhǔn),即標(biāo)準(zhǔn)測試訪問端口和邊界掃描結(jié)構(gòu)的基礎(chǔ)。這個標(biāo)準(zhǔn)保留了和這個小組的聯(lián)系并且以縮寫JTAG被大家所俗知。

          JTAG邊界掃描是一項(xiàng)被設(shè)計(jì)用來克服通常與復(fù)雜的、高密度的板相關(guān)聯(lián)之類的測試訪問問題的測試技術(shù)。通過激發(fā)位于例如FPGA與CPLD部件上的邊界掃描單元,工程師們可以用一個JTAG控制器對電路進(jìn)行數(shù)碼地測試,并且使用強(qiáng)大的軟件套裝來精確地找到故障的位置與原因。

          因?yàn)椴辉傩枰獪y試點(diǎn),與ITC和功能測試相關(guān)的物理訪問問題不再是一個問題。測試系統(tǒng)與邊界掃描單元只通過一個4-5線測試總線相連。這必須在板卡設(shè)計(jì)中被考慮進(jìn)來以確??蓽y性。許多領(lǐng)先的JTAG邊界掃描系統(tǒng)銷售商提供可測性設(shè)計(jì)指南來鼓勵設(shè)計(jì)工程師們?nèi)ミ@樣做。

          它是如何工作的?

          所有器件核心邏輯與針腳間的信號都被一個稱為邊界掃描寄存器(Boundary Scan Register --- BSR)的串聯(lián)掃描路徑所截獲。在正常工作模式下,邊界掃描單元是隱形的,而在測試模式下,這些單元可以被用來設(shè)置和/或讀取數(shù)值。在邊界掃描過程中,一系列4-5個不同的信號被用來回報(bào)電路的性能。

          上一頁 1 2 下一頁

          關(guān)鍵詞: JTAG邊界掃描功能測

          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();