多路實(shí)時(shí)數(shù)字音頻系統(tǒng)中的PCI通信
出處:不會(huì)就問 發(fā)布于:2007-05-26 10:42:50
| 1 引言
多路實(shí)時(shí)數(shù)字音頻系統(tǒng)采用TI公司的TMS320C5402數(shù)字信號(hào)處理芯片來實(shí)現(xiàn),由于該系列芯片采用了改進(jìn)的哈佛結(jié)構(gòu),擁有專用的硬件乘法器和專為數(shù)字信號(hào)處理而設(shè)計(jì)的指令系統(tǒng),快速的指令周期和良好的多DSP并行運(yùn)行特性,使得DSP芯片非常適合于實(shí)時(shí)數(shù)字信號(hào)處理,廣泛應(yīng)用于無線通信、語音識(shí)別、工業(yè)控制、自動(dòng)化儀器等領(lǐng)域。該系統(tǒng)用 2 WindOWS管理體系 Win98體系結(jié)構(gòu)支持4種基本程序:管理程序、win32應(yīng)用程序、winl6應(yīng)用程序和DOS應(yīng)用程序,每種程序在不同的執(zhí)行環(huán)境中運(yùn)行。(1)管理程序在Ring0層(態(tài))中的保護(hù)模式下運(yùn)行,所以能訪問和控制實(shí)際硬件環(huán)境,管理程序是在實(shí)際機(jī)器上,而不是在虛擬機(jī)上運(yùn)行,在所有構(gòu)成win98的組件中,只有VMM和驅(qū)動(dòng)程序在管理程序的環(huán)境中執(zhí)行,可以直接對(duì)硬件進(jìn)行操作。(2)Win32應(yīng)用程序和Winl6應(yīng)用程序都在Ring3層(用戶態(tài))的保護(hù)模式下運(yùn)行,Win32應(yīng)用程序可以訪問4GB的虛擬內(nèi)存,而Winl6應(yīng)用程序只能訪問16MB的虛擬內(nèi)存。(3)DOS應(yīng)用程序運(yùn)行在V86模式下,它也運(yùn)行在Ring3層的訪問級(jí)別上,硬件訪問和中斷被隱藏和虛擬,該系統(tǒng)編寫的是32位應(yīng)用程序,它運(yùn)行在虛擬環(huán)境之下,它對(duì)I/o端口的查詢,對(duì)一個(gè)內(nèi)存映射的外圍設(shè)備的查詢以及可能導(dǎo)致傳送到虛擬機(jī)之外的操作都會(huì)被Windows捕獲,所以其本身并不能直接訪問硬件和系統(tǒng)數(shù)據(jù),而需要通過驅(qū)動(dòng)程序來完成。
3 設(shè)備內(nèi)存映射方法 盡管驅(qū)動(dòng)程序運(yùn)行在層,但它所見的是平面內(nèi)存,只能用線性地址進(jìn)行訪問。所有驅(qū)動(dòng)程序?qū)?nèi)存的訪問都必須經(jīng)過頁(yè)表將線性地址轉(zhuǎn)換成物理地址。因此,驅(qū)動(dòng)程序在訪問一個(gè)特殊的內(nèi)存映射硬件之前,必須先配置頁(yè)表,保證設(shè)備的物理地址與一個(gè)線性地址相聯(lián)系。這個(gè)線性地址可以用作指針。驅(qū)動(dòng)程序不能控制頁(yè)表,它必須調(diào)用虛擬機(jī)管理器提供的服務(wù)。 (1)使用PageReserve()函數(shù),分配一塊線性地址空間。此空間并不和具體的物理地址相關(guān)聯(lián),僅是線性地址的頁(yè)表進(jìn)入項(xiàng)。 4 PCI配置寄存器訪問 根據(jù)PCI總線規(guī)范要求,任何PCI設(shè)備都必須提供256字節(jié)的配置空間,用來完成對(duì)設(shè)備的安裝、配置、引導(dǎo)和設(shè)備再定位等功能。在該系統(tǒng)中要求將HPI控制標(biāo)志和狀態(tài)寄存器以及HPI控制空間映射到PC機(jī)內(nèi)存,所以必須對(duì)PCI2040配置寄存中的命令寄存器進(jìn)行修改,從而實(shí)現(xiàn)設(shè)備內(nèi)存映射。這需要通過32位配置地址端口(占用IO地址OxOcf8~OxOcfb)和32位配置數(shù)據(jù)端口(占用IO地址OxOcfc~OxOcff)訪問PCI配置寄存器。其中位于0xcf8的IO端口的寄存器相當(dāng)于一個(gè)地址寄存器,位于0xcfc端口的寄存器相當(dāng)于數(shù)據(jù)寄存器。配置數(shù)據(jù)端口中存放著配置地址端口中的配置地址所指向的內(nèi)存的內(nèi)容。配置地址端口寄存
因?yàn)镻CI設(shè)備的總線號(hào)和PCI2040的功能號(hào)一般為0,所以只需變化設(shè)備號(hào)來尋找硬件的位置。圖2是基于Vtoolsd使用VC++6.0具體對(duì)PCI配置寄存器的訪問程序框圖。
PCI2040橋控制器可方便實(shí)現(xiàn)一個(gè)PCI插槽與4片C54x或C6x系列的DSP之間的通信,它提供了兩種數(shù)據(jù)傳輸?shù)姆绞剑阂皇峭ㄟ^HPI口傳輸,另一種是通過GPBUS總線傳輸。其中GPBUS總線傳輸方式比較簡(jiǎn)單但傳輸速率低,通過HPI口的傳輸可以實(shí)現(xiàn)高速的數(shù)據(jù)通信,所以在該系統(tǒng)中采用了HPI口傳輸?shù)耐ㄐ欧绞?。Win98先獲取HPI寄存器的物理地址進(jìn)行映射,然后用映射得到的線性地址就可以對(duì)HPI口進(jìn)行訪問。
6 驅(qū)動(dòng)、應(yīng)用及DSP程序的設(shè)計(jì) 6.1 總體設(shè)計(jì)思想
應(yīng)用程序要調(diào)用驅(qū)動(dòng)程序來完成兩件事,一是獲取DSP采集的數(shù)據(jù),二是將自己的數(shù)據(jù)發(fā)送給DSP。應(yīng)用程序整體功能框架如圖4。
應(yīng)用程序只需通過CreateFile()函數(shù)來加載驅(qū)動(dòng)程序,加載成功之后,應(yīng)用程序就可以通過調(diào)用Devi-ceIoControl()函數(shù)與驅(qū)動(dòng)程序通信。 6.3 驅(qū)動(dòng)程序設(shè)計(jì) 驅(qū)動(dòng)程序在系統(tǒng)中起紐帶作用,它響應(yīng)DSP中斷,并向DSP發(fā)送中斷,傳送或讀取數(shù)據(jù)給應(yīng)用程序。 6.3.1 響應(yīng)DSP硬件中斷 BOOL MyHwInt::OnSharedHardwareInt(VMHANDLE hVM) { //準(zhǔn)備接受下中斷。 } 6.3.2 與應(yīng)用程序通信
DSP程序?qū)崿F(xiàn)多路數(shù)字音頻信號(hào)實(shí)時(shí)處理,通過對(duì)定時(shí)器和Maxl25CEAX芯片的設(shè)置,實(shí)現(xiàn)采樣率可以變化的多路輸入輸出,通過向PC機(jī)發(fā)送中斷和響應(yīng)中斷,實(shí)現(xiàn)PC機(jī)保存數(shù)據(jù)和實(shí)時(shí)處理數(shù)據(jù)。DSP在內(nèi)存中開設(shè)兩個(gè)數(shù)據(jù)區(qū),數(shù)據(jù)存放在兩個(gè)數(shù)據(jù)區(qū)中交替進(jìn)行。DSP的運(yùn)行框架如圖6。
多路數(shù)字音頻系統(tǒng)已經(jīng)調(diào)試通過,并成功地在盲源信號(hào)實(shí)時(shí)分離系統(tǒng)中獲得應(yīng)用。利用TMS320C54x系列DSP的實(shí)時(shí)信號(hào)處理能力,實(shí)現(xiàn)PC機(jī)與DSP通信在多路實(shí)時(shí)數(shù)字音頻系統(tǒng)、智能機(jī)器人等領(lǐng)域中有廣闊的應(yīng)用前景。 | |||||||
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://www.hbjingang.com,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 工業(yè)5G技術(shù)在智能制造中的應(yīng)用與實(shí)踐解析2025/12/31 10:57:21
- 工業(yè)以太網(wǎng)交換機(jī)選型與現(xiàn)場(chǎng)應(yīng)用技術(shù)指南2025/12/18 10:48:14
- 無線傳輸電路基礎(chǔ),射頻前端設(shè)計(jì)、天線匹配與鏈路預(yù)算計(jì)算2025/10/27 13:55:50
- ASK 解調(diào)的核心要點(diǎn)與實(shí)現(xiàn)方式2025/9/5 16:46:17
- 雙偶極子天線:結(jié)構(gòu)、特性與應(yīng)用全解析2025/9/3 10:29:21
- 高速PCB信號(hào)完整性(SI)設(shè)計(jì)核心實(shí)操規(guī)范
- 鎖相環(huán)(PLL)中的環(huán)路濾波器:參數(shù)計(jì)算與穩(wěn)定性分析
- MOSFET反向恢復(fù)特性對(duì)系統(tǒng)的影響
- 電源IC在惡劣環(huán)境中的防護(hù)設(shè)計(jì)
- 連接器耐腐蝕性能測(cè)試方法
- PCB電磁兼容(EMC)設(shè)計(jì)與干擾抑制核心實(shí)操規(guī)范
- 用于相位噪聲測(cè)量的低通濾波器設(shè)計(jì)與本振凈化技術(shù)
- MOSFET在高頻開關(guān)中的EMI問題
- 電源IC在便攜式設(shè)備中的設(shè)計(jì)要點(diǎn)
- 連接器結(jié)構(gòu)設(shè)計(jì)常見問題分析
















