如何使用外部事件對被測設備(DUT)執行同步暫停/恢復操作

        概述:通常,測試具有數字接口的設備需要能夠等待設備響應發送給它的特定模式序列。對於包含使用硬件握手來同步數據傳輸的總線傳輸的設備來說尤其如此。  GX5280/GX5290數字儀表卡系列提供16個可用於支持這種握手過程的外部事件輸入。本文介紹瞭如何使用外部事件對被測設備(DUT)執行同步暫停/恢復操作。


外部事件

        GX5280和GX5290數字IO儀器(DIO)提供16個外部輸入信號,這些信號可用於暫停和觸發(恢復)數字模式序列。這種基於硬件信號的暫停然後恢復模式排序的能力對於執行數據傳輸的閉環握手至關重要。下面的圖1提供了外部事件控件的功能框圖。

                 圖一 外部事件框圖

 

        有三對寄存器定義如何使用外部事件,標記爲「D」事件、「T」事件和「P」事件。每個寄存器對都有一個16位事件模式,以及一個忽略未使用位的16位事件掩碼,其中邏輯「1」啓用事件輸入信號,邏輯「0」禁用或屏蔽相應的輸入。事件/掩碼組合一起定義了一個16位的值,該值傳遞給模式序列器進行計算。

       「D」和「T」事件用於觸發模式序列器。觸發器可以基於「D」或「T」事件的單一模式匹配,也可以組合使用以定義必須滿足的觸發器序列,以便符合有效觸發器的條件-就像在預觸發器後面跟着實際觸發器一樣。事件順序可以定義爲「D」後跟「T」,或「T」後跟「D」。

        當滿足定義的事件條件時,「P」事件將強制DIO序列器暫停模式執行。

        DIO確實提供了可以暫停和觸發模式排序的軟件命令,但軟件控制與數據流不同步,並且通常無法以DUT能夠達到的速度或數據傳輸協議要求的速度運行。內置於儀器模式序列器中的控制寄存器可用於在特定向量處暫停執行,但控制寄存器只有一個狀態深度-這意味着,在沒有軟件干預的情況下,整個模式序列中只能存在一個暫停命令。使用軟件重新編程暫停向量可以用來擴展單次暫停命令,但會將握手過程減慢到不可接受的時間。

高速硬件握手

        利用外部事件輸入和DIO上未使用的IO引腳,可以實現高速硬件握手。通過將J1連接器上未使用的管腳連接到J3連接器上的外部事件輸入端,您可以在幾乎任何向量或儀器全模式長度內的任何數量的向量上編程硬件「暫停」-有效地將未使用的IO通道轉爲附加的暫停命令。例如,如果IO通道30(J1-P31)連接到外部事件輸入信號2(J3-P3),則如果「P」事件定義爲掩碼=0x0004,且事件=0x0004,則IO通道30將成爲暫停控制信號。然後,IO通道30被編程爲邏輯「1」的任何向量都將迫使DIO進入暫停狀態。假設DIO在涉及握手的數據傳輸中充當控制器,則在控制器必須等待DUT確認數據傳輸的向量處編程「P」事件,強制整個DIO域(所有IO通道)進入暫停等待觸發狀態。連續觸發器可以通過軟件生成,來自外部觸發器輸入,從PXI背板接收,或者來自使用用於強制暫停狀態的相同外部事件。

        如果DUT握手響應也連接到外部事件輸入,比如說事件信號0(J3-P1),並且您選擇使用「D」事件來恢復模式排序,那麼您可以將「D」事件觸發器定義爲掩碼=0x0001和事件-0x0001。當DIO暫停時,事件輸入0上的邏輯「1」將觸發儀器並繼續執行模式。

使用外部事件有一些注意事項:

  • 事件是對電平敏感的,不是由上升或下降邊緣生成的
  • 暫停不是立即的。至少需要16個向量才能實現暫停。最大運行時間取決於圖案速率。

向量運行中變化的原因如下:

  1. 暫停事件大約有350 nS的傳播延遲,可用於模式排序邏輯。使用DIO環回進行暫停控制時,必須考慮16種狀態的刺激/響應通道
  2. 同步外部事件暫停/觸發僅需要1個向量即可啓動暫停。
  3. 異步外部事件暫停/觸發至少需要2個向量才能啓動暫停。
  4. 最多可以使用8個向量來啓動暫停。DIO通道將保留暫停事件狀態,如果在太多矢量上施加了暫停信號,則可能在收到繼續觸發後立即啓動暫停。
  5. 在高數據速率下,接地反彈可能會導致錯誤或間歇性的暫停/觸發操作,因爲反彈可能會超出儀器運行的向量週期。

        大約350 nS的傳播延遲和16狀態通道將使DIO模式的暫停從最小的16個狀態延遲到最大的大約50個矢量狀態。緊隨暫停信號之後的模式應設置爲靜態,以便在等待握手確認時不改變提供給DUT的邏輯狀態。運行時間的長短取決於DIO的數據速率,原因如下。

 

                   圖2-低數據速率暫停時序

        在上面的圖2中和下面的圖3中,傳播延遲(Tpd)是相同的持續時間(~350ns)。圖3已經過擴展,以更好地顯示計時細節。在圖2中可以看到,Tpd小於1個向量週期,因此它的影響包含在暫停信號之後的第一個時鐘週期中。模式時鐘足夠慢,以至於Tpd的影響被隱藏(包含)在產生暫停觸發器的向量中(藍色時鐘週期)。所以暫停運行只受儀器通道的影響,在暫停事件(紅色時鐘週期)之後,DIO在16個矢量處暫停。

                    圖3-高數據速率暫停時序

        在圖3中,矢量時鐘運行得更快,相同的Tpd持續時間跨越多個模式時鐘。在Tpd期間,模式時鐘(黃色時鐘週期)對通過儀器通道移動暫停觸發狀態沒有影響。因此,實際上,pause-run-on被擴展爲Tpd持續時間中包含的模式時鐘數量-在示例中爲5個時鐘週期。暫停發生的向量是暫停事件(紅色時鐘週期)後的21個向量-管道的16個向量+Tpd的5個向量。如果DIO以100兆赫(10納秒)的週期運行,在Tpd(350納秒/10納秒週期)期間可能會出現35個額外的時鐘。在高數據速率下,由於Tpd延遲的微小變化,暫停將在何處生效的確切向量存在一些模糊性,因此管道和Tpd的運行應針對測試模式將運行的數據速率進行描述。

        下面的圖4:1-4:6顯示了這方面的例子。每個圖像都是運行相同測試模式的GtDio面板的屏幕截圖。在每種情況下,暫停信號被編程爲向量5000。屏幕截圖之間的唯一區別是執行模式的數據速率。查看圖4:1中突出顯示的字段顯示模式時鐘以1MHz運行。週期1us遠高於Tpd值,因此暫停在向量5016處生效。隨後的圖顯示了不同的模式時鐘,最高可達100兆赫,以及每種時鐘產生的暫停向量。

                    圖4-1 MHz-100MHz數據速率下的暫停向量

總結

        雖然GX5280和GX5290數字IO儀器使用可編程寄存器或軟件命令提供模式控制,但利用未使用的DIO資源可以擴展DIO儀器的功能,以支持UUT測試模式的整個深度上的有多個暫停/恢復點,或者可預加載到64M矢量DIO模式存儲器的多個模式集內。

 

關於我們

        虹科是一家在測試測量行業經驗超過10年的高科技公司,虹科與世界知名的測量行業巨頭公司Marvin Test以及Pickering Interface合作多年,提供領域內頂尖水平的基於PXI/PXIe/PCI/LXI平臺的多種功能模塊,以及自動化測試軟件平臺和測試系統。事業部所有成員都受過國內外專業培訓,並獲得專業資格認證,所有工程師平均5年+技術經驗和水平一致贏得客戶極好口碑。我們積極參與行業協會的工作,爲推廣先進技術的普及做出了重要貢獻。至今,虹科已經爲全國用戶提供了100+不同的解決方案和項目,並且獲得了行業內用戶極好口碑。