博文谷

位置:首頁 > 實用範文 > 論文

基於FPGA 的VME自訂總線接口設計論文

論文4.89K

1 引言

基於FPGA 的VME自訂總線接口設計論文

在光刻機雙工件臺控制系統中,VME 總線使用了三個接口共430 根線路接入, 透過背板互聯的有P1, P2 兩個接口320 根線路接入。實際上V M E 標準協議並沒有完全使用全部線路, 而是爲用戶預留了部分自訂線路,增加了設計的靈活性。由於V M E 總線主要用於工控機與各板卡的通信, 同步控制卡與激光計數卡和光柵譯碼卡使用總線就會產生嚴重衝突, 影響採用是實時性,因此這裏將V M E 總線中未使用的管腳作爲自訂總線管腳, 這樣避免了增加新的硬件接口, 而且在硬件設計上可以和VME 總線一起考慮。

自訂同步總線數據傳輸完全根據主控總線提供的時序進行, 地址線包含了對數據發送和接收方的定義。每個總線傳輸週期中, 數據發送端和接收端的身份根據地址尋址關係自動切換, 而避免了總線控制權更迭時的握手, 及數據傳輸優先級或傳輸搶佔等問題, 總線控制信號來自同一個時鐘域, 從節點僅響應控制信號, 可忽略節點間時鐘相位差影響。在每個伺服週期, 設計了一個數據傳輸序列來實現共享數據交互。數據傳輸序列由若干個總線傳輸週期構成, 每個週期完成32b i t 的數據共享。透過設定總線地址來設定數據傳輸序列的傳輸內容, 當所有的設定總線地址被遍歷, 則當前週期數據傳輸已經完成, 所有被規劃傳輸的數據都被所有的運動控制卡所共享。

2 VME 自訂總線邏輯協議的實現

V M E 自訂總線是一條並行執行的總線, 該總線

採用數據廣播的方式, 可以方便各個板塊同時接收同一個數據。其由同步控制卡提供5KHz 時鐘, 每200us同步控制卡將數據鎖存線拉高, 向光柵譯碼卡發出一個脈衝, 此時光柵譯碼卡和激光干涉儀等設備鎖存該時刻的數據, 其讀數不再發生變化, 然後同步控制卡產生一連串的讀取信號, 將各個光柵尺的數據讀出。同時切換總線上的地址, 並生成採樣保持, 讀取和地址三個信號置於自訂總線, 運動控制卡透過對自身所需的地址的識別在讀信號低電平時獲得相應位置傳感器的信號。

2.1 VME 自訂總線接口的實現

V M E 自訂總線在V M E 的P2 口上, 時鐘頻率是5KHz, 用於傳輸激光干涉儀和光柵尺的測量數據。在實際應用中, 位置環採樣週期爲200us, 並且有大量的實時伺服數據在運動控制卡與光柵譯碼卡之間、運動控制卡與運動控制卡之間、運動控制卡與同步總線控制卡之間交換。如果在運動控制中, 這些伺服數據使用V M E總線進行交換, 則會堵塞系統總線, 使P o w e r P C 無法進行正常工作。爲此, 利用光柵譯碼卡的技術特點以及V M E 的P2 自訂接口, 構造自訂局部總線。並設計專用同步總線控制模組對同步總線進行控制。自訂同步總線接口邏輯同樣採用FPGA 芯片來實現, 使其達到靈活、可靠、集成度高的設計要求。

自訂同步總線的主控制器由運動控制系統中的同步總線控制卡來實現, 而運動控制卡中只需實現自訂總線的從接口。從控制器結構如 所示, 其功能包含以下方面:

(1) 提供DSP 對於雙口RAM 訪問的地址譯碼, 將DSP 的標準EMIF 接口時序轉換成雙口RAM 訪問時序,該功能在EMIF 時序匹配模組中完成;

(2) 完成自訂總線的讀寫邏輯, 當自訂總線的地址有效後, 數據方向控制模組將判斷當前運動控制卡是數據發送端還是數據接收方, 以切換數據總線方向;

(3) 當某一個特定的自訂總線地址訪問出現的時候, 總線時序匹配模組將產生中斷信號提供給D S P , 提供同步觸發。

2.2 同步控制卡VME 自訂總線邏輯功能的實現

光柵譯碼卡接收來自光柵尺的信號, 實現對工件臺宏動部分的位置測量, 測量數據透過自訂總線傳送給同步控制卡。同步控制卡透過內部的定時器, 產生運動週期開始信號, 讀取光柵譯碼卡的數據, 然後將各個運動控制卡所需的信號, 按照一定的地址編碼,發送到V M E64x 總線的自訂總線上, 由運動控制卡接收。運動控制卡接收到同步控制卡的運動週期開始信號後, 依次接收指令位置和光柵尺數據, 運動控制卡進行數據存儲等其他操作, 並等待下個運動週期的開始信號。

對於同步控制卡FPGA 中邏輯協議的設計, 採用三段式狀態機進行設計, 第一段描述次態寄存器轉到現態寄存器; 第二段對狀態轉移條件進行判斷, 從而完成狀態轉移變換; 第三段描述在各個狀態完成的動作和對狀態轉移條件進行描述。

在狀態S0 處檢測200u s 的脈衝, 因爲同步控制卡每200u s 向光柵譯碼卡發出一個脈衝, 光柵譯碼卡接收到該脈衝後就會鎖存當前數據, 當脈衝到來時則轉到S1狀態, 否則仍然處於S0。在S1 狀態時等待20n s , 即讓光柵譯碼卡把數據鎖存完成, 接着轉到狀態S2。在狀態S2, 將地址發送給光柵譯碼卡, 並且等待30n s , 讓輸出數據穩定, 然後轉到狀態S3。在狀態S3, 將數據鎖存,讀操作的次數置零, 並且將地址發送給雙口R A M , 延時10n s 等待數據和地址穩定, 然後轉到狀態S4。在S4對雙口R A M 進行寫操作使能, 即給寫使能引腳置高電平, 然後進入狀態S5。在S5 將讀操作次數加1, 並判斷是12 路數據是否讀取完畢, 即讀次數是否等於12, 若否則進入狀態S6, 否則進入狀態S11。從狀態S6 到狀態S10 重複狀態S1 到S5 的過程, 直到讀取完成。在狀態S11, 發出讀取完成脈衝, 並延時20ns 到狀態S12, 最後返回狀態S0 等待。

2.3 同步控制卡VME 自訂總線設計實測結果

實測模組是接收12 路光柵尺的'數據, 從 可以看出, 送到光柵譯碼卡的地址, 在延遲一定時間後, 穩定的數據才輸出, 所以這裏是根據實測的延遲時間來決定模組設計中的相關信號的延遲。將數據寫入快取必須等待數據穩定才能發出寫信號。

2.4 運動控制卡讀取VME 自訂總線數據邏輯功能的實現

在光刻機雙工件臺控制系統中, 每塊運動控制卡實現對三個電機的控制, 整個系統需要12 塊運動控制卡,它透過光纖口將控制信號傳送到電機驅動。同步控制卡透過內部的定時器, 產生運動週期信號, 讀取光柵譯碼卡中數據, 進行解耦, 然後將各個運動控制卡所需的信號, 按照一定的地址編碼, 發送到V M E64x 自訂總線, 由運動控制卡接收。運動控制卡接收到同步控制卡的運動週期開始信號後, 依次接收指令位置和光柵譯碼卡的數據。

3 結束語

本文提供了一種基於FPGA 的VME 自訂總線的邏輯接口設計, 同步控制卡作爲“主卡”, 讀取光柵譯碼卡中的測量數據, 並將數據置於VME 自訂總線上,其負責自訂在總線的邏輯設計。運動控制卡, 接收來自自訂總線上的數據, 並透過DSP 進行處理, 最後發送給電機, 控制電機的運動軌跡。該設計方案透過了實際驗證, 並利用SignalTapII 觀測了其邏輯時序, 可得該方案正確。