<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 聲效芯片CS4235在DSP的嵌入式系統中的應用

聲效芯片CS4235在DSP的嵌入式系統中的應用

作者: 時(shí)間:2004-12-05 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:通過(guò)分析Windows Sound System兼容聲卡和PC機ISA總線(xiàn)的接口原理,將其中的聲效到基于中,極大地改善了的音質(zhì);采用DMA控制器8237A實(shí)現的硬件接口,遵循PnP協(xié)議解決的資源配置以及寄存器讀寫(xiě)等軟件接口問(wèn)題;最后給出CS4235在基于DSP的全數字化語(yǔ)言學(xué)習中的具體。

關(guān)鍵詞:CS4235 DSP DMA PnP

引 言

  聲卡技術(shù)是多媒體計算機技術(shù)的關(guān)鍵技術(shù)之一,它的出現使得計算機更富表達力。目前,由于采用的錄放音結構簡(jiǎn)單、采樣率過(guò)低而使得系統中的音質(zhì)效果比較差,遠遠滿(mǎn)足不了人們對高檔生活、學(xué)習用系統的要求。如果能將聲卡技術(shù)到嵌入式系統中,由于聲卡的強大功能,必將使整個(gè)系統的聲音質(zhì)量上升一個(gè)新的臺階。通過(guò)分析,WSS(Windows Sound System)兼容聲卡和PC機ISA總線(xiàn)的接口原理,我們將其中的聲效CS4235應用到基于DSP的嵌入式系統中。不用現成的聲卡而利用其上的聲效芯片是因為這樣做設計起來(lái)更靈活方便,可根據系統需要增刪相應的功能;不用MCS51系列而采用DSP,是因為對聲卡操作需要太多的系統資源,MCS51并不具備此能力,否則硬件接口電路將相當復雜。

1 CS4235原理與結構

1.1 聲卡工作原理

  圖1示出了聲卡的基本工作原理:主機通過(guò)總線(xiàn)將數字化的聲音信號以PCM的方式送到數模轉換器(D/A),將數字信號變成模擬的音頻信號;同時(shí)又可以通過(guò)模數轉換器(A/D)將麥克風(fēng)或CD的輸入信號轉換成數字信號,送到計算機進(jìn)行各種處理。

1.2 CS4235功能結構

  WSS是Microsoft公司為統一聲卡的標準,最終為應用提供方便而提出的Windows 環(huán)境下多媒體擴展定義的一個(gè)音頻子系統標準,包括硬件平臺和軟件接口[1]。CS4235就是一種適應于WSS并且提供了ISA總線(xiàn)接口的聲卡核心芯片,除了聲音的采集和播放外,其它控制全部依賴(lài)于主機;它占用較多的主機時(shí)間,但成本比較低。CS4235的功能框圖如圖2所示。從圖2中可以看出,CS4235是一個(gè)完整的音頻子系統集成電路,提供了16位立體聲ADC及DAC、片內可重構數字濾波器、可編程增益值及衰減值的模擬和數字混合器、可選串行接口、具有同時(shí)錄音和播放能力的全雙工通道。CS4235的文檔說(shuō)明見(jiàn)參考文獻[2]。

  限于篇幅,這里不介紹CS4235的模擬硬件部分,而主要研究CS4235與DSP的數字硬件接口問(wèn)題。由于TMS320F206(簡(jiǎn)稱(chēng)F206)是一種低價(jià)格、高性能的16位定點(diǎn)運算數字信號處理器(DSP),性?xún)r(jià)比極高,目前已成為高檔單片機的理想替代品,在通信、語(yǔ)音處理、軍事、儀器儀表、圖像處理等領(lǐng)域得到了廣泛的應用[3],因而系統中選用F206作為DSP。CS4235提供的8位并行接口與ISA總線(xiàn)兼容,是否也與DSP的外部擴展總線(xiàn)兼容呢?表1中列出了CS4235和ISA總線(xiàn)接口的信號引腳及簡(jiǎn)單描述,相應地也列出了F206的對應引腳。從表1可以看出,要實(shí)現DSP對CS4235的直接操作,DSP系統必須提供上述ISA總線(xiàn)信號。DSP芯片一般可提供數據信號線(xiàn)、地址信號線(xiàn)、I/O讀寫(xiě)信號線(xiàn)和READY信號線(xiàn),同時(shí)還擁有多個(gè)中斷輸入引腳;但并不直接具備DMA功能引腳,這給DSP與CS4235之間的接口帶來(lái)了不便,也正是本文所要解決的主要問(wèn)題。

表1 CS4235和ISA總線(xiàn)接口的信號引腳

信號引腳簡(jiǎn)單描述DSP(F206)對應引腳
SD7:0>雙向系統數據總線(xiàn)D7:0>
SA11:0>系統地址總線(xiàn)A11:0>
IORI/O讀命令由IS和RD譯碼得到IQW=IS+WR
IOWI/O寫(xiě)命令無(wú)
AEN地址使能信號READY
IOCHRDYI/O通道準備好INT2(實(shí)際應用中,只需選擇1根中斷線(xiàn)與DSP相連)
IRQA:G>中斷申請信號:IRQA=IRQ5,IRQB=IRQ7 IRQC=IRQ9,IRQC=IRQ11,IRQD=IRQ11
IRQE=IRQ12,IRQF=IRQ15,IRQG=IRQ10
無(wú)
DRQA:C>DMA申請信號:DRQA=DRQ0
DRQB=DRQ1 DRQC=DRQ3
無(wú)
DACKA:C>DMA應答信號:DACKA=DACK0 DACK1=DAC中,DACKC=DACK3RS
RESET聲卡復位信號 

2 DSP與CS4235的硬件接口

2.1 F206使用HOLD操作的直接存儲器訪(fǎng)問(wèn)

  F206實(shí)現DMA功能的關(guān)鍵是該類(lèi)芯片提供了2個(gè)信號引腳:HOLD/INT1和,這2個(gè)信號控制的HOLD操作過(guò)程如下。

① 。外部設備可以把該引腳驅動(dòng)到低電平從而請求對外部總線(xiàn)的控制。如果HOLD/INT1中斷線(xiàn)被允許,那么這將觸發(fā)中斷。

② ,在響應中斷時(shí),軟件邏輯可以使處理器發(fā)出應答信號,表示它將放棄對其外部總線(xiàn)的控制。根據,外部地址信號(A15~A0)、數據信號(D15~D0)以及存儲器控制信號()被置為高阻狀態(tài)。

  從①、②可以看出,F206的HOLD操作允許對外部程序、數據以及I/O空間進(jìn)行直接存儲器訪(fǎng)問(wèn),但該功能是在INT1中斷程序中實(shí)現的,因而中斷線(xiàn)INT1對下降沿和上升沿二者都應敏感。當F206檢測到下降沿時(shí),它完成正在執行的當前指令,然后迫使程序控制轉到中斷服務(wù)子程序,此子程序執行IDLE(空閑)指令。根據IDLE,變?yōu)橛行Ф獠靠偩€(xiàn)被置為高阻狀態(tài)。只有在檢測到HOLD/INT1引腳上的上升沿之后,CPU才退出IDLE狀態(tài),變?yōu)闊o(wú)效,并使外部總線(xiàn)返回到正常狀態(tài)。

  從以上分析可以看出,F206的DMA操作與PC機中的DMA操作的區別。在PC機中,CPU收到DMA請求信號后,迫使CPU在現行的總線(xiàn)周期結束后,使其地址、數據和部分控制引腳處于三態(tài),從而讓出總線(xiàn)的控制權,并給出1個(gè)DMA響應信號;在DMA操作完成且DMA請求信號無(wú)效以后,CPU再恢復對系統總線(xiàn)的控制。而在C2XX中,DMA申請信號將引起F206中斷,在中斷程序中發(fā)出軟件指令使F206各信號引腳處于三態(tài),同時(shí)也給出1個(gè)DMA響應信號;在DMA操作完成后,但F206檢測到DMA請求信號無(wú)效以后,雖然總線(xiàn)返回到正常狀態(tài),但但F206仍處在中斷程序中。從以上分析可知,盡管中斷需要保護斷點(diǎn)和現場(chǎng),使得F206的DMA的處理速度與PC機相比要低的多,畢竟F206也實(shí)現了DMA操作,從而可借助DMA控制器8237實(shí)現對聲卡的DMA操作訪(fǎng)問(wèn)。

2.2 DSP與DMA控制器8237的接口電路

  8237是一個(gè)高性能的可編程DMA控制器芯片,可以方便地與CPU相連,實(shí)現外部設備與存儲器之間的直接數據交換。其內部結構和引腳信號可參閱文獻[4]。該控制器通過(guò)編程可提供多種類(lèi)型的控制特性,以?xún)?yōu)化系統性能,增大數據吞吐量,最高數據傳輸速率可達1.6 MB/s。圖3給出了F206與8237接口的主電路,其中8237送給DSP的要求控制總線(xiàn)的DMA請求信號HRQ,經(jīng)GAL16V8譯碼后送到DSP的HOLD/INT1引腳;同樣,DSP的DMA應答信號也經(jīng)GAL16V8譯碼送回8237的HLDA引腳。地址鎖存器74LS573的作用是鎖存8237在DMA服務(wù)周期通過(guò)數據線(xiàn)D0~7輸出的高8位地址A8~15。由于DSP不直接提供、、和信號,故這些信號只能由GAL16V8譯碼得到。

  圖3所示電路提供了4個(gè)通道的外設請求DMA服務(wù)信號,并且8237直接擁有AEN引腳,滿(mǎn)足了表1中的所有要求,從而就能正確實(shí)現DSP與聲卡的接口。實(shí)際工作中,我們根據聲卡在PC機中的使用情況設置8237的DREQ1和DACK1為聲卡的播放通道,8237的DREQ3和DACK3為聲卡的采集通道,聲卡的中斷申請信號IRQ7經(jīng)GAL16V8反向后與DSP的引腳連接。

2.3 系統工作原理及時(shí)序

  圖3所示DSP系統對聲卡的DMA操作過(guò)程可用圖4來(lái)描述,工作時(shí)序如圖5所示?,F結合圖4、圖5將系統工作原理及操作順序說(shuō)明如下:

① CS4235向DMA控制器8237發(fā)出DMA請求信號DREQ;

② 8237向DSP發(fā)出總線(xiàn)請求信號HRQ;

③ DSP的引腳檢測到下跳沿后,進(jìn)入INT1中斷,保護完斷點(diǎn)和現場(chǎng)后,發(fā)IDLE指令,DSP的引腳電平變低,響應外部DMA請求;

④ 8237接管總線(xiàn)后,先向CS4235發(fā)DMA請求的響應信號DACK,表示允許CS4235進(jìn)行DMA傳送,然后按事先設置的初始地址和需傳送的字節數,依次發(fā)送地址和讀寫(xiě)命令,使得在RAM CS4235之間直接交換數據,直至全部數據交換完畢;

⑤DMA傳送結束后,自動(dòng)撤消向CPU的總線(xiàn)請求信號HRQ,此時(shí)DSP檢測到引腳的上升沿,DSP返回到IDLE指令的下一條指令,DSP獲得總線(xiàn)的控制權,繼續在INT1中執行程序。

3 DSP與CS4235的軟件接口

  CS4235的ISA總線(xiàn)接口是即插即用(PnP)的,必須通過(guò)編程激活聲卡后,才能直接存取聲卡寄存器,對聲卡進(jìn)行配置,以完成不同的工作。實(shí)際上,針對非PnP的老ISA卡設計的ISA插槽同樣適用于PnP卡,僅需在軟件上做出相應的改動(dòng)而已。DSP對PnP卡的識別過(guò)程與微機對PnP卡的識別過(guò)程是一模一樣的,圖6給出了DSP對PnP卡的識別程序流程。從上述的PnP卡的識別與配置過(guò)程可見(jiàn),如果是在PC機環(huán)境中,那么這一過(guò)程可自動(dòng)完成;而在用戶(hù)所設計的系統中,這一過(guò)程就顯得有些煩瑣,且意義不是很大。能不能避開(kāi)PnP協(xié)議直接對每塊PnP卡進(jìn)行編程,就像對老的ISA卡那樣操作呢?實(shí)際上,大多數芯片確實(shí)提供了這種簡(jiǎn)潔、快速的方法,統稱(chēng)為"某某公司關(guān)鍵字"接口方法。本文以CS4235為例介紹這種接口技術(shù)。下面所給出的5個(gè)步驟完成后,該聲卡就和老的ISA聲卡操作過(guò)程一樣了。唯一不足的是,如果系統中使用了2塊該類(lèi)型的聲卡,則該方法失效。

① DSP送32字節"Crystal Key"到地址端口279H,該PnP卡馬上進(jìn)入配置狀態(tài)。這32字節數據為:

96,35,9A,CD,E6,F3,79,BC,5E,AF,57,2B,15,8A,C5,E2;

F1,F8,7C,3E,9F,4F,27,13,09,84,42,A1,D0,68,34,1A。

② DSP送句柄號到279H。

③ DSP直接配置每個(gè)邏輯器件的配置寄存器,設置I/O端口基址、中斷號和DMA通道選擇。

④ DSP送79H到279H激活CS4235。

⑤ DSP禁止該PnP卡參與將來(lái)的PnP循環(huán)。

  上述配置完成后,CS4235自動(dòng)退出配置狀態(tài),進(jìn)入正常工作,從而就可以根據具體的功能要求對CS4235的寄存器直接進(jìn)行編程了。

結束語(yǔ)

  在全數字化語(yǔ)言學(xué)習系統中,我們采用了聲效芯片CS4235來(lái)代替以前所用的語(yǔ)音錄放芯片MSM6588。盡管硬件電路設計和軟件操作復雜了許多,但語(yǔ)言學(xué)習系統的重要指標,如通頻帶、信噪比和失真度都達到了多媒體計算機的音質(zhì)標準。實(shí)踐表明,微機中的許多關(guān)鍵技術(shù)和優(yōu)秀的設計思想都可以移植到嵌入式系統中去,使嵌入式系統更加豐富多彩。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)


關(guān)鍵詞: 系統 應用 嵌入式 DSP CS4235 芯片

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>