基於fpga實現的jtag測試方法
2023-08-08 18:47:01
專利名稱:基於fpga實現的jtag測試方法
基於FPGA實現的JTAG測試方法
技術領域:
本發明涉及電子技術領域,特別涉及一種基於FPGA實現的JTAG測試方法。背景技術:
為了解決超大規模集成電路的測試問題,由聯合測試行動組(JTAG)提出了邊界 掃描技術,它通過存在於器件輸入輸出管腳與內核電路之間的邊界掃描單元對器件及其外 圍電路進行測試,從而提高了器件的可控性和可觀察性,解決了現代電子技術發展帶來的 上述測試問題,可以較方便地完成由現代器件組裝的電路板的測試。通常這種測試被稱為 JTAG鏈路測試。基於JTAG標準IEEE1149設計電路板測試的方案已經比較多,其優點是可以進行 在線測試。通過軟體即可檢測到PCB板的部分器件的焊接缺陷。目前現有的方案中,基本 上都是用JTAG的通用接口 TCK、TMS、TDI、TDO、nTRST幾個腳完成測試。現有的技術中,通常的做法是只利用JTAG的接口10(、11^、101300、1^1 11完成測 試,即只能對含有JTAG測試鏈的晶片進行測試,測試儀器通過操作TCK、TMS、TDI、nTRST時 序來控制待測器件進入測試狀態,並根據TDO獲得的數據來判斷當前的JTAG鏈工作情況, 從而判斷晶片的焊接是否完善。但這種測試方法有如下缺點1、僅能測試出呆滯0或者呆滯1的具體引腳,但是無法判定呆滯出現在什麼位置, 比如,出現在與其他的晶片的連接線上,還是出現在BGA下的球狀焊接點,該技術很難確定。2、無法判定開路,由於開路時候,JTAG鏈自身的數據不被引腳信號影響,因此判斷 不了開路。3、僅僅能測試晶片自己的焊接點,因為JTAG鏈的特點是其內嵌在晶片內部,而與 其相連的其他器件是否存在焊接問題則測試不到。
發明內容本發明所要解決的技術問題在於提供一種基於FPGA實現的JTAG測試方法,該方 法可以準確判斷BGA晶片的焊接缺陷以及周圍電路的焊接情況。本發明採用以下技術方案解決上述技術問題
基於FPGA實現的JTAG測試方法,包括如下步驟步驟一通過PC或者微處理器配置FPGA的採樣接口電路的IO 口輸入輸出方向, 來確定各個探針是輸入還是輸出,並配置需要屏蔽的或者需要忽略的測試點的相關數據;步驟二 通過PC或者微處理器向FPGA內部的系統控制狀態機發送測試指令,FPGA 的系統控制狀態機經過對指令的接收,分析處理後,再進行執行;步驟三在系統控制狀態機的控制下,JTAG接口狀態機發送JTAG數據;步驟四在JTAG接口狀態機發送JTAG數據的同時,系統控制狀態機將TDO接收到
3的數據和採樣接口電路接收的數據存儲到寄存器陣列和數據存儲區中;步驟五系統控制狀態機在完成測試後,向PC機或微處理器發送測試結束狀態;步驟六由PC或者微處理器發起讀取測試數據指令,FPGA的系統控制狀態機將存 儲的數據通過異步串口電路的串口發送給PC或微處理器,從而完成測試;步驟七PC或者微處理器根據接收到的測試數據進行逐個分析,分別對短路、開 路、呆滯0、呆滯1進行分析,最終形成測試報告。本發明的優點在於1、靈活性好,可以根據待測的不同電路板,修改測試參數,即 可進行多種板繼續測試,由於FPGA的IO 口的雙向可配置性質,可以靈活配置各個測試點是 輸入還是輸出,並且可以為輸出測試點配置高低電平。2、準確性好,可以準確的測試各個焊 接點的狀態。並且能夠精確的定位短路、開路、呆滯1和呆滯0的位置。通過FPGA豐富的 IO 口資源進行多點數據採集,結合JTAG的TDO數據,可以準確的對故障定位。3、可針對性 測試,可以根據檢查到的情況進行有針對性的測試。比如專門測試某條連線的狀態。由於 本方法是通過下傳指令方式進行測試控制,因此可以對測試中需要重點測試的路徑進行反 複測試。4、擴展性好,可以通過在FPGA集成USB接口,替代UART接口,實現更高速的數據 傳輸和分析。還可以採用大量IO 口的FPGA實現這個設計,從而可以用於多種複雜電路測 試。5、具備FPGA自身的一切優點。如節約成本、便於採購、存儲、質檢以及維護,便於升級。
下面參照附圖結合實施例對本發明作進一步的描述。圖1是本發明JTAG測試系統的接口示意圖。
具體實施方式請參閱圖1所示,是本發明JTAG測試系統的接口示意圖。圖1中,FPGA通過JTAG 接口以及探針與待測電路板連結,在通過JTAG接口進行測試的同時,利用FPGA接出來的探 針與待測電路板監測點連接,以讀取測試中各個點的數據變化。然後最後由FPGA通過異步 串口發送給嵌入式處理器或者PC進行數據分析和判定。其中硬體部分用VHDL語言編寫整 個設計。在LATTICE公司的FPGAEPC1E1-3T144上實現。PC端軟體部分則由C++軟體開發。圖1中,基於FPGA實現的系統控制狀態機,實現對PC機(或者微處理器)指令 的分析和執行,這些指令包括配置工作模式類的指令、測試類的指令、讀取測試數據類的指 令。由FPGA實現的JTAG接口狀態機,實現TCK、TDI、TMS的各信號時序,並採集TDO的 狀態。由FPGA實現的異步串口電路,串口負責將測試獲得的最終數據上傳給PC機或者 微處理器,並接受PC機或者微處理器下傳的控制指令。採樣接口電路,對電路板上的測試點進行數據採集。寄存器陣列和數據存儲區,用保存各類指令的設置和FPGA接收的各種數據。本發明基於FPGA實現的JTAG測試方法,具體包括如下步驟步驟一通過PC或者微處理器配置FPGA的採樣接口電路的IO 口輸入輸出方向, 來確定各個探針是輸入還是輸出,並配置需要屏蔽的或者需要忽略的測試點的相關數據;
步驟二 通過PC或者微處理器向FPGA內部的系統控制狀態機發送測試指令,FPGA 的系統控制狀態機經過對指令的接收,分析處理後,再進行執行;步驟三在系統控制狀態機的控制下,JTAG接口狀態機發送JTAG數據,並可以根 據指令和測試向量進行多次JTAG測試;步驟四在JTAG接口狀態機發送JTAG數據的同時,系統控制狀態機將TDO接收到 的數據和採樣接口電路接收的數據存儲到寄存器陣列和數據存儲區中;步驟五系統控制狀態機在完成測試後,向PC機或微處理器發送測試結束狀態;步驟六由PC或者微處理器發起讀取測試數據指令,FPGA的系統控制狀態機將存 儲的數據通過異步串口電路的串口發送給PC或微處理器,從而完成測試;步驟七PC或者微處理器根據接收到的測試數據進行逐個分析,分別對短路、開 路、呆滯0、呆滯1進行分析,最終形成測試報告。在具體實踐中,可以根據以上測試步驟,對需要重點測試的待測點進行重複測試。本發明採用JTAG測試和FPAG的IO接口應用為探針,結合兩種測試數據,進行最 終判定。本發明的有益效果在於1、靈活性好,可以根據待測的不同電路板,修改測試參 數,即可進行多種板繼續測試,由於FPGA的IO 口的雙向可配置性質,可以靈活配置各個測 試點是輸入還是輸出,並且可以為輸出測試點配置高低電平。2、準確性好,可以準確的測試 各個焊接點的狀態。並且能夠精確的定位短路、開路、呆滯1和呆滯0的位置。通過FPGA 豐富的IO 口資源進行多點數據採集,結合JTAG的TDO數據,可以準確的對故障定位。3、可 針對性測試,可以根據檢查到的情況進行有針對性的測試。比如專門測試某條連線的狀態。 由於本方法是通過下傳指令方式進行測試控制,因此可以對測試中需要重點測試的路徑進 行反覆測試。4、擴展性好,可以通過在FPGA集成USB接口,替代UART接口,實現更高速的 數據傳輸和分析。還可以採用大量IO 口的FPGA實現這個設計,從而可以用於多種複雜電 路測試。5、具備FPGA自身的一切優點。如節約成本、便於採購、存儲、質檢以及維護,便於 升級。
權利要求
基於FPGA實現的JTAG測試方法,其特徵在於包括如下步驟步驟一通過PC或者微處理器配置FPGA的採樣接口電路的IO口輸入輸出方向,來確定各個探針是輸入還是輸出,並配置需要屏蔽的或者需要忽略的測試點的相關數據;步驟二通過PC或者微處理器向FPGA內部的系統控制狀態機發送測試指令,FPGA的系統控制狀態機經過對指令的接收,分析處理後,再進行執行;步驟三在系統控制狀態機的控制下,JTAG接口狀態機發送JTAG數據;步驟四在JTAG接口狀態機發送JTAG數據的同時,系統控制狀態機將TDO接收到的數據和採樣接口電路接收的數據存儲到寄存器陣列和數據存儲區中;步驟五系統控制狀態機在完成測試後,向PC機或微處理器發送測試結束狀態;步驟六由PC或者微處理器發起讀取測試數據指令,FPGA的系統控制狀態機將存儲的數據通過異步串口電路的串口發送給PC或微處理器,從而完成測試;步驟七PC或者微處理器根據接收到的測試數據進行逐個分析,分別對短路、開路、呆滯0、呆滯1進行分析,最終形成測試報告。
全文摘要
基於FPGA實現的JTAG測試方法,FPGA通過JTAG接口以及探針與待測電路板連接,在通過JTAG接口進行測試的同時,利用FPGA接出來的探針與待測電路板監測點連接,以讀取測試中各個點的數據變化。然後最後由FPGA通過異步串口電路發送給PC或者微處理器進行數據分析和判定。本發明可以準確判斷BGA晶片的焊接缺陷以及周圍電路的焊接情況。
文檔編號G05B19/05GK101980036SQ201010516760
公開日2011年2月23日 申請日期2010年10月22日 優先權日2010年10月22日
發明者劉文慶 申請人:福建鑫諾通訊技術有限公司