基于DSP/BIoS設備驅動模型的視頻驅動程序開發
通過給外部設備編寫驅動程序是一種有效的控制外設的方法。隨著DSP的應用越來越廣泛,DSP實時系統的日趨復雜及新技術的出現,DSP處理器所連接的外部設備也是種類繁多,各不相同,而每一個外設都需要一個特定的驅動程序來支持外設的正常工作,這就要為每一個外設編寫驅動程序,這是一項十分繁雜的工作。如何能夠使系統開發人員從這些編寫繁雜的驅動程序工作中解脫出來,進而能夠專心投入到應用程序的開發中呢?TI公司提出了基于DSP/BIOS的設備驅動模型,該模型分為兩層:類驅動即與硬件不相關的層和微型驅動即與硬件相關的層。使用這種結構,應用程序只需調用類驅動的API函數,通過類驅動使用微型驅動,用微型驅動來控制外設。這種結構,將驅動程序合理分層,使得驅動程序模塊化,可移植性、復用性大大增強,縮短了驅動程序的開發時間。
本文引用地址:http://www.j9360.com/article/152508.htm1.1 類/微型驅動模型
DSP/BIOS是TI公司所設計開發的一個尺寸可裁剪的實時多任務操作系統內核,通過使用DSP/BIOS提供的豐富的內核服務,開發者能快速地創建滿足實時性能要求的精細復雜的多任務應用程序。為了使開發設備驅動更加簡單方便,提出了DSP/BIOS DeviceDriver Kit,定義了標準的設備驅動模型,一種將設備驅動分為與硬件無關和與硬件相關的雙層結構,這樣就使開發驅動程序不像以前那樣復雜了,為開發者提供了便利。這兩層結構稱為“類/微型驅動模型,它們每一層都有各自通用的接口,所以相似設備驅動程序的主要部分可以復用,驅動代碼的移植成為可能,使開發驅動的過程大大簡化。
與硬件無關的層稱為類驅動(Class Driver),它處在應用程序與微型驅動之間,提供對多線程I/O請求的串行化和同步,并且維護設備數據緩沖區,向上提供API接口供應用程序調用,向下通過適配層與微型驅動相連,實現API接口函數到微型驅動層的映射。
與硬件相關的層稱為微型驅動(Mini-driver),它處在類驅動與芯片支持庫(Chip Support Library)之間,對于類驅動的接口是統一的,即每一個微型驅動都為類驅動和DSP/BIOS設備驅動管理提供了標準接口。微型驅動采用芯片支持庫(CSL)管理外圍設備的寄存器、內存和中斷資源。但由于硬件是千差萬別的,所以微型驅動對底層硬件的操作是根據硬件的不同而不同的。對于完成同樣功能的不同外設,只需稍加修改微型驅動,而不需重新編寫驅動程序,就可以實現驅動程序的移植與復用,使驅動程序的開發過程大大簡化。類/微型驅動模型結構如圖1所示。


評論