基于DSP的廣播級(jí)數(shù)字音頻延時(shí)器
音頻延時(shí)器可用于廣播電臺(tái)直播節(jié)目。它將音頻信號(hào)延時(shí)一段時(shí)間后播出,以避免主持人的口誤或聽(tīng)眾熱線中聽(tīng)眾的一些不健康言論通過(guò)廣播媒體傳播,從而實(shí)現(xiàn)直播節(jié)目的安全播出。作為廣播級(jí)設(shè)備,音頻延時(shí)器對(duì)動(dòng)態(tài)范圍、失真、信噪比和頻率響應(yīng)等性能指標(biāo)要求很高,因此一般采用數(shù)字技術(shù)。采用計(jì)算機(jī)內(nèi)置全雙工聲卡硬盤(pán),可以以軟件方式實(shí)現(xiàn)音頻信號(hào)眨時(shí),但使用操作不方便,可靠性較差,性能價(jià)格比較低。本文提出的基于高精度∑-ΔADC和DSP芯片的廣播級(jí)數(shù)字音頻延時(shí)器,具有性能指標(biāo)高、操作簡(jiǎn)便、功能齊全等特點(diǎn),該設(shè)計(jì)方案已產(chǎn)品化。
本文引用地址:http://www.ex-cimer.com/article/84988.htm1 系統(tǒng)結(jié)構(gòu)
1.1 系統(tǒng)構(gòu)成
延時(shí)器硬件為主從式結(jié)構(gòu),如圖1所示,主要由單睡機(jī)M發(fā)8HC05C8、DSP芯片MTS320C32和音頻編解碼器CS4224等組成。M68HC05C8作為整個(gè)系統(tǒng)的主機(jī),完成系統(tǒng)的控制功能。TMS320C32作為系統(tǒng)的核心,完成音頻信號(hào)的延時(shí)功能。CS4224及音頻輸入輸出調(diào)理電路共同完成音頻信號(hào)的A/D和D/A轉(zhuǎn)換。
CS4224是高性能的24位音頻編碼解碼器,使用∑-Δ技術(shù)提供全雙工立體聲數(shù)/模和模/數(shù)轉(zhuǎn)換,動(dòng)態(tài)范圍達(dá)105dB,諧波失真和操聲為-97dB,采樣頻率為32kHz、44.1kHz和48kHz可選。芯片采用差動(dòng)輸入和輸出,片上自帶抗混疊濾波器和輸出平滑濾波器以及數(shù)字去加重濾波電路,具有模擬音量控制,支持主或從工作方式。
TMS320C32為低成本、高性能的浮點(diǎn)DSP芯片,非常適合語(yǔ)音數(shù)字信號(hào)處理。它支持24位地址總線和32位數(shù)據(jù)總線,可以尋址延時(shí)器所需的大容量存儲(chǔ)器。它還具有串行接口,便于和串行音頻數(shù)據(jù)輸入輸出的CS4224接口。
M68HC05C8實(shí)現(xiàn)人機(jī)接口,管理鍵盤(pán)顯示和延時(shí)器遙控接口,并控制CS4224和TMS320C32的運(yùn)行。
1.2 存儲(chǔ)器接口
TMS320C32具有增強(qiáng)型的外部存儲(chǔ)器接口,程序存儲(chǔ)器的寬度可以是16位和32位,數(shù)據(jù)存儲(chǔ)器可以是8/16/32位三種寬度。TMS320C32采用兩組選通信號(hào)STRB1和STRB0,其尋址范圍不同。每組選通信號(hào)由四個(gè)引腳組成,作為片選和額外的地址線,引腳的特性由每組選通信號(hào)對(duì)應(yīng)的總線控制寄存器確定。通過(guò)設(shè)置總線控制寄存器的某些域,可以指定數(shù)據(jù)類(lèi)型和外部存儲(chǔ)器寬度。
延時(shí)采用了兩組不同寬度的存儲(chǔ)器。SRAM存儲(chǔ)音頻數(shù)據(jù),設(shè)置存儲(chǔ)器寬度為32位,數(shù)據(jù)類(lèi)型為32位。由于音頻編解碼器CS4224為24位,因此實(shí)際使用24位,由三片8位SRAM構(gòu)成,分別用STRB0_B0~2片選。FLASH芯片28F512存儲(chǔ)用戶(hù)音頻信號(hào)處理程序,存儲(chǔ)器寬度為8位,用ATRB1_B0片選。
存儲(chǔ)器接口主要考慮存儲(chǔ)器速度,以確定需要插入幾個(gè)等待狀態(tài)。由于TMS320C32時(shí)鐘頻率為40MHz,而FLASH存儲(chǔ)器的存取速度為150ns,SRAM的存取速度為70ns,因此必須插入等待狀態(tài)。TMS320C32具有內(nèi)部可編程的軟件等待狀態(tài)發(fā)生器,通過(guò)STRBx控制寄存器的SWW域選擇等待狀態(tài)發(fā)生器的工作模式,并在WTCNT域?qū)懭胄枰却臋C(jī)器周期數(shù)。由于程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)分別采用STRB1和STRB0選通,因此可以根據(jù)各自的存取速度分別設(shè)置所需的機(jī)器周期數(shù)。
TMS320C32具有程序引導(dǎo)功能。硬件復(fù)位時(shí)令MCBL/MP引腳為高電平,則工作于微計(jì)算機(jī)模式,執(zhí)行片內(nèi)的引導(dǎo)程序,將FLASH存儲(chǔ)器中的用戶(hù)程序裝入內(nèi)部高速RAM中運(yùn)行??梢酝ㄟ^(guò)引腳的INT0~3確定引導(dǎo)模式,外部存儲(chǔ)器裝入地址根據(jù)存儲(chǔ)器的連接方式選為Boot3區(qū),不采用握手信號(hào)。FLASH存儲(chǔ)器的前端為程序頭,包括引導(dǎo)時(shí)TMS320C32必需的信息,如外部存儲(chǔ)器寬度、引導(dǎo)結(jié)束后總線控制寄存器內(nèi)容、各數(shù)據(jù)塊長(zhǎng)度、目標(biāo)存儲(chǔ)器寬度和數(shù)據(jù)類(lèi)型等。
1.3 音頻數(shù)據(jù)接口
CS4224和TMS320C32采用串行方式連接。CS4224的串行數(shù)據(jù)線SDIN和SDOUT分別與TMS320C32的串口數(shù)據(jù)線DR和DX直接相連,數(shù)據(jù)移位時(shí)鐘SCLK與數(shù)據(jù)收發(fā)時(shí)鐘CLKX和CLKR相連,左右聲道時(shí)鐘LRCK經(jīng)二倍頻后作為收發(fā)幀同步時(shí)鐘FSX和FSR。工作時(shí)序見(jiàn)圖2。
TMS320C23串口可以工作于可變或固定數(shù)據(jù)速率方式,進(jìn)行連續(xù)或猝發(fā)傳輸。延時(shí)器選用可變數(shù)據(jù)速率方式和猝發(fā)傳輸,并工作于最高幀速率,即前面一幀和后面一幀之間沒(méi)有停頓。
評(píng)論