linux系統(tǒng)pci設(shè)備驅(qū)動程序開發(fā)

linux系統(tǒng)pci設(shè)備驅(qū)動程序開發(fā)

ID:34455123

大?。?02.28 KB

頁數(shù):3頁

時間:2019-03-06

linux系統(tǒng)pci設(shè)備驅(qū)動程序開發(fā)_第1頁
linux系統(tǒng)pci設(shè)備驅(qū)動程序開發(fā)_第2頁
linux系統(tǒng)pci設(shè)備驅(qū)動程序開發(fā)_第3頁
資源描述:

《linux系統(tǒng)pci設(shè)備驅(qū)動程序開發(fā)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、維普資訊http://www.cqvip.com計算機測量與控制.2005.13(11)ComouterMeasurement&Control·1289·文章編號:16714598(2005)11—1289—03中圖分類號:文獻標(biāo)識碼:ALinux系統(tǒng)PCI設(shè)備驅(qū)動程序開發(fā)董春橋,李凱(華中科技大學(xué)環(huán)境學(xué)院,湖北武漢430074)摘要:為了促進“Linux+PCI”技術(shù)在工控領(lǐng)域中的應(yīng)用,通過對Linux系統(tǒng)中PCI局部總線規(guī)范實現(xiàn)機制和Linux設(shè)備驅(qū)動模塊的分析,給出了PCI設(shè)備驅(qū)動程序的基本結(jié)構(gòu)、內(nèi)容及開發(fā)方法;最后

2、用一個基于Linux的數(shù)據(jù)采集系統(tǒng)PCI設(shè)備驅(qū)動程序開發(fā)實例證明該方法是可行的,而且具有通用性。關(guān)鍵詞:L~nux;BIOS;PCI;設(shè)備驅(qū)動程序Development0fPCIDeviceDriversofLinuxDongChunqiao.LiKai(HuazhongUniversityofScienceandTechnology,Wuhan430074,China)Abstract:Inordertopromoteapplicationof“Linux+PCI”inindustrycontrol。theimpleme

3、ntationmechanismofPCILocalBusSpecificationinLinuxandthestructureofdevicedriversareanalyzed,andabasicframework,contentofPEIdevicedriverinLinuxanditsdevelopingmethodaregiven.Finally,allexampleofPCIdevicedriverforadatacollectionsystemt~tifiesthatthemethodisfeasiblean

4、duniversa1.Keywords:Linux;BIOS:PCI;devicedriver間由256個8位寄存器組成,分成“預(yù)定義頭標(biāo)區(qū)”(64字O引言節(jié))和“設(shè)備相關(guān)區(qū)”兩個部分。預(yù)定義頭標(biāo)區(qū)寄存器布局隨著PCI局部總線(PCILocalBus)技術(shù)在計算機系統(tǒng)中又可以分為3種,圖1為‘0’類型預(yù)定義頭標(biāo)區(qū)的寄存器布的廣泛采用,以PCI局部總線技術(shù)為接口的PCII/O設(shè)備也得局。其中有些寄存器是只可讀的,有些是可讀/寫的;有些寄到了廣泛的應(yīng)用。但大多數(shù)PCII/0設(shè)備廠商在提供PCI板卡存器是必選的,而有些是可選的。

5、其中,可選寄存器是否得到時只有比較詳細的Windows系統(tǒng)文檔,這些文檔包括Windows支持取決于PCI設(shè)備或卡的功能,但不論是否支持可選的寄存系統(tǒng)的驅(qū)動程序和相應(yīng)的測試程序等,卻往往沒有相應(yīng)的器,每種類型的布局結(jié)構(gòu)必須保持一致。Linux系統(tǒng)設(shè)備驅(qū)動程序或其他文檔,這就給以Linux系統(tǒng)為平臺的應(yīng)用帶來了阻礙。DeviceIDDeviceIDLinux系統(tǒng)經(jīng)過近幾年的快速發(fā)展,已非常成熟和穩(wěn)定,S啪8Command在各個領(lǐng)域得到了大量的應(yīng)用。在以Linux系統(tǒng)為平臺的虛擬a蚰lCodeRev.Ⅲ嘶咖mm喜寫礎(chǔ)儀表和控制

6、系統(tǒng)中,各種符合PCI局部總線規(guī)范的I/O卡或設(shè)BISTlH1eapder:備日益得到了廣泛的應(yīng)用。因而,研究PCI局部總線規(guī)范在Linux系統(tǒng)中的實現(xiàn)機制、開發(fā)Linux系統(tǒng)的PCI設(shè)備驅(qū)動程序就具有非?,F(xiàn)實的應(yīng)用價值。BaseAdd~ssae~sten1PCI簡介PCI局部總線規(guī)范是一種替代ISA總線的技術(shù)規(guī)范,其CardbusCISPointer目標(biāo)一是在計算機與外設(shè)之間提供性能更好的數(shù)據(jù)傳輸,二是SubsystemIDSubsystemv即dOrID使數(shù)據(jù)傳輸獨立于CPU體系平臺,三是取消硬件跳線和手工Expans

7、ionROMBaseAddress配置,實現(xiàn)即插即用(PnP)的功能。為了實現(xiàn)上述目標(biāo),ReservedIReservedPCI局部總線規(guī)范詳細定義了PCI技術(shù)的硬件接口和相應(yīng)的軟Max件接13L2]。本文只介紹與PCI設(shè)備驅(qū)動程序有關(guān)的基本內(nèi)容,_LatIMin_Gnt’IntLeirnreupt其他部分參見文獻[1]和文獻[2]。圖1‘0’類型預(yù)定義頭標(biāo)區(qū)的寄存器布局PCI局部總線規(guī)范通過對硬件接口的定義不僅實現(xiàn)了性能在上述各寄存器中,PCI設(shè)備驅(qū)動程序最為關(guān)注的寄存器更好的數(shù)據(jù)傳輸和獨立于CPU平臺的目標(biāo),而且還利用

8、標(biāo)準(zhǔn)并不多。其中,“VendorID”和“DeviceID”用于標(biāo)識設(shè)備;化的配置空間(configur~ionspace)和對該空間操作函數(shù)的定“BaseAddressRegisters”用于標(biāo)識設(shè)備所占用存儲器或端13的義實現(xiàn)了對PCI設(shè)備的自動配置和各種查詢功能。PCI配置空基址,共6個字,最多可

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。