當(dāng)前位置:首頁 > 電源 > 數(shù)字電源
[導(dǎo)讀]如果要將其錄音以數(shù)字形式的數(shù)據(jù)保存,則應(yīng)將其模擬錄音信號(hào)變換成數(shù)字形式的數(shù)據(jù),這就給原始數(shù)據(jù)的保存帶來諸多不便。因此,筆者按G.723標(biāo)準(zhǔn)設(shè)計(jì)了一種數(shù)字錄音機(jī),它以ADSP-2181作為語音處理器和系統(tǒng)控制器,取消

如果要將其錄音以數(shù)字形式的數(shù)據(jù)保存,則應(yīng)將其模擬錄音信號(hào)變換成數(shù)字形式的數(shù)據(jù),這就給原始數(shù)據(jù)的保存帶來諸多不便。因此,筆者按G.723標(biāo)準(zhǔn)設(shè)計(jì)了一種數(shù)字錄音機(jī),它以ADSP-2181作為語音處理器和系統(tǒng)控制器,取消了普通錄音機(jī)的機(jī)械部分和磁帶,以大容量的閃速存儲(chǔ)器(Flash RAM)作為數(shù)字語音數(shù)據(jù)存儲(chǔ)器。該樣機(jī)體積很小,錄音時(shí)間長,沒有機(jī)械噪聲及機(jī)械故障,很有實(shí)用價(jià)值。
 

G.723算法對(duì)語音信號(hào)有很好的編解碼效果,同時(shí)也可處理音樂和其它聲音信號(hào),典型輸入是64kb/s(8k%26;#215;8)或128kb/s(8k%26;#215;16)的A律或μ律的PCM采樣語音信號(hào)。每次處理一幀語音信號(hào),每幀240個(gè)采樣點(diǎn)(30ms)。在5.3kb/s的碼率下,每幀語音被壓縮成20個(gè)字節(jié)傳輸;在6.3kb/s的碼率下,每幀語音被壓縮成24個(gè)字節(jié)傳輸。
  1.2 數(shù)字錄音系統(tǒng)的結(jié)構(gòu)框圖
  系統(tǒng)框圖主要由圖1所示的五部分組成。

 

   
  AD73311是一種可編程的數(shù)據(jù)轉(zhuǎn)換器,內(nèi)含五個(gè)8位控制寄存器CRA~CRE,用于設(shè)定工作狀態(tài),控制輸入輸出。AD73311通過串行口與處理器接口,傳送的是16位數(shù)據(jù),有五種工作模式,分別為:程序模式、數(shù)據(jù)模式、混合模式、模擬環(huán)路模式、數(shù)字環(huán)路模式。其中前三種是正常的工作模式,后兩種是調(diào)試模式,僅在調(diào)試時(shí)使用。五種工作模式由內(nèi)部的控制寄存器A中的四位(CRA0~3)控制。
  程序模式:AD73311啟動(dòng)或重置后即工作于程序模式,此時(shí)AD73311串行口輸入的數(shù)據(jù)將作為命令字以初始化內(nèi)部控制寄存器組,之后AD73311根據(jù)初始化命令字進(jìn)入相應(yīng)的工作模式,在此之前AD73311串行口輸出的碼字是無效的。數(shù)據(jù)模式:此時(shí)AD73311串行口輸出的是A/D轉(zhuǎn)換的16位數(shù)據(jù),輸入的是D/A轉(zhuǎn)換的16位數(shù)據(jù)。AD73311一旦進(jìn)入數(shù)據(jù)模式,就不能再得到控制信息,所以就永遠(yuǎn)處于這一模式,除非重啟動(dòng)。這時(shí)硬件上可采用發(fā)送接收幀同步信號(hào)同步方式?;旌夏J剑捍藭r(shí)16位碼字可能是控制字,也可能是數(shù)據(jù)。碼字的最高位MSB用來標(biāo)識(shí)這個(gè)碼字是控制命令字(MSB=1)還是數(shù)據(jù)(MSB=0,低15位是有效數(shù)據(jù))。在混合模式下,ADSP-2181可以根據(jù)系統(tǒng)的運(yùn)行狀況適時(shí)改變AD73311的工作參數(shù),如放大器的放大倍數(shù)等。這時(shí)硬件上可采用發(fā)送接收幀同步信號(hào)異步方式,便于ADSP-2181的自主控制。
  AD73311控制采樣率由時(shí)鐘分頻電路完成。時(shí)鐘分頻電路將從DMCLK引腳輸入的外部時(shí)鐘頻率MCLK通過主頻時(shí)鐘因子分頻為內(nèi)部時(shí)鐘頻率DMCLK,MCLK有五種頻率選擇,由內(nèi)部控制寄存器B中的CRB4~6三位控制。DMCLK決定了AD73311的采樣頻率,它也是AD73311串行口的幀同步頻率。DMCLK再經(jīng)串行時(shí)鐘分頻因子分頻為串行時(shí)鐘頻率SCLK,DMCLK有四種選擇,由內(nèi)部控制寄存器B中的GRG2~3兩位控制。 

 [!--empirenews.page--]通過編程控制寄存器D,可控制輸入輸出的增益。輸入增益IG可在0~38dB之間調(diào)整,輸出增益OG可在-15~6dB之間調(diào)整。AD73311的具體編程流程圖如圖3所示,控制程序如下: AX0=DM(0x3fe5); {For 2181-PF0 connect with AD73311-RESET} AR=AX0 AND 0XFFFE; {PF0 pin reset} DM(0x3fe5)=AR; {RESET AD73311 to program} NOP; {Delay} NOP; NOP AX0=DM(0x3fe5); AR=AX0 or 0X0001; {2181-PF0 SET} DM(0x3fe5)=AR; {ready to program} ax0=0x82f9; {寫控制寄存器CRC,5V電源,使能ADC和DAC} tx0=ax0; IDLE; ax0=0x811b; {寫控制寄存器CRB,分頻,設(shè)置8K采樣率} tx0=ax0; IDLE; ax0=0x8320; {寫控制寄存器CRD,輸出輸入增益為0} tx0=ax0; IDLE; ax0=0x8400; {寫控制寄存器CRE,DAC延遲量為0} ax0=ax0; IDLE; ax0=0x8001; {寫控制寄存器CRA,進(jìn)入數(shù)據(jù)傳輸模式} tx0=ax0; IDLE; 2.2 閃速存儲(chǔ)器與ADSP-2181的接口電路閃速存儲(chǔ)器采用韓國三星公司生產(chǎn)的KM29 N32000,容量為4M%26;#215;8=32Mbit,分成512塊,每塊有16頁,每頁528個(gè)字節(jié)??蛇M(jìn)行100萬次擦寫,數(shù)據(jù)保存時(shí)間為10年,通過編程可自動(dòng)進(jìn)行擦寫。這里用于保存錄音數(shù)據(jù),其數(shù)據(jù)保存不需要充電維持。 

 

 
  3 系統(tǒng)控制軟件設(shè)計(jì)
  ADSP21XX系列提供了一整套軟件開發(fā)工具及相應(yīng)的仿真器開發(fā)平臺(tái),給系統(tǒng)的調(diào)試與仿真提供了極大的方便。軟件開發(fā)系統(tǒng)包括系統(tǒng)建造器、帶運(yùn)行時(shí)時(shí)間庫的C編譯器、匯編器、連接器、PROM劃分器等。通過編譯連接匯編源程序,可以生成EXE文件。此文件是存儲(chǔ)映像文件,可以加載到仿真器上進(jìn)行仿真;調(diào)試成功后,通過PROM劃分器和EPROM燒制設(shè)備可以寫入EPROM,系統(tǒng)復(fù)位時(shí)DSP加載EPROM程序便可自動(dòng)運(yùn)行,控制整個(gè)系統(tǒng)的工作。系統(tǒng)軟件設(shè)計(jì)采用自舉和中斷控制兩種方式。自舉方式系統(tǒng)一上電,ADSP-2181讀取EPROM中的程序,自動(dòng)運(yùn)行程序去控制整個(gè)系統(tǒng)工作。
  中斷控制利用了ADSP-2181的兩個(gè)中斷,即sport0接收中斷和timer中斷。ADSP-2181的sport與AD73311相連。當(dāng)?shù)玫揭粋€(gè)采樣數(shù)據(jù)時(shí),產(chǎn)生一個(gè)接收中斷,ADSP-2181讀取便得到采樣數(shù)據(jù)。由于sport0是全雙工的,當(dāng)產(chǎn)生接收中斷時(shí),同時(shí)可以發(fā)送數(shù)據(jù),一方面在錄音時(shí)可以得到回放效果;另一方面則在播放時(shí)可直接發(fā)送數(shù)據(jù),而對(duì)采樣數(shù)據(jù)置之不理,這樣便于解碼數(shù)據(jù)以固定的碼率回放。Timer中斷定時(shí)檢測外部控制引腳狀態(tài),包括錄音、放音、快放及碼率轉(zhuǎn)換4個(gè)引腳,每個(gè)引腳的0/1狀態(tài)對(duì)應(yīng)兩種控制,即開始錄音/停止錄音、開始放音/停止放音、5.3kbps/6.3kbps碼率轉(zhuǎn)換及快放狀態(tài),共有七個(gè)狀態(tài)。 DSP匯編語言的結(jié)構(gòu)與ASM匯編語言類似,其開頭部分對(duì)應(yīng)中斷向量表。工作在中斷方式時(shí),則向量表對(duì)應(yīng)中斷處一般為一條跳轉(zhuǎn)語句;產(chǎn)生中斷時(shí),則跳到相應(yīng)語句執(zhí)行中斷控制功能。主程序的中斷設(shè)置部分如下: JUMP start;NOP;NOP;NOP; {reset start interrupt} RTI;NOP;NOP;NOP; {IRQ2} RTI;NOP;NOP;NOP; {IRQL1} RTI;NOP;NOP;NOP; {sport0 transmit} JUMP sportReceive;NOP;NOP;NOP; {sport0 receive} RTI;NOP;NOP;NOP; {IRQE} RTI;NOP;NOP;NOP; {BDMA} RTI;NOP;NOP;NOP; {sport1 transmit} RTI;NOP;NOP;NOP; {sport1 receive} JUMP settimer;NOP;NOP;NOP; {timer interrupt} RTI;NOP;NOP;NOP; {PowerDown} sporto和timer中斷控制說明如下: (1)sporto接收數(shù)據(jù)中斷在程序中,數(shù)據(jù)處理集中在此進(jìn)行。主要過程是:在錄音時(shí),每收到240個(gè)采樣數(shù)據(jù),就進(jìn)行G.723編碼,將編碼結(jié)果保存到閃速存儲(chǔ)器中;在播放時(shí),每次讀取24個(gè)數(shù)據(jù),將讀取的數(shù)據(jù)進(jìn)行解碼,再通過串行口發(fā)送出去,經(jīng)揚(yáng)聲器還原成語音信號(hào)。其流程如圖6所示。(2)timer中斷 timer中斷用來檢測用戶的控制信息及顯示運(yùn)行時(shí)間信息。用戶控制有4個(gè),即碼率選擇、錄音控制、放音控制及快退控制。對(duì)應(yīng)這4個(gè)控制引腳,初始設(shè)定為輸入態(tài),然后通過檢測各個(gè)引腳的電平設(shè)定工作態(tài)。其流程如圖7所示。
  4 系統(tǒng)調(diào)試
  系統(tǒng)調(diào)試要使用AD公司提供的ADSP21XX系列的整套軟件開發(fā)工具和仿真器。筆者使用ADSP-2181-EZ-ICE仿真器進(jìn)行調(diào)試。仿真器上自帶33MHz的2181,調(diào)試支持20個(gè)斷點(diǎn),可單步、設(shè)斷點(diǎn)和全速運(yùn)行,可隨時(shí)觀察和修改寄存器和存儲(chǔ)單元的值。仿真器上提供了一個(gè)14針的仿真接口,仿真器通過此接口仿真控制目標(biāo)系統(tǒng)。仿真器與計(jì)算機(jī)間有一個(gè)RS-232接口,通過數(shù)據(jù)進(jìn)行連到計(jì)算機(jī)的串行口上,在仿真器開發(fā)平臺(tái)上就可以進(jìn)行軟件調(diào)試。系統(tǒng)調(diào)試時(shí)遇到的主要問題是存儲(chǔ)器讀寫及LCD的顯示問題。開始時(shí)發(fā)現(xiàn)寫進(jìn)閃速存儲(chǔ)器的數(shù)據(jù)與讀出的數(shù)據(jù)不符。經(jīng)仔細(xì)分析,發(fā)現(xiàn)是由于沒有嚴(yán)格按照閃速存儲(chǔ)器的讀寫操作時(shí)序進(jìn)行編程,或是延遲量不夠,或是兩個(gè)信號(hào)的先后次序弄反了,數(shù)據(jù)可能根本沒有寫進(jìn)去,讀出的數(shù)據(jù)當(dāng)然是錯(cuò)的。在嚴(yán)格按照其說明書的時(shí)序進(jìn)行編程控制后,數(shù)據(jù)的讀寫擦除操作完全正常。在播放錄音數(shù)據(jù)時(shí),曾出現(xiàn)聲音跳變不連續(xù)的問題,經(jīng)分析發(fā)現(xiàn)原因在于地址定位時(shí)出錯(cuò)。因?yàn)閷?duì)閃速存儲(chǔ)器擔(dān)任時(shí)每次讀寫都是一幀數(shù)據(jù),而編解碼時(shí)一次操作的數(shù)據(jù)為20/24個(gè)字節(jié),兩者長度不一樣,需要進(jìn)行轉(zhuǎn)換操作。
  本系統(tǒng)中ADSP-2181處理器的機(jī)器周期為30ns,經(jīng)設(shè)定最大的等待周期為7機(jī)器周期后也才有240ns,而LCD的工作使能脈寬至少要300ns。因此在硬件上增加了一單穩(wěn)延遲電路,這樣便解決了此問題。

 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動(dòng)力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉