DSP與ISA總線PnP卡的接口技術(shù)研究
發(fā)布時間:2008/5/27 0:00:00 訪問次數(shù):692
摘要:通過分析isa總線pnp卡與微機的軟、硬件接口電路,用dsp芯片tms320f206結(jié)合外國電路模擬isa時序,實現(xiàn)了dsp對pnp卡的自動識別與配置,從而使isa總線pnp卡在非pc環(huán)境下的應(yīng)用變成現(xiàn)實。 關(guān)鍵詞:isa總線 即插即用(pnp) dsp芯片 識別 配置 為解決多個總線設(shè)備共享系統(tǒng)總線時所帶來的系統(tǒng)底層資源的分配和再分配問題,microsoft公司在1993年以后相繼公布了即插即用pnp(plug-and-play)規(guī)范,包括的總線類型有isa、eisa、pcmcia、pci、vesa及scsi等。pnp技術(shù)提供了對于底層硬件資源包括i/o端口、irq、dma通道以及內(nèi)存等的智能管理,免除了用戶因安裝新的硬件設(shè)備而帶來的煩惱。pnp不需要手工改變設(shè)備的開關(guān)或跳線,給大家?guī)砹撕锰帲步o在非pc硬件平臺上的應(yīng)用帶來了麻煩。原因在于pnp的實現(xiàn)必須具備兩個條件:一是pc機主板要有支持pnp的bios;二是要有支持pnp的操作系統(tǒng),如windows95/98/2000等。當(dāng)脫離了pc機環(huán)境,這兩個條件皆不具備,pnp設(shè)備的應(yīng)用受到了極大的限制。比如在dsp與isa總線接口系統(tǒng)的設(shè)計中,一般isa標(biāo)準(zhǔn)的非pnp設(shè)備有固定的系統(tǒng)資源,通過跳線或開關(guān)手工設(shè)置完成后,上電即可對其編程,相應(yīng)的isa接口卡就會做出反應(yīng)。而支持pnp的接口卡上面沒有開關(guān)和跳線,板上的資源需要用軟件配置;當(dāng)同時使用多塊pnp接口卡時,首先還必須進行pnp卡的識別,然后才能對相應(yīng)的接口卡進行資源配置。在筆者以前所從事的科研任務(wù)中,需要dsp與isa總線的網(wǎng)卡和聲進行接口設(shè)計,所用的網(wǎng)卡和聲卡都不支持pnp規(guī)范。隨著pnp技術(shù)的發(fā)展和普遍應(yīng)用,如今在市場上很難見到不支持pnp的老isa卡了,這就給筆者提出了新的問題:如何在非pc硬件環(huán)境下使用pnp設(shè)備?本文以pnp網(wǎng)卡和聲卡為例,通過分析isa總線pnp卡與微機的軟、硬件接口電路,用dsp芯片tms320f206結(jié)合外圍電路模擬isa時序,實現(xiàn)了dsp對pnp卡的自動識別與配置,從而使isa總線pnp卡在非pc環(huán)境下的應(yīng)用變成現(xiàn)實。 1 isa總線pnp協(xié)議簡介[1] pnp邏輯必須在上電后經(jīng)軟件使能才起作用。使能的過程是將一個預(yù)先定義好的序列(32次i/o寫)寫入地址端口,地址端口的地址為279h,預(yù)先定義好的序列就稱為pnp初始化關(guān)鍵字。這32個字節(jié)為: 6a,b5,da,ed,f6,fb,7d,be,df,6f,37,1b,0d,86,c3,61,b0,58,2c,16,8b,45,a2,d1,e8,74,a,9d,ce,e7,74,39 當(dāng)pnp卡檢測到上述32字節(jié)的初始化關(guān)鍵字后,所有的pnp卡都進入了隔離狀態(tài),等待軟件一個一個地卻識別并配置資源。pnp卡能被軟件識別的關(guān)鍵在于每個卡都有一個唯一的序列標(biāo)識符。該序列標(biāo)總值符由9個字節(jié)共72位組成,其中前四個字節(jié)是生產(chǎn)廠家的標(biāo)識,緊接的四個字節(jié)可以是任何值,只要系統(tǒng)中任意兩塊卡之間的這八個字節(jié)不完全相同即可。最后的一個字節(jié)是前八個字節(jié)的校驗和。軟件就是通過讀取每個卡的序列標(biāo)識來識別該pnp卡是由哪個公司生產(chǎn)的并正確調(diào)用該公司提供的驅(qū)動程序。序列標(biāo)識符是按位順序讀出的,圖1示出了序列標(biāo)識符的構(gòu)成及移位過程。對每個字節(jié),協(xié)議規(guī)定移出的順序是bit[0],bit[1], 直到bit[7]。 讀序列標(biāo)識符的口地址為200h到3ffh之間的任意地址,只要該地址未被其它資源占用。設(shè)置該地址的過程見本文的第四部分。所有卡的讀地址皆相同,設(shè)將要讀的一塊卡的序列標(biāo)識符的該位為“1”,而另一塊卡的相位是“0”,如果這兩塊卡都來驅(qū)動數(shù)據(jù)總線,則不可避免地會產(chǎn)生沖突。pnp卡識別的關(guān)鍵技術(shù)也就在這里,即pnp上的硬件參與配合了該卡的識別判斷過程。每塊卡會根據(jù)自己序列標(biāo)識符的每一位對i/o讀做出相應(yīng)的反應(yīng)。 如果該卡的序列標(biāo)識符的當(dāng)前位是“1”,那么該卡就
摘要:通過分析isa總線pnp卡與微機的軟、硬件接口電路,用dsp芯片tms320f206結(jié)合外國電路模擬isa時序,實現(xiàn)了dsp對pnp卡的自動識別與配置,從而使isa總線pnp卡在非pc環(huán)境下的應(yīng)用變成現(xiàn)實。 關(guān)鍵詞:isa總線 即插即用(pnp) dsp芯片 識別 配置 為解決多個總線設(shè)備共享系統(tǒng)總線時所帶來的系統(tǒng)底層資源的分配和再分配問題,microsoft公司在1993年以后相繼公布了即插即用pnp(plug-and-play)規(guī)范,包括的總線類型有isa、eisa、pcmcia、pci、vesa及scsi等。pnp技術(shù)提供了對于底層硬件資源包括i/o端口、irq、dma通道以及內(nèi)存等的智能管理,免除了用戶因安裝新的硬件設(shè)備而帶來的煩惱。pnp不需要手工改變設(shè)備的開關(guān)或跳線,給大家?guī)砹撕锰,但也給在非pc硬件平臺上的應(yīng)用帶來了麻煩。原因在于pnp的實現(xiàn)必須具備兩個條件:一是pc機主板要有支持pnp的bios;二是要有支持pnp的操作系統(tǒng),如windows95/98/2000等。當(dāng)脫離了pc機環(huán)境,這兩個條件皆不具備,pnp設(shè)備的應(yīng)用受到了極大的限制。比如在dsp與isa總線接口系統(tǒng)的設(shè)計中,一般isa標(biāo)準(zhǔn)的非pnp設(shè)備有固定的系統(tǒng)資源,通過跳線或開關(guān)手工設(shè)置完成后,上電即可對其編程,相應(yīng)的isa接口卡就會做出反應(yīng)。而支持pnp的接口卡上面沒有開關(guān)和跳線,板上的資源需要用軟件配置;當(dāng)同時使用多塊pnp接口卡時,首先還必須進行pnp卡的識別,然后才能對相應(yīng)的接口卡進行資源配置。在筆者以前所從事的科研任務(wù)中,需要dsp與isa總線的網(wǎng)卡和聲進行接口設(shè)計,所用的網(wǎng)卡和聲卡都不支持pnp規(guī)范。隨著pnp技術(shù)的發(fā)展和普遍應(yīng)用,如今在市場上很難見到不支持pnp的老isa卡了,這就給筆者提出了新的問題:如何在非pc硬件環(huán)境下使用pnp設(shè)備?本文以pnp網(wǎng)卡和聲卡為例,通過分析isa總線pnp卡與微機的軟、硬件接口電路,用dsp芯片tms320f206結(jié)合外圍電路模擬isa時序,實現(xiàn)了dsp對pnp卡的自動識別與配置,從而使isa總線pnp卡在非pc環(huán)境下的應(yīng)用變成現(xiàn)實。 1 isa總線pnp協(xié)議簡介[1] pnp邏輯必須在上電后經(jīng)軟件使能才起作用。使能的過程是將一個預(yù)先定義好的序列(32次i/o寫)寫入地址端口,地址端口的地址為279h,預(yù)先定義好的序列就稱為pnp初始化關(guān)鍵字。這32個字節(jié)為: 6a,b5,da,ed,f6,fb,7d,be,df,6f,37,1b,0d,86,c3,61,b0,58,2c,16,8b,45,a2,d1,e8,74,a,9d,ce,e7,74,39 當(dāng)pnp卡檢測到上述32字節(jié)的初始化關(guān)鍵字后,所有的pnp卡都進入了隔離狀態(tài),等待軟件一個一個地卻識別并配置資源。pnp卡能被軟件識別的關(guān)鍵在于每個卡都有一個唯一的序列標(biāo)識符。該序列標(biāo)總值符由9個字節(jié)共72位組成,其中前四個字節(jié)是生產(chǎn)廠家的標(biāo)識,緊接的四個字節(jié)可以是任何值,只要系統(tǒng)中任意兩塊卡之間的這八個字節(jié)不完全相同即可。最后的一個字節(jié)是前八個字節(jié)的校驗和。軟件就是通過讀取每個卡的序列標(biāo)識來識別該pnp卡是由哪個公司生產(chǎn)的并正確調(diào)用該公司提供的驅(qū)動程序。序列標(biāo)識符是按位順序讀出的,圖1示出了序列標(biāo)識符的構(gòu)成及移位過程。對每個字節(jié),協(xié)議規(guī)定移出的順序是bit[0],bit[1], 直到bit[7]。 讀序列標(biāo)識符的口地址為200h到3ffh之間的任意地址,只要該地址未被其它資源占用。設(shè)置該地址的過程見本文的第四部分。所有卡的讀地址皆相同,設(shè)將要讀的一塊卡的序列標(biāo)識符的該位為“1”,而另一塊卡的相位是“0”,如果這兩塊卡都來驅(qū)動數(shù)據(jù)總線,則不可避免地會產(chǎn)生沖突。pnp卡識別的關(guān)鍵技術(shù)也就在這里,即pnp上的硬件參與配合了該卡的識別判斷過程。每塊卡會根據(jù)自己序列標(biāo)識符的每一位對i/o讀做出相應(yīng)的反應(yīng)。 如果該卡的序列標(biāo)識符的當(dāng)前位是“1”,那么該卡就
熱門點擊
- 功率驅(qū)動器件與MCU/DSC的接口電路設(shè)計技
- USB端口的EMC解決方案
- TMS320F2812擴展正交解碼脈沖接口的
- HD7279A的原理與應(yīng)用
- 基于AVR單片機SPI的串行ADC接口設(shè)計
- NRZ-HDB3碼制轉(zhuǎn)換器設(shè)計
- 基于USB接口的同步視頻輸出系統(tǒng)設(shè)計
- SDH接口芯片PM5342及其應(yīng)用
- X25054/45 E2 PROM及其與51
- CF卡在數(shù)字音頻系統(tǒng)中的應(yīng)用
推薦技術(shù)資料
- AMOLED顯示驅(qū)動芯片關(guān)鍵技
- CMOS圖像傳感器技術(shù)參數(shù)設(shè)計
- GB300 超級芯片應(yīng)用需求分
- 4NP 工藝NVIDIA Bl
- GB300 芯片、NVL72
- 首個最新高端芯片人工智能服務(wù)器
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究