新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)總線接口芯片及其ISA模式應(yīng)用

單片機(jī)總線接口芯片及其ISA模式應(yīng)用

作者: 時(shí)間:2012-02-20 來源:網(wǎng)絡(luò) 收藏

引 言

本文引用地址:http://butianyuan.cn/article/172047.htm

PCI(Peripheral Component Interconnect),即外圍部件互連,是一種先進(jìn)的高性能32/64位地址數(shù)據(jù)復(fù)用局部。PCI總線與處理器和時(shí)鐘頻率無關(guān),可以提供高達(dá)132MB/s的數(shù)據(jù)傳送速率;它具有嚴(yán)格的規(guī)范,只要符合PCI規(guī)范的擴(kuò)展卡插入任何PCI系統(tǒng)就能可靠地工作。但由于PCI總線協(xié)議的復(fù)雜性,其的實(shí)現(xiàn)比VESA、和MCA等總線要困難得多。

目前,開發(fā)PCI設(shè)備有兩種方法:一種方法是采用可編程邏輯,它的最大好處是比較靈活,用戶可以根據(jù)自己的需要開發(fā)出適合于特定功能的,而不必實(shí)現(xiàn)PCI的全部功能?,F(xiàn)在有許多生產(chǎn)可編程邏輯器件的廠商,如Xilinx的LogiCore和Altera的AMPP都提供經(jīng)過嚴(yán)格測(cè)試的PCI功能模塊,用戶只要進(jìn)行組合設(shè)計(jì)即可。另一種常用的方法是使用專用接口器件,通過專

可以實(shí)現(xiàn)完整的PCI主控模塊和目標(biāo)模塊的功能,將復(fù)雜的PCI總線接口轉(zhuǎn)換為相對(duì)簡(jiǎn)單的用戶接口,用戶只要設(shè)計(jì)轉(zhuǎn)換后的總線接口即可。

專用接口芯片具有較低的成本和通用性,能夠有效降低接口設(shè)計(jì)的難度,縮短開發(fā)時(shí)間?,F(xiàn)有的PCI接口芯片主要有AMCC公司的AMCCS59xx系列和PLX公司的PCI90xx系列。在PLX系列產(chǎn)品中,PCI9052是一款常用的PCI總線目標(biāo)接口芯片,該芯片最大的特色是帶有一個(gè)接口,通過它可以實(shí)現(xiàn)總線到PCI總線的無縫連接,這為目前仍存在的ISA插件移植到PCI提供了極大的方便。

利用PCI9052的ISA進(jìn)行PCI的開發(fā)可以簡(jiǎn)化設(shè)備開發(fā)過程,但難度還是較大。設(shè)計(jì)者不僅要理解掌握手冊(cè)中的要點(diǎn),還要學(xué)習(xí)硬件設(shè)計(jì)和軟件設(shè)計(jì)的方法和過程。為了讓大家能夠系統(tǒng)地了解利用PCI9052的ISA進(jìn)行PCI板卡開發(fā)的過程和方法,本文從硬件設(shè)計(jì)、配置寄存器的編寫、板卡調(diào)試和驅(qū)動(dòng)程序的編寫等方面介紹了PCI9052的開發(fā)過程。

2 PCI9052的ISA接口

2.1 基本特點(diǎn)

PCI9052是PLX公司繼PCI9050之后推出的低成本PCI總線接口芯片,它符合PCI2.1規(guī)范,可作為PCI總線目標(biāo)設(shè)備實(shí)現(xiàn)基本的傳送要求;它有5個(gè)局部地址空間和4個(gè)局部設(shè)備片選信號(hào),局部總線與PCI總線時(shí)鐘相互獨(dú)立運(yùn)行。通過配置EEPROM的內(nèi)容可以將PCI9052設(shè)定為ISA接口模式,通過8位或16位內(nèi)存或I/O映射可直接使PCI總線與ISA總線相連,從而將ISA總線快速地轉(zhuǎn)換到PCI總線上。

在我們的數(shù)控測(cè)井系統(tǒng)中,原來的通信控制模塊是基于ISA總線的插件,端口地址為0X100~0X10F,總線寬度是16位,可以實(shí)現(xiàn)輸入輸出,有中斷功能。現(xiàn)在,我們利用PCI9052芯片的ISA模式對(duì)原來的板卡進(jìn)行升級(jí)改造,使原來的板卡在做少量改動(dòng)的情況下可以插在PCI總線插槽中正常工作。

2.2 引腳介紹及連接

在不同的模式下,PCI9052的部分引腳有不同的定義和功能。工作在ISA模式下,其主要引腳如圖1所示。

23.jpg

PCI9052硬件連接正確與否直接關(guān)系到芯片能否正常工作,某些引腳處理不當(dāng)往往會(huì)引起芯片工作不正?;蛩罊C(jī)。在圖1中,9052左上方的信號(hào)和PCI信號(hào)相連,左下方信號(hào)和串行EEPROM相連,右邊的信號(hào)和局部總線信號(hào)相連,也就是和ISA總線信號(hào)相連。

PCI端主要信號(hào)完全符合PCI規(guī)范要求,直接和PCI總線上對(duì)應(yīng)的引腳相連即可。 ISA端連接如下:在我們的板卡中由于只涉及到I/O,且為16位寬的數(shù)據(jù),因此,MEMWR#、MEMRD#、SBHE#和BALE信號(hào)可以不用。

LAD〔15:0〕是16位的數(shù)據(jù)總線。LA〔23:2〕和ISAA〔1:0〕共同組成ISA的地址總線,對(duì)于8位的數(shù)據(jù)總線,ISAA〔1:0〕相當(dāng)于LA〔1:0〕,它們一起進(jìn)行地址譯碼。而對(duì)于16位的數(shù)據(jù)線,每次讀寫兩個(gè)字節(jié),這時(shí)ISAA〔0〕不用,ISAA〔1〕和LA〔23:2〕一起進(jìn)行地址譯碼。需要注意的是,并不是所有的地址線都要進(jìn)行地址譯碼,這里要根據(jù)板卡上實(shí)際I/O口空間的大小選擇譯碼地址線的數(shù)目。對(duì)于我們的板卡,LA〔3:2〕和ISAA〔1〕地址譯碼是必需的(ISAA〔1〕為低位),當(dāng)然,所有的地址線都參加地址譯碼也是可以的。

IOWR#和IOWD#是局部端口讀寫信號(hào)。LCLK是ISA端時(shí)鐘信號(hào),按芯片要求外接8MHz的時(shí)鐘。LRESET#是9052芯片上電時(shí)PCI端復(fù)位后所發(fā)出的對(duì)ISA端進(jìn)行復(fù)位的信號(hào)。在ISA模式下,該信號(hào)輸出高有效。

LINTi1和LINTi2是局部總線中斷輸入信號(hào),這里,我們只

用到LINTi1信號(hào),由于9052內(nèi)部沒有對(duì)這兩個(gè)信號(hào)進(jìn)行上拉或下拉處理,因此,在外部將LINTi2上拉或下拉到一個(gè)確定的狀態(tài)。

NOWS#是無等待標(biāo)志信號(hào),此引腳上拉或接地可以減少等待的時(shí)鐘數(shù)。LRDY#是局部準(zhǔn)備就緒信號(hào),如果局部芯片沒有提供該信號(hào),一般對(duì)它進(jìn)行下拉或接地處理。CHRDY是局部通道準(zhǔn)備好信號(hào),一般要進(jìn)行上拉處理。LHOLD是局部總線請(qǐng)求信號(hào),應(yīng)該進(jìn)行下拉或接地處理。MODE是模式選擇信號(hào),由于我們使用的是ISA非復(fù)用模式,因此該引腳接地。

在設(shè)計(jì)電路板時(shí),要嚴(yán)格遵循PCI規(guī)范。電源和地線要盡可能寬且電源濾波要良好,在芯片的每個(gè)電源引腳最好接0.1μF的濾波電容。由于PCI時(shí)鐘信號(hào)的一半要靠反射波來提升,因此,時(shí)鐘信號(hào)CLK走線長(zhǎng)度近似為2500 mil。prstn1和prstn2兩者必須有一個(gè)接地,主板就是靠這兩個(gè)信號(hào)來判斷這個(gè)插槽上是否有卡的。用作上拉或下拉的電阻一般取值2.2 k歐姆即可。一般來說,PCI板卡推薦做4層板,其實(shí)只要布線合理做兩層板也是可以的。

串行EEPROM端信號(hào)有以下幾種:時(shí)鐘信號(hào)(EECK)、讀數(shù)據(jù)信號(hào)(EEDO)、寫數(shù)據(jù)信號(hào)(EEDI)和片選信號(hào)(EESC),分別和EEPROM相應(yīng)管腳相連即可。


上一頁 1 2 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉