新型聲碼器CMX638及其應用設計
2.3 與AMBE2000相比較
與同類(lèi)競爭產(chǎn)品語(yǔ)音壓縮編解碼器件AMBE2000相比CMX638具有以下特點(diǎn):采用RALCWI算法,速度快,質(zhì)量好且結構簡(jiǎn)單;片內集成增益放大器,A/D和D/A轉換器,低通濾波器,能夠直接處理模擬信號,提高信噪比;可選用外部語(yǔ)音CODEC,具有靈活性;壓縮速率雖無(wú)AMBE2000的選項多,但配合壓縮包時(shí)間長(cháng)度和FEC功能,可應用于DMR TDMA和DMR FDMA及其他場(chǎng)合;封裝引腳數少,易于使用和布線(xiàn),且成本低。表1列出CMX638與AMBE2000的異同點(diǎn)。
3 CMX638工作原理
3.1 編解碼過(guò)程
3.1.1 不帶FEC的簡(jiǎn)單幀格式編解碼
CMX638提供簡(jiǎn)單的編解碼數據幀格式,其壓縮速率包括2 050 b/s,2 400 b/s,2 750 b/s,此過(guò)程不帶FEC,STD和DTMF功能。CMX638每隔20 ms采集160個(gè)16位數據(A/D轉換器的采樣率為8 kHz),當第一個(gè)20 ms結束后,開(kāi)始編碼運算,由于信號的異同會(huì )產(chǎn)生不同抖動(dòng)延時(shí),主機在40 ms的時(shí)刻讀取第一幀數據。以后每隔20 ms操作一次,形成流水線(xiàn)作業(yè)。在解碼過(guò)程中,在0 ms時(shí)刻主機向CMX638輸入一幀數據后,CMX638開(kāi)始解碼運算,與編碼相似也會(huì )出現算法抖動(dòng)延時(shí),第一個(gè)樣本的輸出時(shí)刻由內部寄存器IDD決定,其延時(shí)應確保輸出連續有效的數據。圖2為CMX638簡(jiǎn)單幀格式編解碼過(guò)程。
3.1.2 帶FEC的復雜幀格式編解碼
CMX638可提供帶前向糾錯的編解碼數據幀格式,其數據包長(cháng)度為60 ms,包括3幀數據,其壓縮速率為3 600 b/s。CMX638在0時(shí)刻開(kāi)始采樣,每隔20 ms進(jìn)行編碼運算,會(huì )出現抖動(dòng)延時(shí),每隔60 ms插入一次FEC編碼(圖3黑色部分),在80 ms時(shí)刻一個(gè)數據包穩定有效,主機讀出數據,以后每隔60 ms操作一次。在解碼過(guò)程中,主機向CMX638輸入數據包后,開(kāi)始對每一幀數據解碼運算,并會(huì )出現抖動(dòng)延時(shí),設置適當的內部寄存器IDD,可在延時(shí)后輸出連續有效的數據。圖3是帶FEC的復發(fā)幀格式編解碼過(guò)程,其數據包壓縮時(shí)間為60 ms。
3.2 數據幀格式
CMX638編碼后輸出的數據幀格式較簡(jiǎn)單,無(wú)幀頭和其他控制標志信息,直接輸出有效數據。當壓縮速率為2 050b/s時(shí),每隔20 ms產(chǎn)生一幀數據,有效數據位為41 bit,占用6字節,主機必須以字節為單位與CMX638交換數據,所以應該輸入/輸出6字節,其中最高字節先進(jìn)先出,7個(gè)無(wú)效比特位不影響編解碼。當壓縮速率為2 400 b/s時(shí),其工作原理與2 050 b/s壓縮速率相同,有效數據為48 bit,恰好占用6字節,無(wú)無(wú)效比特位。當壓縮速率為2 750 b/s,有效數據為55bit,占用7字節,1個(gè)無(wú)效比特位,必須輸入/輸出7字節。當壓縮速率為3 600 b/s,帶FEC功能,每隔60 ms產(chǎn)生包括3幀的數據包,有效數據為216 bit,采用硬比特格式,占用27字節。而采用軟比特格式時(shí),則占用108字節。
3.3 主機與片外CODEC接口
主機通過(guò)C-BUS串行接口與CMX638交換數據。寫(xiě)操作時(shí),CSN為低,先寫(xiě)入要訪(fǎng)問(wèn)的寄存器地址,再寫(xiě)入有效數據,以字節為單位,結束時(shí)CSN拉高;讀操作時(shí),先寫(xiě)入地址,接著(zhù)讀取數據。在CLK上升沿采樣,最大時(shí)鐘頻率為5 MHz;每?jì)纱蜟SN操作應至少相隔1μs。
當CMX638選用外部CODEC時(shí),利用SSP接口與外部CODEC交換數據。當STRB同步脈沖到達,如果是寫(xiě)操作,SDI輸入16 bit數據;如果是讀操作,SDO輸出16 bit數據。SCLK的最大時(shí)鐘頻率為6.6 MHz,時(shí)鐘沿采樣輸入數據方式取決于內部寄存器EXCODECCONT($0B)。
評論