數(shù)字邏輯設(shè)計人員在實現(xiàn)設(shè)計目標(biāo)時有不少工具可用。為適應(yīng)所需的大量邏輯數(shù)和數(shù)據(jù)率,設(shè)計人員可選用FPGA。FPGA在相對小的空間內(nèi),以多引腳數(shù)封裝提供巨大數(shù)量的數(shù)字邏輯門。
在印刷電路板(PCB)放置多個多引腳FPGA和其他器件,確保所有互連的完整無損是比較困難的。在制造中用X射線技術(shù)可以檢驗大概的互連問題, 而需要更精確的方法來檢測制造、調(diào)試和復(fù)雜PCB更換的互連問題。
一種方法是JTAG(IEEE1149.1)技術(shù)。JTAG(聯(lián)合測試行動組)功能包括基本的輸入/輸出邊界掃描控制(由1149.1規(guī)范確定)以及內(nèi)部資源的重新編程性和控制。數(shù)字設(shè)計中所用的很多元件都具有JTAG性能。微處理器可用JTAG提供調(diào)試接入。FPGA和CPLD可用JTAG編程。這些JTAG性能為制造、設(shè)計和服務(wù)人員提供一個強有力的生產(chǎn)高質(zhì)量板的工具。
在系統(tǒng)中實現(xiàn)JTAG控制邏輯時,考慮DFT(design-for-test),而這與一般的FPGA設(shè)計技術(shù)是矛盾的。
DFT設(shè)計考慮包括:
·主要的測試/調(diào)試能力必須與系統(tǒng)開發(fā)每個階段的FPGA功能無關(guān)。
·FPGA需要在現(xiàn)場更新測試控制邏輯,并且在重新編程期間應(yīng)變得不起作用。假若希望系統(tǒng)是“5個9”(99.999%)可用的,則需要另一種FPGA結(jié)構(gòu)。
·FPGA通常是JTAG掃描鏈的部分,而且感興趣的是FPGA互連的檢驗。FTAG控制邏輯不能置FPGA進入測試模式,并同時工作在非測試模式。
一個小的定制非易失性的即時接通可編程邏輯(PLD)能很好的適合系統(tǒng)DFT考慮。這樣的一種器件可提供足夠的邏輯和足夠的I/O組,使其容易調(diào)試和接口到JTAG,以便提供測試性、重新可編程性的控制功能性。這使得小的PLD成為板測試無故障的理想元件。
典型的PCB測試結(jié)構(gòu)
JTAG的主要用途集成在制造測試。它對開發(fā)環(huán)境有損害,它主要是處理任務(wù)而不是制造級連接性測試。圖1示出典型的PCB測試結(jié)構(gòu)。
圖1示出一個微處理器基系統(tǒng)和連接到一個JTAG接頭的器件鏈路。這是一個簡單的框圖。
JTAG接頭和與它較連的所有器件是單串行鏈路。所有邊界掃描和系統(tǒng)中的測試邏輯都是做為單結(jié)構(gòu)連接的。構(gòu)成測試系統(tǒng)進入邏輯子單元,其靈活性是有限的。JTAG鏈路的長度受TCK(測試時鐘)扇出和TMS(測試模式選擇)限制。
微處理器具有一些調(diào)試控制形式,而這種控而這種控制部分或全部由JTAG管理。某些調(diào)試工具與JTAG鏈路中的其他器件不能很好的共存,這就是為什么圖1中的微處理器與JTAG鏈路中的其他器件是獨立的。
有一些方法(如TCK和TMS線上的附加分立緩沖器)可以解決這些問題。用多個JTAG接頭也可以做成幾個JTAG鏈路。此方案為了能測試整個系統(tǒng),應(yīng)具備驅(qū)動多個JTAT接頭的測試設(shè)備。
在這種實現(xiàn)方案中,到測試和編程接口的接入需要有鏈路配置的詳細知識,即采用各種硬件接頭和硬件配置的知識。只有廠家或檢修人員可以接入可測試性接口和更新任何可編程器件。
端口連接
改善系統(tǒng)靈活性的一種方法是增加多個接頭到板上。具有同時連接幾個JTAG接頭的JTAG測試器能夠接入每個分立的JTAG掃描鏈路。
JTAG掃描鏈路可以構(gòu)建進邏輯單元,而單個JTEG端口鏈路器(port Linker)示于圖2,它可以大大地簡化硬件接口,并可增加多鏈路進入邏輯單元的靈活性。
端口鏈路器是使單個物理JTAG連接器能接入幾個獨立JTAG鏈路之一鏈路的器件。端口鏈路器呈現(xiàn)在具有JTAG測試接入端口和1組控制寄存器的物理接頭中,控制寄存器允許獨立JTAG端口的任意互連。在物理JTAGA接頭中可見的鏈路長度,將隨鏈路PORT#1~#4的使能或斷開而增加或減少。
端口鏈路器改善了系統(tǒng)的JTAG能力,因為現(xiàn)在JTAG鏈路可以分成功能模塊。端口鏈路器也可提供每個JTAG鏈路自身的TCK和TMS線,這降低了緩沖器驅(qū)動和扇出的限制。如果需要,可編程器件也可以單獨接入另外的邏輯器件。
板設(shè)計人員為了最大功效可以選擇如何組織測試、編程和調(diào)試鏈路。
注意,在這種方案中,微處理器保持在分立鏈路,仍然對于JTAG任何邏輯都沒有接入。當(dāng)設(shè)計變成產(chǎn)品最終到達消費者手中或處在服務(wù)中時,系統(tǒng)的微處理器提供重要的能力。微處理器通常與某些通信通道形式接口。這可以是Ethernet,WiFi或Bluetooth,或一些其他共同標(biāo)準(zhǔn)。假若微處理器具有到JTAG邏輯的接入,則可以利用微處理器的通信通道來執(zhí)行診斷或PLD更新。
到JTAG的并行接口
微處理接入到JTAG鏈路的一種方法是采用并行總線到JTAG串行總線接口器件。這種器件提供一組寄存器,這些寄存器與微處理之間以并存方式傳輸數(shù)據(jù)。邏輯變換并行接入為串行JTAG協(xié)議?,F(xiàn)在微處理器具有一種與板上JTAG邏輯相互連系的手段。
圖3示出可以連接到基本JTAG鏈路的并行到JTAG的變換。此方案也必須具有斷開JTAG輸出的能力。若輸出不斷開(即處于三態(tài)),則用外接測試設(shè)備是不可能的。
此方案用一個外部變換替代控制器的端口I/O能力。設(shè)計人員必須權(quán)衡用固件控制執(zhí)行,此功能比直接尋址外部變換邏輯所需的總線開銷要少。
橋接在一起
測試系統(tǒng)可分為兩部分:端口鏈路器和并行到JTAG變換器。假定用分立可編程邏輯器件實現(xiàn)這兩部分邏輯,則必須解決如何編程這些器件的問題。這些器件的每個部分都需要另外的專門JTAG接頭或復(fù)雜開關(guān)系統(tǒng)的某種形式來控制TMS或TCK線。
替代這些功能于兩個較小PLD器件的方法是把此邏輯置到一個較大的PLD器件中。圖4示出如何把整個設(shè)計在單個PLD中。
Lattice Semiconductor公司的Machxo PLD設(shè)計把上面所描述的元件和另外的一些性能組合在一起:
·模塊A是并行到JTAG變換模塊。
·模塊B是端口鏈接器。
·模塊C是Machxo PLD專門的JTAG端口。
此設(shè)計有幾個關(guān)鍵點。第一是用單個JTAG接頭編程PLD和連接外部制造/診斷設(shè)備。第二點是用1×3接頭控制TMS引腳的目的地到模塊C。在PCB開始裝配時,PLD是空白的,而且必須編程,在1~2引腳之間短路連接允許JTAG和編程接頭驅(qū)動PLD的TMS線??梢跃幊蘌LD板組裝之后才能進行短路。在所有其他情況下,引腳2~3之間放置跳接線。
被編程的PLD已準(zhǔn)備好執(zhí)行制造、測試、調(diào)試和維修等任務(wù)。
制造測試
制造是PLD設(shè)計的第一受益者,制造感興趣的是確認線跡沒有短路和沒有開路。用JTAG測試設(shè)備和一組可靠的JTAG鏈路是能夠確認連接是否正確。
用端口連接器把JTAG鏈路隔離為更小的子單元,可把目標(biāo)定在PCB上未端的邏輯單元。測試可以執(zhí)行得更快,因為可以控制邊界掃描鏈長度。也可以更快地進行初始化可編程器件。
JTAG執(zhí)行測試的主要接口是JTAG和編程接頭。假若測試人員在執(zhí)行測試前不需要改變板上的任何跳接線或其他設(shè)備,這就更好。JTAG和編程接頭上的備用引腳可做為使能/斷開和多路轉(zhuǎn)換器選擇。此選擇/使能引腳自動處理端口鏈路器模塊的3態(tài)port# 4并開關(guān)內(nèi)部多路轉(zhuǎn)換器。多路轉(zhuǎn)換器選擇JTAG和編程接頭或并行到JTAG變換邏輯。這允許制造和測試的連接JTAG測試設(shè)備,而不需要調(diào)節(jié)PCB上的任何短接。
工程開發(fā)
用PLD控制測試過程能為工程開發(fā)提供良好的互連測試。然而,F(xiàn)PGA/PLD和固件設(shè)計人員現(xiàn)在可以開始做硬件工作。
PCB開發(fā)是一個反復(fù)的過程,工程師經(jīng)常改變可編程器件的內(nèi)容。工程師一般也用微處理器和調(diào)試工具。
在開發(fā)和調(diào)試過程中的早期,固件和微處理器控制可能不是完整的工作。在此期間,由于JTAG和可編程接頭接口可初始化可編程邏輯器件。
板開發(fā)早期要做的另一事情是開發(fā)微處理器控制碼。固件會有錯誤需要調(diào)試。完成調(diào)試的方法是用JTAG基調(diào)試工具。采用JTAG基調(diào)試工具引起的一個問題是這種工具要求微處理器只能有一個器件連接到微處理器的JTAG I/O。這樣要求與制造組的需要是矛盾的。然而,圖4所建議的方案早已解決了此問題。
固件工程師能夠接入調(diào)試端口,而不會干擾JTAG鏈路的邏輯。在微處理器碼調(diào)試期間獲得微處理器JTAG端口的全部控制,而能夠用JTAG調(diào)試工具。假如沒有測試工具連接到JTAG和編程接頭,則固件工程師除希望有到微處理器的鏈路外,也有在所有JTAG鏈路的接入。現(xiàn)在,固件工程師能夠增加板的測試能力?,F(xiàn)在,固件工程師能夠增加板的測試能力。微處理器控制的測試程序經(jīng)常是固有的或是動態(tài)下載,這取決于系統(tǒng)資源。測試程序可返回到制造組,允許更徹底地測試板的裝配板。
在現(xiàn)場JTAG所提供的全面制造和調(diào)試測試,對現(xiàn)場PCB提高質(zhì)量和可靠性是很有價值的。
如前所述,PCB板上可有一個微處理器來執(zhí)行通過/不通過測試。很多帶微處理器的系統(tǒng)也具有通信通道的某種形式。假若通信通道是無線或有線Internet連接,則現(xiàn)場工程師可以遠程初始化診斷測試。遠程初始化診斷測試與制造測試工程師所做的應(yīng)具有相同的能力。甚至板不具備遠程接入,但維修人員仍從可用的編程和JTAG接頭中受益。
不管測試性能是如何接入,沒有必要為維修而接入這些性能發(fā)的系統(tǒng),或需要高度可重配置分散觸發(fā)的系統(tǒng)。
對每個LXIA級設(shè)備,兩個觸發(fā)總線連接器是并聯(lián)接線的,以方便菊鏈分段的實現(xiàn),在此場合,硬件觸發(fā)總線在每段的端點處需一個端接器,每段總線最多可連接16個LXI設(shè)備。
每條觸發(fā)總線有1個驅(qū)動器和幾個接收器,具體配置由觸發(fā)總線模式?jīng)Q定。A級支持兩種觸發(fā)配置:
·驅(qū)動模式:此配置將觸發(fā)事件傳輸至連接在同一條總線上的一個或多個接收器。
·線或模式:此配置支持多點至多點觸發(fā)傳輸模式。在此模式,可讓多個觸發(fā)源啟動觸發(fā),多個接收器接收生成的觸發(fā)事件。當(dāng)配置成線或模式時,與LXI觸發(fā)接收器相關(guān)聯(lián)的一個觸發(fā)器配置成基本觸發(fā)源,每個觸發(fā)源使用并聯(lián)的驅(qū)動器來驅(qū)動。
LXI觸發(fā)總線的附加功能要求有:
·8條觸發(fā)器全部路由至模塊內(nèi)設(shè)置的每個觸發(fā)功能,當(dāng)為每個特定功能分配觸發(fā)線時,可達到最大的靈活性。
·在每條觸發(fā)器線上同時驅(qū)動/檢測。
·為每條觸發(fā)線設(shè)置邊沿檢測或電平檢測。
A級設(shè)備為用戶和儀器供應(yīng)商提供了用硬件觸發(fā)連接創(chuàng)建儀器分系統(tǒng)的能力,其典型應(yīng)用是合成儀器系統(tǒng),這類系統(tǒng)是由幾個源/測量構(gòu)件組成的,由LXI觸發(fā)線提供模塊內(nèi)固有的時鐘和觸發(fā)。此外,在幾個遠地放置的分系統(tǒng)間通信,可用消息通信方式實現(xiàn)。A級設(shè)備允許使用硬件或LAN觸發(fā)來啟動測量事件,為分布式測量或數(shù)據(jù)采集系統(tǒng)提供了更高的靈活性。
結(jié)語
定義3種不同的LXI產(chǎn)品等級為生產(chǎn)和部署產(chǎn)品提供更多的靈活性,既能滿足特定的要求而又不增加系統(tǒng)的復(fù)雜性和成本。同時,無IEEE1588PTP功能的LAN基產(chǎn)品有助于加速標(biāo)準(zhǔn)的推廣,促進LXI產(chǎn)品的研發(fā)。一旦條件成熟,不僅能迅速地將現(xiàn)有Ethernet基儀器更新為C級設(shè)備,還能創(chuàng)建更多功能齊備的A級或B級設(shè)備。
責(zé)任編輯:gt
-
pcb
+關(guān)注
關(guān)注
4367文章
23485瀏覽量
409510 -
接口
+關(guān)注
關(guān)注
33文章
8997瀏覽量
153697 -
微處理器
+關(guān)注
關(guān)注
11文章
2383瀏覽量
84148
發(fā)布評論請先 登錄
未來誰主沉?。捍泻?b class='flag-5'>并行接口SRAM對比
嵌入式微處理器和接口詳技術(shù)詳解
嵌入式微處理器和接口詳技術(shù)詳解
微處理器和JTAG總線橋接接口
8255A可編程并行接口
并行接口
嵌入式微處理器JTAG接口中TAP控制器的設(shè)計
并行接口邏輯及編程應(yīng)用

計算機的并行接口,計算機的并行接口大全
SRAM存儲器的并行接口和串行接口對比

評論