




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、PCI9052接口電路的功能及應(yīng)用1PCI總線目標(biāo)接口芯片PCI9052及其應(yīng)用基于DSP的PCI總線數(shù)據(jù)采集系統(tǒng)的研究10PCI9052總線接口芯片及其ISA模式應(yīng)用13PCI總線接口芯片PCI9052及其應(yīng)用基于PCI總線的高速信號采集卡設(shè)計基于PCI總線的單圈絕對式光電軸角編碼器實時數(shù)據(jù)采集系統(tǒng)基于FPGA的PCI接口控制器模型的設(shè)計一種基于DSP的PCI嵌入式設(shè)備設(shè)計與實現(xiàn)基于PCI總線四軸運動控制卡的設(shè)計與研究CPCI總線與VME總線橋接底板的研制PCI9052接口電路的功能及應(yīng)用摘要:PCI總線是Pentium主機最常見的總線,基于PCI總線形成的pactPCI和PXI總線廣泛地應(yīng)
2、用在儀器和自動化領(lǐng)域。PCI適配卡的接口設(shè)計變得越來越重要,介紹PCI專用接口電路PCI9052的功能,通過一個例子介紹它的應(yīng)用。關(guān)鍵詞:外部設(shè)備互連總線;局部總線;接口電路;PCI9052;應(yīng)用1引言PCIPeripheralponentInterconnect總線具有獨立于處理器、高數(shù)據(jù)傳速率、即插即用、低功耗、適應(yīng)性強等特點,已成為微型機的主流總線?;赑CI總線形成的pactPCI和PXI總線廣泛應(yīng)用于儀器和自動化領(lǐng)域。隨著PCI總線的廣泛應(yīng)用,其接口的設(shè)計開發(fā)顯得尤為重要。由于PCI總線的獨特性能,如信號負(fù)載能力、支持?jǐn)?shù)據(jù)的突發(fā)傳送、地址/數(shù)據(jù)、命令/字節(jié)使能信號總線復(fù)用等,使中小規(guī)
3、模的器件難以實現(xiàn)接口電路。實現(xiàn)PCI總線接口一般采用CPLD或FPGA設(shè)計PCI接口,這種方法難度很大;另一種是采用專用的PCI接口電路,使設(shè)計開發(fā)者免除繁瑣的時序分析,縮短開發(fā)周期,降低開發(fā)本錢。本文介紹PCI9052接口電路的功能及其在PCI板卡設(shè)計中的應(yīng)用。2接口電路PCI9052是PLX公司開發(fā)的低價位PCI總線目標(biāo)接口電路,功耗低,采用PQFP型160引腳封裝,符合PCI2.1規(guī)X,它的局部總線(LOCALBUS)可以通過編程設(shè)置為8/16/32位的(非)復(fù)用總線,數(shù)據(jù)傳送率可到達132Mb/s。提供了ISA接口,可以使ISA適配器迅速、低本錢地轉(zhuǎn)換到PCI總線上。主要功能與特性如下
4、所述:異步操作。PCI9052的LocalBus與PCI總線的時鐘相互獨立運行,兩總線的異步運行便于高、低速設(shè)備的兼容。LocalBus的運行時鐘頻率X圍為0MHz40MHz,TTL電平,PCI的運行時鐘頻率X圍為0MHz33MHz。支持突發(fā)操作。PCI9052提供一個64字節(jié)的寫FIFO和一個32字節(jié)的讀FIFO,從而支持預(yù)取模式即突發(fā)操作。中斷產(chǎn)生器??梢杂蒐ocalBus的二個中斷信號LINTil和LINTi2產(chǎn)生一個PCI中斷信號INTA串行EEPROM接口,用于存放PCI總線和Local總線的配置信息。5個局域總線地址空間和4個片選,基址和地址X圍可以由串行EEPROM或主控設(shè)備進展
5、編程。大/小Endian模式的字節(jié)交換,有二種交換字節(jié)順序的輸出方式??偩€驅(qū)動。所有地址、數(shù)據(jù)和控制信號都有PCI9052直接驅(qū)動,不用額外的驅(qū)動電路。Localbus等待狀態(tài)。除了等待信號LRDYI#用于握手之外,PCI9052還有一個內(nèi)部等待產(chǎn)生器(包括地址到數(shù)據(jù)周期、數(shù)據(jù)到數(shù)據(jù)周期和數(shù)據(jù)到地址周期的等待)。PCI鎖定機制。主控設(shè)備可以通過鎖定信號占有對PCI9052的唯一權(quán)。ISA總線模式。PCI9052提供一個ISA邏輯接口,用戶可直接使PCI總線和ISA總線相連,可以非常容易地將ISA設(shè)計轉(zhuǎn)換到PCIoPCI9052的接口示意圖如圖1所示。圖1PCI總線接口示意圖3PCI9052的功
6、能及操作3.1 初始化上電時,PCI總線的RST#信號將PCI9052的內(nèi)部存放器設(shè)置為缺省值,同時,PCI9052輸出局部復(fù)位信號LRESET#,并且檢查EEPROM是否存在。如果設(shè)備上裝有EEPROM,且EEPROM的第一個16字節(jié)非空,那么,PCI9052根據(jù)EEPROM內(nèi)容設(shè)置內(nèi)部存放器,否那么設(shè)為缺省值。3.2 復(fù)位PCI9052支持二種復(fù)位方式:硬件復(fù)位和軟件復(fù)位。硬件復(fù)位是PCI9052總線接口的RST#信號輸入有效時將引起整個PCI9052復(fù)位,并輸出LRESET#局部復(fù)位信號。軟件復(fù)位是PCI總線上的主機可以通過設(shè)置控制存放器TRL(50H)中的軟件復(fù)位字節(jié)(Bit30)來對
7、PCI9052復(fù)位,并輸出LRESET#信號。此時,PCI和局部總線的配置存放器的值將保持不變。當(dāng)TRL中的軟件復(fù)位字節(jié)有效時,PCI9052僅對配置存放器的應(yīng)答,對局部總線的不響應(yīng)。PCI9052保持這種狀態(tài)直到PCI總線上的主機去除軟件復(fù)位字節(jié)。3.3 對串行EEPROM接口的復(fù)位后,PCI9052開場讀串行EEPROM,假設(shè)讀出的第一個字非FFFFH,那么PCI9052認(rèn)為有一個有效的EEPROM存在,并且繼續(xù)進展讀操作,否那么,認(rèn)為EEPROM無效。PCI總線的主設(shè)備可以讀、寫連接在PCI9052上的串行EEPROM。對其進展讀、寫操作之前需要將控制存放器TRL25(使能位)設(shè)置為“1
8、”,并控帶TRL24位以產(chǎn)生串行EEPROM的時鐘,然后,從EEDI送入指令代碼。如果在指令代碼之后由EEDO輸出“0”,那么說明可以對其進展讀、寫。需要完畢操作時,只要將TRL25設(shè)置為“0”即可。3.4 對內(nèi)部存放器PCI9052提供了二種類型的片內(nèi)存放器,即PCI配置存放器和局部配置存放器,二者都只能由PCI總線和串行EEPROM,也可以通過設(shè)置存放器TRL13:12制止對后者的,這樣,極大地增強了接口設(shè)計的靈活性。3.5 直接數(shù)據(jù)傳輸模式PCI9052支持PCI總線上的主處理器對局部總線上的設(shè)備進展直接。PCI9052的配置存放器將映射到局部地址空間。片內(nèi)的讀寫FIFO存儲器使PCI9
9、052支持PCI總線與局部總線之間進展高性能的猝發(fā)傳送。PCI總線主控局部總線示意圖如圖2所示。圖2PCI主控直接局部示意圖3.6 PCI中斷(INTA#)的產(chǎn)生要產(chǎn)生PCI中斷INTA#,首先將存放器INTCSR6(PCI中斷使能位)設(shè)置為“1”,如果需要以軟件方式產(chǎn)生中斷,那么只需將INTCSR7(軟件中斷位)設(shè)置為“1”如果系統(tǒng)設(shè)計方案中選用由局部總線上的設(shè)備產(chǎn)生中斷信號INTil和INTi2、再生成PCI中斷INTA#的方式,只要將存放器INTCSR的相關(guān)位按表1進展設(shè)置,復(fù)位后INTCSR的值全部為“0”。表1存放器INTCSR相關(guān)的設(shè)置位含義設(shè)置為“1”設(shè)置為“0”03INTil(
10、INTi2)使能使能制止14極性高電平有效低電平有效25狀態(tài)中斷激活中斷末激活89選擇使能邊緣觸發(fā)電平觸發(fā)1011邊緣觸發(fā)去除位去除邊緣觸發(fā)保持4應(yīng)用實例PCI9052是功能非常強大的PCI接口電路,用它設(shè)計PCI適配卡將使接口變得非常方便。圖3是PCI主處理機讀取SRAM的接口示意圖,其主要功能是實現(xiàn)對RAM的單次或突發(fā)讀、寫操作。圖3存儲器突發(fā)讀寫示意圖4.1 電路連接按照圖3中的連接電路,對于SRAM主要有以下幾個引腳:A17,0、I/O7,0、OE、CE、WE等。地址線A17,2與本地地址線LA17,2相連,根據(jù)PCI9052的LBE0,3#的定義,這里用8位數(shù)據(jù)總線將LBE0#與A0
11、連接,LBE1#與A1連接,OE與PCI9052的CS0#相連。PCI9052為設(shè)計人員提供了4個片選信號CS3:0#,可以為4個設(shè)備提供片選信號,這樣,可以防止設(shè)計人員在設(shè)計電路時設(shè)計片選解碼電路,其地址和X圍可由其對應(yīng)的內(nèi)部存放內(nèi)部本地存放器配置。串行EEPROM用于存儲配置存放器內(nèi)的配置信息,可以采用NM93C46或與之兼容的存儲器。4.2 存放器設(shè)定電路連接好后,要使電路能正常工作,必須對PCI9052內(nèi)部存放器進展配置。根據(jù)電路性能及特點,應(yīng)將存放器設(shè)定為非復(fù)用工作方式,采取存儲器映射,8位數(shù)據(jù)總線。局部總線0的基地址存放器值為240001H,其地址X圍存放器值為3FFF8H,其描述
12、存放器值為39H;片選0基址存放器的初始值為4C0001;命令存放器的初始值為02H;狀態(tài)存放器的初始值為800H,其他存放器采用默認(rèn)值。確定好各個存放器的值后,應(yīng)依據(jù)一定的次序?qū)⒋娣牌鞯某跏贾祵懭隕EPROM。4.3 驅(qū)動程序的開發(fā)為了從PCI總線配置存放器中獲得主機動態(tài)分配的映射基址并對映射端口進展讀寫,必須編寫驅(qū)動程序。編寫Windows驅(qū)動程序時,可以使用DDK,但難度較大。為了簡化驅(qū)動程序開發(fā),可使用Jungo公司推出的WinDriver開發(fā)工具。WinDriver可自動生成VxD驅(qū)動程序及相應(yīng)的高級函數(shù)。使用者不需具備Windows驅(qū)動程序開發(fā)知識,所生成的高級函數(shù)可直接在VC或C
13、Builder等高級編程語言中調(diào)用。5結(jié)論實用證明,用專用PCI接口電路對設(shè)計PCI接口卡帶來很大的方便。本文主要介紹PLX公司的PCI9052專用接口電路,設(shè)計者可根據(jù)需要選用其他接口電路,不需要ISA接口時,可選用PCI9050;需要DMA數(shù)據(jù)傳送時,可選用PCI9054。專用接口電路是設(shè)計PCI適配卡的最正確方法,不但大大縮短了設(shè)計周期,而且有利于驅(qū)動程序的開發(fā)。參考文獻1李貴山.戚德虎.PCI局部總線開發(fā)者指南M.XX:XX電子科技大學(xué),1997.2楊全勝.胡友彬.現(xiàn)代微機原理與接口技術(shù)M.:電子工業(yè),2002.3TomShanley,DonAnderson,X暉譯.PCI系統(tǒng)構(gòu)造M.
14、:電子工業(yè),2000.4.4 PCI中斷(INTA#)的產(chǎn)生要產(chǎn)生PCI中斷INTA#,首先將存放器INTCSR6(PCI中斷使能位)設(shè)置為“1”,如果需要以軟件方式產(chǎn)生中斷,那么只需將INTCSR7(軟件中斷位)設(shè)置為“1”如果系統(tǒng)設(shè)計方案中選用由局部總線上的設(shè)備產(chǎn)生中斷信號INTi1和INTi2、再生成PCI中斷INTA#的方式,只要將存放器INTCSR的相關(guān)位按表1進展設(shè)置,復(fù)位后INTCSR的值全部為“0”。表1存放器INTCSR相關(guān)的設(shè)置位含義設(shè)置為“1”設(shè)置為“0”03使能使能制止14極性高電平有效低電平有效25狀態(tài)INTil(INTi2)中斷激活中斷末激活89選擇使能邊緣觸發(fā)電平
15、觸發(fā)1011邊緣觸發(fā)去除位去除邊緣觸發(fā)保持4應(yīng)用實例PCI9052是功能非常強大的PCI接口電路,用它設(shè)計PCI適配卡將使接口變得非常方便。圖3是PCI主處理機讀取SRAM的接口示意圖,其主要功能是實現(xiàn)對RAM的單次或突發(fā)讀、寫操作。圖3存儲器突發(fā)讀寫示意圖4.1 電路連接按照圖3中的連接電路,對于SRAM主要有以下幾個引腳:A17,0、I/O7,0、OE、CE、WE等。地址線A17,2與本地地址線LA17,2相連,根據(jù)PCI9052的LBE0,3#的定義,這里用8位數(shù)據(jù)總線將LBE0#與A0連接,LBE1#與A1連接,OE與PCI9052的CS0#相連。PCI9052為設(shè)計人員提供了4個片選
16、信號CS3:0#,可以為4個設(shè)備提供片選信號,這樣,可以防止設(shè)計人員在設(shè)計電路時設(shè)計片選解碼電路,其地址和X圍可由其對應(yīng)的內(nèi)部存放內(nèi)部本地存放器配置。串行EEPROM用于存儲配置存放器內(nèi)的配置信息,可以采用NM93C46或與之兼容的存儲器。4.2 存放器設(shè)定電路連接好后,要使電路能正常工作,必須對PCI9052內(nèi)部存放器進展配置。根據(jù)電路性能及特點,應(yīng)將存放器設(shè)定為非復(fù)用工作方式,采取存儲器映射,8位數(shù)據(jù)總線。局部總線0的基地址存放器值為240001H,其地址X圍存放器值為3FFF8H,其描述存放器值為39H;片選0基址存放器的初始值為4C0001;命令存放器的初始值為02H;狀態(tài)存放器的初始
17、值為800H,其他存放器采用默認(rèn)值。確定好各個存放器的值后,應(yīng)依據(jù)一定的次序?qū)⒋娣牌鞯某跏贾祵懭隕EPROM。4.3 驅(qū)動程序的開發(fā)為了從PCI總線配置存放器中獲得主機動態(tài)分配的映射基址并對映射端口進展讀寫,必須編寫驅(qū)動程序。編寫Windows驅(qū)動程序時,可以使用DDK,但難度較大。為了簡化驅(qū)動程序開發(fā),可使用Jungo公司推出的WinDriver開發(fā)工具。WinDriver可自動生成VxD驅(qū)動程序及相應(yīng)的高級函數(shù)。使用者不需具備Windows驅(qū)動程序開發(fā)知識,所生成的高級函數(shù)可直接在VC或CBuilder等高級編程語言中調(diào)用。5結(jié)論實用證明,用專用PCI接口電路對設(shè)計PCI接口卡帶來很大的方
18、便。本文主要介紹PLX公司的PCI9052專用接口電路,設(shè)計者可根據(jù)需要選用其他接口電路,不需要ISA接口時,可選用PCI9050;需要DMA數(shù)據(jù)傳送時,可選用PCI9054。專用接口電路是設(shè)計PCI適配卡的最正確方法,不但大大縮短了設(shè)計周期,而且有利于驅(qū)動程序的開發(fā)。參考文獻1李貴山.戚德虎.PCI局部總線開發(fā)者指南M.XX:XX電子科技大學(xué),1997.2楊全勝.胡友彬.現(xiàn)代微機原理與接口技術(shù)M.:電子工業(yè),2002.3TomShanley,DonAnderson,X暉譯.PCI系統(tǒng)構(gòu)造M.:電子工業(yè),2000.PCI總線目標(biāo)接口芯片PCI9052及其應(yīng)用摘要:PCI9052是PLX公司繼P
19、CI9050之后新推出的一種低本錢的PCI總線目標(biāo)接口芯片,它傳輸速率高數(shù)據(jù)吞吐量大,可防止用戶直接面對復(fù)雜的PCI總線協(xié)議。文中主要介紹了PLX公司的PCI總線目標(biāo)接口芯片的功能與應(yīng)用,并給出了具體的應(yīng)用設(shè)計實例。關(guān)鍵詞:PCI總線局部總線配置空間PCI9052目前,PCI總線已成為新一代個人計算機的標(biāo)準(zhǔn)總線,它是一種高性能的32/64位地址數(shù)據(jù)復(fù)用總線,總線時鐘頻率的033MHz。它不象ISA異步總線那樣把地址尋址和數(shù)據(jù)讀寫控制信號都交由微處理器產(chǎn)生,而是一種獨立于處理器的同步總線,可以支持猝發(fā)傳送。為支持即插即用功能,PCI總線規(guī)X定義了264字節(jié)的配置空間。由于PCI總線協(xié)議比擬復(fù)雜,
20、因而其接口電路實現(xiàn)起來比擬困難,但采用通用PCI接口芯片即可很好地解決這個問題。PCI通用接口芯片對于PCI協(xié)議的良好支持,以及提供應(yīng)設(shè)計者的良好接口都大大減少了設(shè)計者的工作量。現(xiàn)有的PCI接口芯片主要有AMCC公司的MACCS59XX系列和PLX公司的PLX系列。本文將對PLX公司的PCI9052總線目標(biāo)接口芯片的功能及其在PCI板卡設(shè)計中的應(yīng)用進展介紹。1PCI9052的功能特點PCI9052是PLX公司繼PCI9050之后新推出的、可用于低本錢適配器的總線目標(biāo)接口芯片。PCI9052與PCI9050一樣,可提供用于適配卡的小型高性能PCI總線目標(biāo)附屬接口以使ISA適配器可以迅速、低本錢地
21、轉(zhuǎn)換到PCI總線上。采用PCI9052可使適配卡上的I/O數(shù)據(jù)傳送速度從PCI9052可使適配卡上的I/O數(shù)據(jù)傳送速度從ISA總線的8MHz提高到PCI的33MHzoPC2江密嗑尊圖PCJ9052的信號接口示意圖PCI9052的主要功能與特性如下: 符合PCI2.1規(guī)X,支持低本錢附屬適配器; 帶有五個局域總線地址空間和四個片選; 具有雙向FIFO,可用于零等待狀態(tài)突發(fā)操作 PCI總線的傳輸速度可高達132兆字節(jié)/秒;支持多路復(fù)用和非多路復(fù)用的8位、16位和32位通用局域總線 支持局域總線與PCI時鐘的異步運行; 支持Big/LittleEndian編碼字節(jié)轉(zhuǎn)換; 支持來自兩個局域總線的中斷所
22、生成的PCI中斷; 可用串行EEPROM裝載配置信息;具有ISA模式,支持PCI總線到ISA總線的單周期存儲器8位、16位讀寫和I/O圖1所示是PCI9052的信號接口示意圖。2PCI9052的應(yīng)用操作2.1 初始化在上電時,PCI總線的RST信號有效,同時,PCI9052輸出局部復(fù)位信號LRESET并檢查EEPROM是否存在數(shù)值。假設(shè)存在那么根據(jù)EEPROM中的內(nèi)容設(shè)置內(nèi)中存放器,否那么設(shè)為缺省值。PCI配置存放器只能通過EEPROM或PCI主機CPU來進展設(shè)置。2.2 復(fù)位PCI9052總線接口在RST信號輸入有效時將引起整個PCI9052的復(fù)位,并輸出LRESET局部復(fù)位信號。PCI總線
23、上的主機可以通過設(shè)置控制存放器中的軟件復(fù)位比特來對PCI9052進展復(fù)位,并輸出LRESET信號。2.3串行存儲器接口復(fù)位后,PCI9052開場讀串行EEPROM,假設(shè)讀出的第一個字非FFFFH,那么PCI9052繼續(xù)讀操作,否那么認(rèn)為EEPROM無效。對PCI9052來講,EEPROM的前四個字節(jié)應(yīng)為52H、90H、B5H和10H,其中9052H為設(shè)備號,10B5H為廠商編號。2.4存放器PCI9052的內(nèi)部存放器可通過PCI總線的主機CPU和串行EEPROM進展,這些內(nèi)部存放器分為PCI配置存放器和局部總線配置存放器。主要有以下幾種:設(shè)備與廠商存放器:該存放器位于PCI配置存放器的起始處,
24、用于標(biāo)識設(shè)備類別及制造廠家狀態(tài)存放器:狀態(tài)存放器內(nèi)含與PCI總線相關(guān)的事件信息;命令存放器:用來控制設(shè)備對PIC的響應(yīng);''局部配置存放器存儲器的PCI基地址存放器:系統(tǒng)BIOS利用此存放器為PCI9052局部配置存放器的存儲器分配一段PCI地址空間,X圍為128字節(jié),實始化時,主機對存放器寫入FFFFFFFF,然后讀回FFFFFF70,以確定其占用空間為128字節(jié);局部配置存放器I/O的PCI基地址存放器:系統(tǒng)BIOS利用此存放器為PCI9052局部配置存放器的I/O分配一段PCI地址空間;局部地址空間0的PCI基地址存放器:系統(tǒng)BIOS利用此存放器為PCI9052局部地址空
25、間0的分配一段PCI地址空間;PCI主機處理可以直接對局部上的設(shè)備進展讀/寫操作。PCI9052配置存放器能夠映射到局部的地址空間。同時片內(nèi)的讀寫FIFO使PCI9052能夠支持PCI總線與局部總線間的高性能猝發(fā)傳送。PCI總線主控局部總線的示意圖如圖2所示。2.5 局部總線ISA接口模式PCI接口卡圖3PCI9052接口卡框圖PCI9052的新功能是它直接提供應(yīng)用戶個ISA邏輯接口,從而保證了ISA至IPCI的平滑轉(zhuǎn)換,另外,ISA接口還能支持8/16位存儲器或I/O設(shè)備。用戶通過對EEPROM的編程可將PCI9052置為ISA接口模式在ISA接口模式下,LRESET信號將由低有效變?yōu)楦哂行?/p>
26、,并可將局部總線空間2、3配置為無復(fù)用方式。3基于PCI9052的PCI接口卡設(shè)計利用PCI總線目標(biāo)接口芯片PCI9052設(shè)計PCI接口卡非常簡便圖3是筆者設(shè)計的PCI總線數(shù)據(jù)采集卡的原理框圖。圖中的數(shù)據(jù)采集電路用來完成數(shù)據(jù)的采集與存儲,而PCI總線上的主機CPU可通過PCI9052直接讀取存儲器中的數(shù)據(jù)。4完畢語由于PCI總線數(shù)據(jù)吞吐量大,傳輸速率高,從而大大改善了數(shù)據(jù)傳輸?shù)摹捌款i”問題。所以,在未來的微機接口設(shè)計中基于PCI總線的設(shè)計在將成為主流。當(dāng)然,PCI總線協(xié)議比擬復(fù)雜,設(shè)計PCI控制接口難較大。目前,一般采用兩種方式:一種是使用ALTERA,XILINX等公司的FPGA系列并使用其
27、元件庫;另一種方法是使用成型接口芯片如AMCC公司的S5933或PLX公司的PCI905X系列等。而專用PCI接口芯片的使用將防止用戶直接面對復(fù)雜的PCI總線協(xié)議,因此,可以降低設(shè)計難度,從而使用戶能夠集中精力解決具體的應(yīng)用問題以縮短開發(fā)周期?;贒SP的PCI總線數(shù)據(jù)采集系統(tǒng)的研究中國電子市場.DZSC.黃濤,付勝波(XX理工大學(xué)信息工程學(xué)院,XXXX430070)i引言隨著數(shù)字信號處理器性能的不斷提高及其本錢與售價的大幅下降,數(shù)字信號處理應(yīng)用領(lǐng)域飛速擴展,信號處理進入了一個新的開展時期。同時隨著計算機技術(shù)以及互聯(lián)網(wǎng)絡(luò)技術(shù)的不斷開展,越來越多的數(shù)據(jù)需要經(jīng)過計算機來進展處理、存儲、傳輸籌操作。
28、計算機的應(yīng)用已經(jīng)普及我們生活的每一個角落。由于計算機本身的特點,通用計算機通常僅負(fù)責(zé)沒有實時性要求的工作,而不適于進展實時性要求很高的數(shù)字信號處理。將計算機和DSP有機地結(jié)合起來,充分利用各自的優(yōu)點,它們將會相得益彰,滿足現(xiàn)實應(yīng)用中對數(shù)據(jù)實時處理能力、數(shù)據(jù)傳輸能力以及數(shù)據(jù)管理能力提出的越來越高的要求。PCI總線以其眾多優(yōu)點在計算機中具有不可取代的作用,采用PCI總線使DSP與計算機通信可以很好地滿足其對高速數(shù)據(jù)傳輸?shù)囊?。本文以實際開發(fā)系統(tǒng)為背景,以TI公司的TMS320VC5402與PLX公司的PCI9052為根底。詳細(xì)論述了基于DSP的PCI總線構(gòu)造的數(shù)據(jù)采集系統(tǒng)硬件及軟件設(shè)計方案和實現(xiàn)方
29、法。2數(shù)據(jù)采集系統(tǒng)硬件設(shè)計2. 1系統(tǒng)構(gòu)造及原理基于DSP的PCI總線高速數(shù)據(jù)采集系統(tǒng)的構(gòu)造如圖1所示,它主要由A/D轉(zhuǎn)換器、DSP數(shù)據(jù)讀取及處理、PCI通信接口和PC機等局部組成。模擬信號經(jīng)A/D采樣后由DSP通過并行I/O讀取,并將處理后的數(shù)據(jù)通過PCI總線送到通用計算機做進一步處理1。圖1系統(tǒng)端網(wǎng)圉A/D轉(zhuǎn)換器采用TI公司的TLC5510,TLC5510為8bit、20MS/s的高速并行A/D轉(zhuǎn)換器。TLC5510在每個時鐘的下降沿采樣,該采樣點的轉(zhuǎn)換數(shù)據(jù)經(jīng)過2.5個延遲后,在時鐘的上升沿輸出,也就是每個點的轉(zhuǎn)換時間為2.5個時鐘周期,一旦轉(zhuǎn)換流水線啟動,那么在每個時鐘的上升沿都有一個轉(zhuǎn)
30、換數(shù)據(jù)輸出DSP與計算機之間的通信由接口電路PCI9052實現(xiàn)。PCI9052是PLX公司推出的一種簡單、高效的PCI從設(shè)備接口,可實現(xiàn)多種外設(shè)局部總線和PCI總線的互連。根據(jù)PCI規(guī)X,主設(shè)備和從設(shè)備的劃分本質(zhì)上是確定數(shù)據(jù)傳輸雙方與被的能力和關(guān)系。在此,PCI9052只能由主機或其它擁有總線主控制能力的設(shè)備進展數(shù)據(jù)的讀寫操作。但由于其內(nèi)部有64Byte寫FIFO和32Byte讀FIFO,使PCI9052的局部總線和PCI總線能互相獨立工作,可支持傳輸速度為132Mb/s的突發(fā)傳輸支DSP采用TI公司的TMS320VC5402,它的處理能力可到達100Mb/s,具有改良型的8位HPI接口,有1
31、6K*16BitDARAM,以及4K*l6BitROM存儲空間。具有較高的性價比3。2. 2PCI9052與TMS320VC5402的接口PCI9052的局部總線設(shè)置為8位局部總線,采用地址數(shù)據(jù)非復(fù)用模式,PCI9052和TMS320VC5402的接口電路如圖2所示4,5。此時,LBE1為LA1,LBE0為LA0。將PCI9052的LBE0接HPI的HBIL,用以區(qū)分第一字節(jié)和第二字節(jié)。PCI9052的LA17接TMS320VC5402的HTL1,LA16接HC-NTL0,以選擇HPI存放器。PCI9052的LAD0:7接TMS320VC5402的HD7:0°TMS320VC540;
32、的HINT反向后接至PCI9052的LINT1,之所以反向是由于HINT低電平有效,而UNT1是高電平有效。PCI9052的LW/R反向后接至TMS320VC5402的HR/W,因為LW/R高電平表示寫,低電平表示讀;而HR/W高電平表示主機要讀HPI,低電平表示主機要寫HPIoPCI9052的CS0與CS1相或后連接至HCS,RD和WR分另U連接至UHDS1,HDS2。TMS320VC5402的LRDY通過一定的邏輯組合再加上一個D觸發(fā)器與PCI9052的LRDY相連以實現(xiàn)PCI9052與HPI的同步。PCI9052局部時鐘采用40MHz。其中CPLD選用EPM7128,使用MAX+PLUS
33、II進展設(shè)計。圖2KJ9U52和口402的it接示J&圖HPI主機接口采用存放器的方式來進展DSP內(nèi)部數(shù)據(jù)的讀寫,把HPI口單純映射到PCI的I/O空間或者存儲器空間都有不可防止的缺點,因此本接口電路采用雙映射方式,利用映射來控制、地址存放器和單個數(shù)據(jù)口,而利用存儲器映射來連續(xù)數(shù)據(jù)口。以實現(xiàn)TMS320VC5402與PCI9052之間方便、高效的數(shù)據(jù)通信6。3數(shù)據(jù)采集系統(tǒng)軟件的設(shè)計數(shù)據(jù)采集系統(tǒng)的軟件設(shè)計包括三個局部:DSP上的采集程序及響應(yīng)程序。數(shù)據(jù)采集卡的驅(qū)動程序,在驅(qū)動程序上構(gòu)建的應(yīng)用程序。驅(qū)動程序是實現(xiàn)DSP與計算機通信的關(guān)鍵,本文主要介紹設(shè)備驅(qū)動模型及其初始化的設(shè)計方法。3.
34、1驅(qū)動程序模型Win2000不支持直接硬件,虛擬驅(qū)動器依賴運行在內(nèi)核模式的真正的驅(qū)動器。內(nèi)核模式驅(qū)動程序使用系統(tǒng)級代碼編寫,且運行在內(nèi)Windows驅(qū)動模式的驅(qū)動程序核模式下,因為內(nèi)核模式允許直接硬件。內(nèi)核驅(qū)動程序可被進一步分成遺留模式的驅(qū)動程序和(WDM)。Windows驅(qū)動程序模型(WDM)如圖3所示。圖中左邊是一個設(shè)備對象堆棧。設(shè)備對象是系統(tǒng)為幫助軟件管理硬件而創(chuàng)立的數(shù)據(jù)構(gòu)造。處于堆棧最底層的設(shè)備對象稱為物理設(shè)備對象(PDO)o在設(shè)備對象堆棧的中間某處有一個功能設(shè)備對象(FDO)oFDO的上面和下面還會有一些過濾設(shè)備對象。位于FDO上面的過濾設(shè)備對象稱為上層過濾器,位于FDO下面的過濾器
35、設(shè)備對象稱為下層過濾器。ISP呼“昌據(jù)動現(xiàn)吊弓聲)H下居區(qū)通國罷動物丹匕4r總統(tǒng)麻動樣片k-J圖3WDM聚巾程序鉗以總線驅(qū)動器的任務(wù)之一就是枚舉總線上的設(shè)備。并為每個設(shè)備創(chuàng)立一個PDOo一旦總線驅(qū)動器程序檢查到新硬件存在,PnP管理器就創(chuàng)立一個PDO,創(chuàng)立完P(guān)DO后,PnP管理器參照注冊表中的信息查找與這個PDO相關(guān)的過濾器和功能驅(qū)動程序。系統(tǒng)安裝程序負(fù)責(zé)這些注冊表項,而驅(qū)動程序包中控制硬件安裝的INF文件負(fù)責(zé)添加其他表項。這些表項定義了過濾器和功能驅(qū)動程序在堆棧中的次序。3. 2驅(qū)動程序的初始化PnP管理器先裝入硬件需要的驅(qū)動程序,然后再調(diào)用驅(qū)動程序中的AddDevice函數(shù)。一個驅(qū)動程序可
36、以被多個類似的硬件使用。但驅(qū)動程序的某些全局初始化操作只能在第一次被裝入時執(zhí)行一次。而DriverEntry例程就是用于這個目的。DriverEntry是內(nèi)核模式驅(qū)動程序主入口點常用的名字。I/O管理器按下面方式調(diào)用該例程:vimyMTTAWSDriverEnuy(LNPDRVER_QHJECTIMPUNICOl>E_STRINGHyi與Pulh)DriverEntry的第一個參數(shù)是一個指針,指向一個被初始化的驅(qū)動程序?qū)ο?,該對象代表用戶的?qū)動程序。DriverEntry的第二個參數(shù)是設(shè)備效勞鍵鍵名,其主要工作是把各種函數(shù)指針填入驅(qū)動程序?qū)ο蟆_@些指針為操作系統(tǒng)指明了驅(qū)動程序容器中各種子
37、例程的位置。PnP管理器先裝入最底層的過濾器驅(qū)動程序并調(diào)用其AddDevice函數(shù)。該函數(shù)創(chuàng)立一個FiDO,這樣就在過濾器驅(qū)動程序和FiDO之間建立了水平連接。然后AddDevice把PDO連接到FiDO上。PnP管理器繼續(xù)下上執(zhí)行,裝入并調(diào)用每個底層過濾器、功能驅(qū)動程序、高層過濾器,直到完成這個堆棧。該函數(shù)的原型如下:YIT4TLsAddOiirr(PUHJVEJLURJECTlriwrflbl.FDEYICE_OBJECT聞的DriverObject參數(shù)指向一個驅(qū)動程序?qū)ο?,就是在DriverEntry例程中初始化的那個驅(qū)動程序?qū)ο蟆DO參數(shù)指向設(shè)備堆棧底部的物理設(shè)備對象。AddDevi
38、ce函數(shù)的根本任務(wù)是創(chuàng)立一個設(shè)備對象并把它連接到以PDO為底的設(shè)備堆棧中。當(dāng)AddDevice函數(shù)將FDO和FiDO創(chuàng)立且連接好后,PnP管理器分配資源且發(fā)送PRP_MN_START_DEVICE,功能驅(qū)動程序需要在這個IRP上做大量工作,包括分配并配置額外的軟件資源以及為設(shè)備操作做準(zhǔn)備。處理這個IRP主要通過PnPStartDevice函數(shù)完成。PnPStartDevice函數(shù)首先將IRP傳遞到底層驅(qū)動程序。等待完成后,調(diào)用IoGetCurrentIrpStackLocation函數(shù)得到當(dāng)前自己的堆棧單元。I/O堆棧單元的Parameter喉合有一個名為StarDevice的子構(gòu)造,該構(gòu)造包
39、含了資源分配信息。在StarDevice里就可以將分配的資源填充到PDO的設(shè)備擴展域中,并且調(diào)用IoConnectInterrupt函數(shù)連接中斷。層次構(gòu)造可以使I/O請求過程更加明了。每個影響到設(shè)備的操作都使用I/O請求包。通常IRP先被送到設(shè)備堆棧的最上層驅(qū)動程序,然后逐漸過濾到下面的驅(qū)動程序。內(nèi)核通常通過發(fā)送I/O請求包(IRP)來運行驅(qū)動程序中的代碼。4完畢語基于DSP的PCI總線數(shù)據(jù)采集系統(tǒng)充分利用了DSP豐富的內(nèi)部資源、強大的數(shù)字信號處理能力及PCI總線的高傳輸速度,能夠方便的開發(fā)數(shù)據(jù)壓縮、語音壓縮存儲等新功能信號,并進展預(yù)處理與分析處理。通過PCI總線進展數(shù)據(jù)傳送可大大提高傳輸速度
40、。本系統(tǒng)適用于高速數(shù)據(jù)的采集和處理以及需要進展大量數(shù)據(jù)傳輸?shù)膽?yīng)用場合。PCI9052總線接口芯片及其ISA模式應(yīng)用【摘要】PCI9052是PLX公司開發(fā)的服從PCI協(xié)議的從模式接口芯片,它能夠?qū)崿F(xiàn)ISA總線到PCI總線的平滑轉(zhuǎn)換。主要闡述了PCI9052在ISA模式下的應(yīng)用開發(fā)過程和方法,并給出了一個實例,說明了如何用PCI9052完成由ISA擴展板向PCI的轉(zhuǎn)換。關(guān)鍵詞:PCI9052,配置EEPROM,PCI總線,ISA總線1引言PCIPeripheralponentInterconnect總線,即外圍部件互連總線,是一種先進的高性能32/64位地址數(shù)據(jù)復(fù)用局部總線。PCI總線與處理器和時
41、鐘頻率無關(guān),可以提供高達132MB/s的數(shù)據(jù)傳送速率;它具有嚴(yán)格的規(guī)X,只要符合PCI規(guī)X的擴展卡插入任何PCI系統(tǒng)就能可靠地工作。但由于PCI總線協(xié)議的復(fù)雜性,其接口的實現(xiàn)比VESA、ISA和MCA等總線要困難得多。目前,開發(fā)PCI接口設(shè)備有兩種方法:一種方法是采用可編程邏輯芯片,它的最大好處是比擬靈活,用戶可以根據(jù)自己的需要開發(fā)出適合于特定功能的芯片,而不必實現(xiàn)PCI的全部功能?,F(xiàn)在有許多生產(chǎn)可編程邏輯器件的廠商,如Xilinx的LogiCore和Altera的AMPP都提供經(jīng)過嚴(yán)格測試的PCI接口功能模塊,用戶只要進展組合設(shè)計即可。另一種常用的方法是使用專用接口器件,通過專用芯片可以實現(xiàn)
42、完整的PCI主控模塊和目標(biāo)模塊的功能,將復(fù)雜的PCI總線接口轉(zhuǎn)換為相對簡單的用戶接口,用戶只要設(shè)計轉(zhuǎn)換后的總線接口即可。專用接口芯片具有較低的本錢和通用性,能夠有效降低接口設(shè)計的難度,縮短開發(fā)時間?,F(xiàn)有的PCI接口芯片主要有AMCC公司的AMCCS59xx系列和PLX公司的PCI90xx系列。在PLX系列產(chǎn)品中,PCI9052是一款常用的PCI總線目標(biāo)接口芯片,該芯片最大的特色是帶有一個ISA接口,通過它可以實現(xiàn)ISA總線到PCI總線的無縫連接,這為目前仍存在的ISA插件移植到PCI提供了極大的方便。利用PCI9052的ISA模式進展PCI的開發(fā)可以簡化設(shè)備開發(fā)過程,但難度還是較大。設(shè)計者不僅
43、要理解掌握手冊中的要點,還要學(xué)習(xí)硬件設(shè)計和軟件設(shè)計的方法和過程。為了讓大家能夠系統(tǒng)地了解利用PCI9052的ISA模式進展PCI板卡開發(fā)的過程和方法,本文從硬件設(shè)計、配置存放器的編寫、板卡調(diào)試和驅(qū)動程序的編寫等方面介紹了PCI9052的開發(fā)過程。2PCI9052的ISA接口模式21根本特點PCI9052是PLX公司繼PCI9050之后推出的低本錢PCI總線接口芯片,它符合PCI2.1規(guī)X,可作為PCI總線目標(biāo)設(shè)備實現(xiàn)根本的傳送要求;它有5個局部地址空間和4個局部設(shè)備片選信號,局部總線與PCI總線時鐘相互獨立運行。通過配置EEPROM的內(nèi)容可以將PCI9052設(shè)定為ISA接口模式,通過8位或16
44、位內(nèi)存或I/O映射可直接使PCI總線與ISA總線相連,從而將ISA總線快速地轉(zhuǎn)換到PCI總線上。在我們的數(shù)控測井系統(tǒng)中,原來的通信控制模塊是基于ISA總線的插件,端口地址為0X1000X10F,總線寬度是16位,可以實現(xiàn)輸入輸出,有中斷功能?,F(xiàn)在,我們利用PCI9052芯片的ISA模式對原來的板卡進展升級改造,使原來的板卡在做少量改動的情況下可以插在PCI總線插槽中正常工作。22引腳介紹及連接在不同的模式下,PCI9052的局部引腳有不同的定義和功能。工作在ISA模式下,其主要引腳如圖1所示。PCI9052硬件連接正確與否直接關(guān)系到芯片能否正常工作,某些引腳處理不當(dāng)往往會引起芯片工作不正?;蛩?/p>
45、機。在圖1中,9052左上方的信號和PCI信號相連,左下方信號和串行EEPROM相連,右邊的信號和局部總線信號相連,也就是和ISA總線信號相連。PCI端主要信號完全符合PCI規(guī)X要求,直接和PCI總線上對應(yīng)的引腳相連即可。ISA端連接如下:在我們的板卡中由于只涉及到IO,且為16位寬的數(shù)據(jù),因此,MEMWR、MEMRD、SBHE和BALE信號可以不用。LAD15:0是16位的數(shù)據(jù)總線。LA23:2和ISAA1:0共同組成ISA的地址總線,對于8位的數(shù)據(jù)總線,ISAA1:0相當(dāng)于LA1:0,它們一起進展地址譯碼。而對于16位的數(shù)據(jù)線,每次讀寫兩個字節(jié),這時ISAA0不用,ISAA1和LA23:2
46、一起進展地址譯碼。需要注意的是,并不是所有的地址線都要進展地址譯碼,這里要根據(jù)板卡上實際IO口空間的大小選擇譯碼地址線的數(shù)目。對于我們的板卡,LA3:2和ISAA1地址譯碼是必需的ISAA1為低位,當(dāng)然,所有的地址線都參加地址譯碼也是可以的。IOWR和IOWD是局部端口讀寫信號。LCLK是ISA端時鐘信號,按芯片要求外接8MHz的時鐘。LRESET是9052芯片上電時PCI端復(fù)位后所發(fā)出的對ISA端進展復(fù)位的信號。在ISA模式下,該信號輸出高有效。LINTi1和LINTi2是局部總線中斷輸入信號,這里,我們只用到LINTi1信號,由于9052內(nèi)部沒有對這兩個信號進展上拉或下拉處理,因此,在外部
47、將LINTi2上拉或下拉到一個確定的狀態(tài)。NOWS是無等待標(biāo)志信號,此引腳上拉或接地可以減少等待的時鐘數(shù)。LRDY是局部準(zhǔn)備就緒信號,如果局部芯片沒有提供該信號,一般對它進展下拉或接地處理。CHRDY是局部通道準(zhǔn)備好信號,一般要進展上拉處理。LHOLD是局部總線請求信號,應(yīng)該進展下拉或接地處理。MODE是模式選擇信號,由于我們使用的是ISA非復(fù)用模式,因此該引腳接地。在設(shè)計電路板時,要嚴(yán)格遵循PCI規(guī)X。電源和地線要盡可能寬且電源濾波要良好,在芯片的每個電源引腳最好接0.1的濾波電容。由于PCI時鐘信號的一半要靠反射波來提升,因此,時鐘信號CLK走線長度近似為2500mil。prstn1和pr
48、stn2兩者必須有一個接地,主板就是靠這兩個信號來判斷這個插槽上是否有卡的。用作上拉或下拉的電阻一般取值22ka即可。一般來說,pci板卡推薦做4層板,其實只要布線合理做兩層板也是可以的。串行EEPROM端信號有以下幾種:時鐘信號EECK、讀數(shù)據(jù)信號EEDO、寫數(shù)據(jù)信號EEDi和片選信號EESc,分別和EEpROM相應(yīng)管腳相連即可。23串行EEpROM的配置與iSA總線相比,pci總線支持三個物理空間:存儲器地址空間、iO地址空間和配置空間。配置空間是pci所特有的一個空間,所有的pci設(shè)備必須提供配置空間。串行EEPROM存儲了PCI9052重要的配置信息,如設(shè)備號DID、制造商號VID、子設(shè)備號SDID、子制造商號SViD、中斷號、設(shè)備類型號、局部空間基地址、局部空間描述符、片選響應(yīng)以及局部響應(yīng)控制TRL等信號。EEpROM的內(nèi)容非常重要,它直接關(guān)系到整個板卡能否正常工作,在設(shè)計時要非常注意。系統(tǒng)加電時,通過PCI的RST復(fù)位以后,PCI9052首先本測EEPROM是否存在。如果檢測到EEpROM首字不是FFFFH,pcI9052將依次讀取EEpROM的內(nèi)容來初始化內(nèi)部存
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《七 小小運動會:7、6加幾》(教案)-一年級上冊數(shù)學(xué) 青島版
- 五年級下冊數(shù)學(xué)教案-4.2 分?jǐn)?shù)加減法的簡算 ︳西師大版
- 勞動合同管理臺賬(2025年版)
- 二年級下冊數(shù)學(xué)教案-4.1 《長方形和正方形的特征》 ︳西師大版
- 一年級上冊數(shù)學(xué)教案-4 14,15減幾 ︳西師大版
- 二年級下冊數(shù)學(xué)教案-租船3 北師大版
- 模擬試卷一(原卷版+解析版)-三年級語文上學(xué)期期末全真模擬卷(部編版五四制)
- 人教版三年級上冊期末考試數(shù)學(xué)試卷-
- 《十一月四日風(fēng)雨大作》歷年中考古詩欣賞試題匯編(截至2023年)
- 2025屆黑龍江佳木斯一中高三上學(xué)期五調(diào)地理試題及答案
- 新人教版五年級下冊數(shù)學(xué)(新插圖) 練習(xí)二 教學(xué)課件
- 磚數(shù)量自動計算、換算表
- 【課題】《中學(xué)道德與法治法治意識培養(yǎng)策略的研究》中期檢查表
- 《十萬個為什么》推進課(小學(xué)課件)
- 發(fā)展?jié)h語初級綜合1:第28課《長城有八千八百五十多公里》
- YY/T 1619-2018牙科學(xué)種植體系統(tǒng)及相關(guān)過程的術(shù)語
- GB/T 18838.1-2002涂覆涂料前鋼材表面處理噴射清理用金屬磨料的技術(shù)要求導(dǎo)則和分類
- GA/T 1162-2014法醫(yī)生物檢材的提取、保存、送檢規(guī)范
- 紅金大氣商務(wù)風(fēng)領(lǐng)導(dǎo)歡迎會PPT通用模板
- 例談小組合作學(xué)習(xí)在小學(xué)英語教學(xué)中的有效開展(講座)課件
- 產(chǎn)品質(zhì)量法培訓(xùn)講義課件
評論
0/150
提交評論