用下行鏈路實現(xiàn)遠程邊界掃描測試
于電纜中傳播延遲所造成的延遲。在TCKTARGET(t2)上升沿,目標系統(tǒng)采樣TMS和TDI線。在 TCKTARGET(t4)下降沿,目標系統(tǒng)更新自己的TDO輸出,并將其放到電纜上。由于電纜中的延遲,新TDO信號在t5時到達控制器。測試控制器在 TCKTESTER(t6)上升沿采樣新的TDO信息。這樣,從目標系統(tǒng)的最后邊界掃描輸出到測試控制器的TDO 信號的傳輸時間,相當于TCK周期的一半。
假定TCK頻率為10MHz,或 100ns周期。此時,TDO數(shù)據(jù)必須在 50 ns 時間內(nèi)從鏈路中的最后 DUT 傳送至測試控制器。如果假定電纜的傳播延遲為5 ns/m,則使用的電纜長度決不能超過10m。
現(xiàn)在,假定有一個遠程目標系統(tǒng),并且無法控制延遲。如果網(wǎng)絡(luò)連接造成100ms延遲,則必須使用只有5Hz (1/100 ms×1/2=5 Hz) 的TCK最高頻率,這樣會造成極長時間的測試。因此,如果一個系統(tǒng)要使用長電纜,或者經(jīng)歷網(wǎng)絡(luò)延遲,則必須在不會顯著減少測試時間情況下,找到一種克服延遲的方法。
使TDO數(shù)據(jù)同步的虛擬單元
為使 TCK 頻率運行在一個合適速率上(依賴于通信信道的帶
寬),并且考慮通信延遲,可以在目標系統(tǒng) TDO 鏈的末端增加虛擬單元。這些單元并不存在,而只是通過調(diào)整測試軟件,將這些不存在的單元包含在掃描鏈中。這樣,測試軟件會將收到的目標系統(tǒng) TDO 數(shù)據(jù)延遲一個時間,使 TDO 數(shù)據(jù)移過這些附加的單元(圖 5)。工具軟件會測量傳播延遲和通信鏈接的速度,以確定要在目標系統(tǒng)掃描鏈中增加的單元數(shù)量。
考慮這樣一個系統(tǒng),其中從下行鏈路模塊中收到 TDO 數(shù)據(jù)位的延遲為 1秒 ~ 2秒,而測試儀的 TCK 輸出產(chǎn)生一個 4 MHz 時鐘信號。此時,上行鏈路模塊必須提供一個緩沖存儲器,以保存收到的所有 TDO 信息,直到測試儀準備接收為止。緩沖區(qū)可能需要 4MB ~ 8MB存儲容量,可以使用 DDR 存儲器件。
在上行鏈路模塊中,用 FIFO 內(nèi)存緩沖 TDO 數(shù)據(jù),并對測出的延遲作補償(圖 6)。一旦上行鏈路模塊開始向下行鏈路模塊發(fā)送有關(guān)的 TDI 信息,它就會根據(jù)以 TCK 周期表述的通信延遲值,裝入虛擬單元計數(shù)器。
與此同時,上行鏈路模塊將從下行鏈路模塊接收到的 TDO 位暫時儲存在 FIFO 存儲器中。每個 TCK 周期都會使虛擬單元計數(shù)器遞減,直至為零。此時,控制器開始以 TCK 速率將累積的 TDO 位連續(xù)移出。通過這種 TDO 鏈中增加虛擬單元與 FIFO 的組合,TDO 位就能與測試控制器的 TDO 輸入正確同步。
我們的目標是以單個數(shù)據(jù)包有效地為多個測試應(yīng)用傳輸測試數(shù)據(jù)。在上行鏈路譯碼過程中,可以將每個 TCK 周期的測試信息保存為一個 16 位塊。這個 16 位塊包含邊界掃描信息(即 TDI、TMS 和可選信號),最多用于四個邊界掃描鏈。為有效使用通信信道的帶寬,下行鏈路模塊逐一將每個鏈的四個 TDO 位都編碼為一個 16 位塊。
為了確保下行鏈路模塊只傳送相關(guān)的 TDO 數(shù)據(jù),該模塊帶有一個狀態(tài)機,由它決定目標 TAP 何時處于移位狀態(tài)。同樣,上行鏈路模塊也有一個狀態(tài)機,實現(xiàn)與目標系統(tǒng)發(fā)生的事件同步。
用這種方式,上行鏈路可以識別有效的 TDO 數(shù)據(jù),并且只將有效位發(fā)送給測試控制器作比較。因此,上行鏈路模塊可以用一種內(nèi)含“虛擬元件”方法,對可能由于多個 TCK 周期造成的來回傳輸延遲作出補償(圖 5 及圖 6)。
測量延遲
一個軟件工具在上行鏈路模塊和下行鏈路模塊間建立起通信信道,它進行一個回環(huán)測試,以測量信道內(nèi)的延遲。在延遲計算基礎(chǔ)上,該工具為測試軟件將“看到”的邊界掃描鏈配置適當數(shù)量的虛擬單元。軟件可以在計算中增加一些裕度,以確保一旦虛擬單元計數(shù)器歸零時,F(xiàn)IFO 存儲器能給出有效的 TDO 數(shù)據(jù)。在一個已知延遲的點對點信道中,軟件工具可以方便地建立上行鏈路至下行鏈路的連接,并配置一個預(yù)設(shè)數(shù)量的虛擬單元。
這種完成遠程邊界掃描測試的方法有局限性,因為需要將測試位的模式劃分成獨立的數(shù)據(jù)包,每個數(shù)據(jù)包的大小與所選的協(xié)議有關(guān)。這些數(shù)據(jù)包可能包含大比例的附加信息,從而降低傳輸?shù)奈恍省?BR>
另外,該過程需要一個下行鏈路控制器,用于從每個數(shù)據(jù)包中提取 TDI 和 TMS 信息,并通過目標系統(tǒng)分送這些信號。下行鏈路亦必須在傳送給測試控制器的上行鏈路以前,暫時儲存得到的 TDO 數(shù)據(jù)。
參考文獻
Reis, I and M Simonen, JTAG-testausj?rjestely, Finnish patent FI 110724 B, March 14, 2003.
Reis, I and M Simonen, JTAG Testing Arrangement, US pa
評論