雙口RAM通訊在電機控制中的應用
發布時間:2007/4/23 0:00:00 訪問次數:1026
1 總體結構
如圖所示,整個通訊由三部分組成:DSP,VME雙口RAM。
1.1 DSP部分
這部分是整個電機控制系統的核心。DSP主要被用來產生控制電機的PWM脈沖,本項目使用的芯片是德州儀器的TMS320LF2407A芯片,它內部有兩個事件管理器,可以最多生成12路脈沖信號;集成了高性能的10位ADC、SCI、SPI、CAN等模塊,真正實現了單芯片控制,性能穩定,功能強大。
1.2 VME總線
VME總線,Motorola公司1981年推出的32位工業開放標準總線,主要應用于工業控制現場,實現數據的高速采集,總線上設備之間的實時通訊等。VME總線的插板一般有兩種尺寸,一種是3U高度的帶一個總線接口J1,另一種是6U高度的帶2個總線接口J1、J2。一般每塊VME總線的插板上的接口J1、J2都有96針,每一個接口都是3排,按A、B、C排列,每排32針,J1一般用于直接與VME總線相連,J2的中間列用于擴展地址總線或數據總線,另外兩列可由用戶定義及I/O、磁盤驅動及其他外設等。
1.3 雙口RAM
雙口RAM具有兩套完全獨立的數據線、地址線、讀/寫控制線,允許兩個CPU對雙端口存儲器的同一單元進行同時存取;具有兩套完全獨立的中斷邏輯來實現兩個CPU之間的握手控制信號;具有兩套獨立的“忙”邏輯,保證兩個CPU同時對同一單元進行讀/寫操作的正確性;兼容性強,讀/寫時序與普通單端口存儲器完全一樣,存取速度完全滿足各種CPU的要求。這些特點使得雙口RAM能夠勝任一些要求高速度,實時通訊的場合。
雙口RAM有兩套相互獨立的存儲電路,兩者通過控制仲裁電路相互連接。以IDT7024為例,該芯片是4K*16的靜態存儲器,典型功耗750mW,最大存取時間有15/17/20/25/35/55ns,可采用中斷、忙邏輯、旗語三種方式來協調信息交換的雙方。
2 硬件組成
2.1 DSP部分
使用TMS320LF2407A芯片,為了和雙口RAM 連接,應將DSP的16位數據線和12位地址線引出,另外還有控制信號線:DS、R/W。
2.2 VME總線
這里使用VMIC公司的標準6U機箱,含J1,J2兩個總線接口,只使用J1進行通訊。
2.3 雙口RAM
雙口RAM有兩套相互獨立的地址和數據線,將它們分別和DSP、VME總線的地址和數據線相連,并把J1和DSP的控制信號線連到GAL上面,對雙口RAM進行邏輯控制,如下圖所示:
3 通訊流程
這里我們把VME作為主設備,DSP作為從設備,DSP的讀寫操作都受到VME的控制。需要注意的是,對同一個地址不能同時寫或者一邊寫一邊讀,防止產生寫入和讀取錯誤的數據,以下分別是讀寫通訊的流程圖:
如果VME向雙口RAM中“寫入”數據,首先需要判斷寫入數據的區域有沒有正在被DSP端“讀”或者“寫”,可以通過“旗語標志位”進行判斷,判斷DSP并沒有對該區域進行操作的時候,VME獲得該區域的控制權,并置“旗語標志位”。寫完數據,VME向DSP端的中斷標志位寫入數據,這樣,雙口RAM便會產生DSP中斷信號,提示DSP讀取數據。
如果VME從雙口RAM中“讀”數據,首先需要判斷讀數據的區域有沒有正在被DSP端“寫”,可以通過“旗語標志位”進行判斷,判斷DSP并沒有對該區域進行操作的時候,VME就可以從該區域讀取數據。
1 總體結構
如圖所示,整個通訊由三部分組成:DSP,VME雙口RAM。
1.1 DSP部分
這部分是整個電機控制系統的核心。DSP主要被用來產生控制電機的PWM脈沖,本項目使用的芯片是德州儀器的TMS320LF2407A芯片,它內部有兩個事件管理器,可以最多生成12路脈沖信號;集成了高性能的10位ADC、SCI、SPI、CAN等模塊,真正實現了單芯片控制,性能穩定,功能強大。
1.2 VME總線
VME總線,Motorola公司1981年推出的32位工業開放標準總線,主要應用于工業控制現場,實現數據的高速采集,總線上設備之間的實時通訊等。VME總線的插板一般有兩種尺寸,一種是3U高度的帶一個總線接口J1,另一種是6U高度的帶2個總線接口J1、J2。一般每塊VME總線的插板上的接口J1、J2都有96針,每一個接口都是3排,按A、B、C排列,每排32針,J1一般用于直接與VME總線相連,J2的中間列用于擴展地址總線或數據總線,另外兩列可由用戶定義及I/O、磁盤驅動及其他外設等。
1.3 雙口RAM
雙口RAM具有兩套完全獨立的數據線、地址線、讀/寫控制線,允許兩個CPU對雙端口存儲器的同一單元進行同時存取;具有兩套完全獨立的中斷邏輯來實現兩個CPU之間的握手控制信號;具有兩套獨立的“忙”邏輯,保證兩個CPU同時對同一單元進行讀/寫操作的正確性;兼容性強,讀/寫時序與普通單端口存儲器完全一樣,存取速度完全滿足各種CPU的要求。這些特點使得雙口RAM能夠勝任一些要求高速度,實時通訊的場合。
雙口RAM有兩套相互獨立的存儲電路,兩者通過控制仲裁電路相互連接。以IDT7024為例,該芯片是4K*16的靜態存儲器,典型功耗750mW,最大存取時間有15/17/20/25/35/55ns,可采用中斷、忙邏輯、旗語三種方式來協調信息交換的雙方。
2 硬件組成
2.1 DSP部分
使用TMS320LF2407A芯片,為了和雙口RAM 連接,應將DSP的16位數據線和12位地址線引出,另外還有控制信號線:DS、R/W。
2.2 VME總線
這里使用VMIC公司的標準6U機箱,含J1,J2兩個總線接口,只使用J1進行通訊。
2.3 雙口RAM
雙口RAM有兩套相互獨立的地址和數據線,將它們分別和DSP、VME總線的地址和數據線相連,并把J1和DSP的控制信號線連到GAL上面,對雙口RAM進行邏輯控制,如下圖所示:
3 通訊流程
這里我們把VME作為主設備,DSP作為從設備,DSP的讀寫操作都受到VME的控制。需要注意的是,對同一個地址不能同時寫或者一邊寫一邊讀,防止產生寫入和讀取錯誤的數據,以下分別是讀寫通訊的流程圖:
如果VME向雙口RAM中“寫入”數據,首先需要判斷寫入數據的區域有沒有正在被DSP端“讀”或者“寫”,可以通過“旗語標志位”進行判斷,判斷DSP并沒有對該區域進行操作的時候,VME獲得該區域的控制權,并置“旗語標志位”。寫完數據,VME向DSP端的中斷標志位寫入數據,這樣,雙口RAM便會產生DSP中斷信號,提示DSP讀取數據。
如果VME從雙口RAM中“讀”數據,首先需要判斷讀數據的區域有沒有正在被DSP端“寫”,可以通過“旗語標志位”進行判斷,判斷DSP并沒有對該區域進行操作的時候,VME就可以從該區域讀取數據。