基于PCI總線的雷達視頻高速數(shù)據(jù)采集接口設(shè)計
基于PCI9054的存儲器映射傳輸是核心部分。根據(jù)配置寄存器配置的Local總線三個空間的大小以及三個空間的基地址,把數(shù)據(jù)寫到相應(yīng)的存儲空間。計算機操作系統(tǒng)識別板卡正確后,自動分配存儲空間給本卡,應(yīng)用軟件應(yīng)用計算機自動分配的存儲空間進行編程,完成所需要的功能。REQ,GNT,LHOLD,LHOL-DA為PCI BUS和LocaI BUS的仲裁信號,IRDY和TRDY分別為主設(shè)備準備好信號和從設(shè)備準備好信號,當兩者同時有效時,才能真正進行數(shù)據(jù)傳輸。板卡復(fù)位或上電時,PCI9054自動裝載E2PROM中的配置信息,同時EPC2自動配置EPF10K20,即裝載程序入FP-GA。芯片PCI9054已經(jīng)整合了PCI協(xié)議,實現(xiàn)了PCI總線的接口。整個板卡設(shè)計的關(guān)鍵工作就在于FPGA程序的設(shè)計、PCI9054的配置和板卡驅(qū)動程序的編寫。PCI9054的正確配置是其正常工作的關(guān)鍵,PC操作系統(tǒng)在開機掃描總線時,正確的配置信息使操作系統(tǒng)正確識別板卡,并提示安裝驅(qū)動程序。如果配置不正確或不完整,則操作系統(tǒng)將找不到板卡,并且可能死機。單靠硬件無法將數(shù)據(jù)送到內(nèi)存供顯示讀數(shù)設(shè)備所用,設(shè)備驅(qū)動程序是連接到板卡的軟件接口。該設(shè)計中,設(shè)備驅(qū)動程序的基本功能就是完成設(shè)備的初始化,對端口的讀寫操作,對中斷的設(shè)置、響應(yīng)和調(diào)用,以及對內(nèi)存和接口設(shè)備存儲器空間的直接讀寫。這里選用的驅(qū)動程序開發(fā)工具是Windrive。Windrive與DDK和VtoolsD相比,適應(yīng)面比較窄,但是它主要針對ISA/PCI插卡,還包含一個代碼生成器Windrive Wizward和針對于PCI9054的函數(shù),所以開發(fā)比較簡單,周期比較短。文獻[4,5]在設(shè)計驅(qū)動程序之前,對欲控制的硬件設(shè)備進行了細致的分析,詳細了解硬件設(shè)備的特性。硬件設(shè)備的特性對驅(qū)動程序設(shè)計會產(chǎn)生重大的影響。需要了解的最主要特性有:
設(shè)備的總線結(jié)構(gòu),該設(shè)計中即PCI總線;
寄存器,該設(shè)計中即配置的PCI9054寄存器的值;
設(shè)備的錯誤和狀態(tài),了解如何判斷設(shè)備的狀態(tài)和錯誤信號,通過驅(qū)動程序返回給用戶程序;
中斷行為,了解設(shè)備產(chǎn)生中斷的條件和使用中斷的數(shù)量;
數(shù)據(jù)傳輸機制,是I/O傳輸、DMA傳輸,還是存儲器映射傳輸;
設(shè)備內(nèi)存,RAM的容量,與系統(tǒng)總線(PCI)對應(yīng)的基地址和范圍。
本文引用地址:http://www.ex-cimer.com/article/163481.htm
3 寄存器配置
設(shè)計好接口連接,接口設(shè)計工作只完成了50%。由于PCI9054是通用PCI接口功能芯片,它的功能還不一定能夠滿足用戶的需求,所以還要進行功能寄存器設(shè)置,以使接口電路具有特定的功能。寄存器的配置包括E2PROM初始化,以及Local功能寄存器和PCI配置寄存器的配置。
3.1 E2PROM初始化
在計算機的加電自檢期間,PCI總線的RST信號復(fù)位,PCI9054內(nèi)部寄存器的默認值作為回應(yīng)。PCI9054輸出本地LRESET信號并檢測串行E2PROM。如果串行E2PROM中的前33個比特不全為1,那么PCI9054確定串行E2PROM為非空,用戶可通過向9054的寄存器CNTRL的CNTRL29位寫1來加載E2PROM的內(nèi)容到PCI9054的內(nèi)部寄存器,配置的信息(設(shè)備識別號,供應(yīng)商代碼號,Local總線三個空間的大小以及三個空間的基地址等)事先要利用編程寫入配置寄存器中。
3.2 PCI配置寄存器的配置
配置PCI配置寄存器比較簡單。主要是填寫生產(chǎn)商ID號、器件ID號、類碼子系統(tǒng)ID號和子系統(tǒng)生產(chǎn)商ID號。對于PCI9054,其生產(chǎn)商ID號為10B5,器件ID號為9054,子系統(tǒng)號ID為9054,子系統(tǒng)ID號為10B5,類碼號為0680,表示其為橋設(shè)備中的其他橋設(shè)備類。
3.3 本地配置寄存器的配置
對于本地配置寄存器的配置就是對本地地址空間及其本地總線屬性的配置。這些配置是根據(jù)實際開發(fā)的硬件板卡的硬件資源進行配置。設(shè)備人員配置寄存器的任務(wù)就是要把某一段本地地址應(yīng)設(shè)為PCI地址。也就是當主機CPU要訪問本地地址空間時,要知道其對應(yīng)的PCI總線地址。
4 電路板實現(xiàn)與測試
PCI規(guī)范對擴展板的機械和電氣方面都有一系列的規(guī)范要求。在布板和繪圖的過程中需要特別注意一些技術(shù)要求,布出來的板子工作起來才會穩(wěn)定可靠。如:除了PCI協(xié)議中的信號線外,連接器本身的信號引腳值得注意,如板卡存在信號PRSNT1和PRSNT2;電源的退耦、PCI協(xié)議信號線的走線長度限制和擴展板上信號線的負載要求等都是在布板過程中特別應(yīng)該重視的,都要滿足PCI電氣規(guī)范的要求。
該設(shè)計中嚴格按照規(guī)范要求設(shè)計,PCI連接器上的PRSNT1而開路,PRSNT2接地,表示本板卡的最大功耗為15 W。元件的退耦電容采用0.1μF,電源的濾波電容采用10μF的電解電容。采用存儲器映射的傳輸方式,本地時鐘采用20 MHz時,通過測試,傳輸速率能夠達到20 MB/s以上,提高本地時鐘的頻率,數(shù)據(jù)傳輸率還能夠更高。
5 結(jié) 語
這里實現(xiàn)的PCI數(shù)據(jù)傳輸接口,有效地解決了系統(tǒng)的數(shù)據(jù)傳輸問題,有利于數(shù)據(jù)的實時處理,獲得了比較滿意的效果。隨著信號處理技術(shù)的發(fā)展,這種基于PCI的數(shù)據(jù)傳輸接口有著十分廣闊的應(yīng)用前景。
評論