a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > VxWorks操作系統下ComPactPCI總線驅動程序設計

VxWorks操作系統下ComPactPCI總線驅動程序設計

作者: 時間:2009-07-30 來源:網絡 收藏

PCI設備可以在地址空間中重定位是其重要功能之一,使得系統可合理地分配資源,甚至完全相同的兩塊PCI卡也能夠在同一內工作而不會產生地址沖突。基地址寄存器的功能是分配PCI設備的系統地址空間,在基地址寄存器中,位0(最低位)均為只讀位并且用來標識是存儲器空間還是I/O地址空間。如果該位為0,表示映射到存儲器空間。映射到I/O空間的基址寄存器寬度總是32 bit,其中位0值為1 (用硬件實現),位1為保留位并且其讀出值必須為0,其余各位用來把設備映射到I/O空間。映射到存儲器空間的基址寄存器可以是32 bit寬度,也可以是64 bit寬度。其中位0也要用硬件方式使其恒為0。位2和位1兩位用來表示映射類型,其余各位用來將設備映射到存儲器空間。
系統配置軟件通過向基址寄存器寫入全“1”后再讀回的方式確定設備要求的地址空間范圍,與地址空間無關的位其返回值為0。
下實現CompactPCI設備的過程主要包括下面步驟:
(1)查找CompaetPCI設備在中通過函數peiFindDeviee()來實現,該函數可根據給定的設備標識和供應商代碼找到相應的設備。并返回號、設備號以及功能號。函數的定義如下:

本文引用地址:http://www.j9360.com/article/173660.htm

)
(2)配置CompactPCI設備 通過提供的API函數訪問CompactPCI設備的配置空間,配置CompactPCI設備基址寄存器、中斷、ROM基地址寄存器等,可得到Compact-PCI的仔儲器空間和I/O地址空間映射、設備的中斷號等。在操作系統中訪問CompactPCI設備配置空間的函數有pciConfigInLong()、pciConfigOutLong()等,它們分別完成對CompactPCI設備配置空間的讀寫操作。這一系列操作也稱為PCI設備枚舉。然后,根據CompactPCI設備的配置參數,對不同的設備編寫初始化程序、中斷服務程序以及對PCI設備存儲空間的訪問程序。


5 中斷的響應與控制
硬件中斷處理是實時系統設計的關鍵環節,系統通過中斷與外部事件交互。為了獲得盡可能快的中斷響應時間,Vx-Works的中斷處理程序需要運行在特定的上下文中,也就是在所有任務上下文之外。因此,中斷處理不會涉及任何任務上下文的切換。QL5064接幾器件的寄存器序列巾有一個中斷控制/狀態寄存器,其偏移地址為0x68H。該寄存器可以使能或禁止CompactPCI總線的中斷,因此在系統進行中斷服務程序的配置時,必須設定該寄存器的內容,否則系統不能正常響應中斷 在VxWorks系統下可以使用pciIntConnect()函數將中斷和特定的C程序連接起來,該函數將指定的C函數與中斷向量相聯系,甬數的地址將存儲在這個中斷向量里。所以當中斷發生時,系統將調用這個被稱為中斷服務程序的函數。因此,cPCI設備的中斷響應設置主要有兩點:
(1)調用pciIntConnect()函數設置中斷服務程序,該函數的定義如下:


如果要禁止該設備的中斷響應,可以給QL5064的中斷控制寄存器寫入0x0f000000即可。
中斷服務程序ISR負責協凋系統的采集任務,在系統設計時采用信號量的方式實現任務間的同步,因此ISR的程序非常簡單,只給出和特定中斷事件相關的信號量即可。舉例如下:


VxWorks信號量是提供任務間通信、同步和互斥的最優選擇,它提供任務問的最快速通信,也是提供任務間同步和互斥的主要手段。對于同步,信號量可以協調外部事件與任務的執行。通用二進制信號量能夠滿足兩種類型的任務協調需要:互斥與同步。二進制信號量需要的系統開銷小,因而適用于高性能的需求。二進制信號量可以看成一個標記:對應的資源是可用f滿)還是不可用(空)。當任務調用函數semTake()取一個信號量時,其結果依賴于在調用的時刻信號量是否可用。如果此時信號量可用,調用semTake()的結果使信號量變為不可用,任務繼續執行;如果此時信號量不可用,調用semTake()的任務進入一個阻塞隊列,進入等待狀態該信號量變為可用阻塞狀態。通過信號量來同步整個系統中數據,可保證系統運行的實時性和可靠性。
6 結束語
采用上述控制技術,在系統中成功實現控制對多種CompactPCI板卡以及DSP信號處理板、高速A/D通道、低速A/D轉換通道、計數器通道等均能正常工作。達到系統設計要求,因此可說明VxWorks系統CompactPCI總線的與控制方法可行,保證系統實時數據采集的可靠性。

linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

上一頁 1 2 下一頁

評論


相關推薦

技術專區

關閉