基于CPCI和光纖接口的數據采集卡設計與實現
3 CPCI驅動的開發
開發基于PCI的數據采集卡的驅動程序,主要有三個方面的問題:硬件訪問、中斷處理和DMA傳輸。
結合實際要求,從開發效率和驅動程序的執行效率兩方面考慮,這里選擇使用DriverStudio進行驅動程序的開發。DriverStudio是一整套開發、調試和檢測Windows平臺下設備驅動程序的工具軟件包。它提供了一套完整的調試和性能測試工具,例如Driver Works,Drivet Monitor和SoftICE等。DriverWorks把微軟的DDK用類的形式進行封裝,簡化了WDM驅動程序的開發,使用非常方便;SoftICE用來調試內核模式的驅動程序;DriverMonitor可以很方便地觀察驅動程序的調試信息。DriverStudio所具備的高性能工具和對現代軟件工程的實踐,很大程度上方便了設備驅動程序的編寫。所以選擇DriverStudio開發設備驅動程序。
下面以DMA傳輸為例,介紹CPCI驅動程序的開發:
編寫WDM驅動程序的DMA傳輸有特定的機制。DriverStudio中DMA整體的流程大致如下:當應用程序發出IRP_M J_READ的Irp后,驅動程序調用Irp的處理函數Handler,在這個Handler中初始化KDMATransfer,初始化完畢就調用DMAReady()函數,在DMAReady()函數中啟動首次DMA傳輸即StartDMA,傳輸完后發生中斷,在中斷里調用Continue()啟動下次傳輸,直到全部數據完成。DMA過程的流程圖如圖8所示。本文引用地址:http://www.104case.com/article/193717.htm
4 結語
文中設計的基于CPCI總線的通用雷達接收機測試系統,采用了光纖作為雷達數據傳輸的通道,具有較好的數據處理能力。實驗證明該系統的軟硬件設計是成功的,可對多型雷達的性能進行快速的測試。該設計對于數據處理要求高、實時性強、數據量大、處理算法復雜多變的雷達信號處理系統,有著重要的實際意義,具有廣闊的應用前景。
評論