基于VxWorks的VME從板驅動(dòng)設計與實(shí)現
摘要:基于VxWorks操作系統設計了數據采集從板的驅動(dòng)程序,程序框架上驅動(dòng)程序將對從板的操作抽象為對字符型設備的操作,驅動(dòng)程序在內部實(shí)現了數據IO操作的阻塞機制、查詢(xún)機制及信號通知機制,采用這種方式設計的驅動(dòng)程序向用戶(hù)提供了統一的接口,方便用戶(hù)使用,同時(shí)將硬件操作與應用程序分開(kāi)便于驅動(dòng)程序進(jìn)行擴展;驅動(dòng)設計工作是精密環(huán)境控制系統的一部分,驅動(dòng)程序的設計方法可以廣泛地應用于基于VME總線(xiàn)的從設備驅動(dòng)設計。
關(guān)鍵詞:VxWorks操作系統;VME總線(xiàn);設備驅動(dòng)程序;數據采集
基于VME總線(xiàn)搭建了精密環(huán)境控制系統,整個(gè)系統中基于VxWorks的VME總線(xiàn)驅動(dòng)程序連接了軟件操作與VME從板的硬件通信,VxWorks操作系統下驅動(dòng)程序的開(kāi)發(fā)是應用VxWorks操作系統的關(guān)鍵因素。本文應用通用公司的VG5-7457PowerPC嵌入式VME單板機作為主板及通用公司的VME-3122A作為數據采集從板組成數據采集系統。針對數據采集從板的通用特征詳細的設計了基于VG5硬件和VxWorks操作系統的VME數據采集從板的驅動(dòng)程序,在驅動(dòng)程序的設計過(guò)程中,特別地考慮了驅動(dòng)程序數據傳輸機制的設計,采用良好傳輸機制設計的驅動(dòng)程序具有優(yōu)良的驅動(dòng)架構,便于移植及擴展。
1 采集系統的系統結構
1.1 采集系統結構分析
采集系統基于VME總線(xiàn)實(shí)現,系統是精密環(huán)境控制的重要組成部分,它的整體結構如圖1所示。
系統以VME總線(xiàn)為整體架構,VME總線(xiàn)上使用VG5-7457PowerPC嵌入式VME單板機作VME總線(xiàn)控制器,通過(guò)VME總線(xiàn)控制數據采集設備(AD數據采集卡),同時(shí)將控制輸出經(jīng)過(guò)VME總線(xiàn)下傳到控制輸出(DA數據輸出卡),它同時(shí)通過(guò)以太網(wǎng)絡(luò )與上位機相連;數據在VME總線(xiàn)的可靠傳輸是系統實(shí)現功能的關(guān)鍵部分,這主要通過(guò)在VG5單板機上設計基于VxWorks操作系統的VME總線(xiàn)的驅動(dòng)來(lái)保證。
1.2 VG5主控板的結構分析及其對VME總線(xiàn)驅動(dòng)的支持
驅動(dòng)程序最終運行在VG5-7457單板機上,單板機的VME總線(xiàn)支持是實(shí)現單板機對VME總線(xiàn)驅動(dòng)的關(guān)鍵因素。單板機系統的VME總線(xiàn)硬件結構如圖2所示。
單板機使用UniverseⅡVME-to-PCI總線(xiàn)橋芯片實(shí)現系統的VMM總線(xiàn),芯片實(shí)際上完成了VME總線(xiàn)與PCI總線(xiàn)的操作的互相轉化,它同時(shí)具備多種轉換方式,首先可以完成2個(gè)總線(xiàn)中斷的互相轉換操作,其次可以完成通過(guò)VME總線(xiàn)訪(fǎng)問(wèn)PCI總線(xiàn),最后可以完成PIC總線(xiàn)訪(fǎng)問(wèn)VME總線(xiàn);這些轉換操作很多都是通過(guò)芯片的內部寄存器實(shí)現的。由于總線(xiàn)橋芯片的轉換能力,使得VG5-7457單板機既可以作為VME主控板使用,又可以作為從板使用。
VxWorks操作系統下將VME總線(xiàn)地址映射為CPU的本地地址,其映射可以在相關(guān)的BSP文件中定義,設計中的映射如表1所示,將VME總線(xiàn)映射為CPU本地地址后,對從板的操作就轉化為于對內存訪(fǎng)問(wèn)操作相似的讀寫(xiě)操作,使得VME總線(xiàn)的驅動(dòng)可以方便的實(shí)現。
對于操作VME總線(xiàn)區域的內存空間,系統提供了一系列的接口函數,系統提供的接口函數列表如表2所示。
寫(xiě)內存空間的函數使用svsOut*函數族來(lái)完成,需要提供給函數的參數是寫(xiě)入的地址及寫(xiě)入的數據;讀內存空間使用sysIn*函數族來(lái)完成,需要提供的參數是讀的地址,返回值是讀到的內容。函數在VxWorks的BSP中定義,使用匯編語(yǔ)言的方法實(shí)現相關(guān)的操作。
評論