康令州,張宇,趙文
(中國電子科技集團(tuán)公司第三十研究,成都610041)
集群通信系統(tǒng)是最早出現(xiàn)的一種專用調(diào)度通信系統(tǒng),經(jīng)過多年的發(fā)展,已經(jīng)從最早的一對(duì)一的對(duì)講模式發(fā)展到現(xiàn)在一呼百應(yīng)的群組通信模式,并在公安、政府、軍隊(duì)、交通等眾多對(duì)指揮調(diào)度功能要求較高專用領(lǐng)域中得到了廣泛應(yīng)用。由于集群通信系統(tǒng)具備易于使用、快速接續(xù)等優(yōu)點(diǎn),能夠有效地滿足各個(gè)領(lǐng)域?qū)νㄐ拧⒄{(diào)度和指揮的需求。
同時(shí),隨著時(shí)代的發(fā)展,上述各個(gè)領(lǐng)域?qū)π畔踩男枨笠苍诓粩嘣黾樱M集群系統(tǒng)易被監(jiān)聽,保密性差的缺點(diǎn)也越來越突出。為實(shí)現(xiàn)對(duì)模擬集群系統(tǒng)話音內(nèi)容的加密保護(hù),一種高效、實(shí)用的語音編解碼方案顯得尤為重要。
在各種語音編碼方案中,自適應(yīng)差分脈沖編碼調(diào)制(ADPCM)和自適應(yīng)增量調(diào)制(ADM)編碼技術(shù)在各領(lǐng)域中的應(yīng)用較為廣泛。
ADPCM 編碼通過兩個(gè)相鄰采樣計(jì)算出預(yù)測(cè)值,再將預(yù)測(cè)值與下一個(gè)采樣之差與預(yù)先設(shè)定的比例因子表中相近的那個(gè)因子作運(yùn)算,得到一個(gè)相比原始數(shù)據(jù)小很多的結(jié)果并儲(chǔ)存。該編碼方式主要應(yīng)用于連續(xù)波形數(shù)據(jù),能夠較好的保存波形的變化,編碼話音質(zhì)量好,但其編碼速率高,不適合窄帶信道傳輸。
ADM 編碼的量化步長可以動(dòng)態(tài)調(diào)節(jié),它通過對(duì)輸入信號(hào)的振幅變化率,動(dòng)態(tài)調(diào)節(jié)量化步長的增量值,從而具有很高的信號(hào)保真度。
CVSD 編碼(連續(xù)可變斜率增量調(diào)制)作為ADM編碼的一種方式,它采用多個(gè)連續(xù)可變斜率的線段來逼近音頻信號(hào),當(dāng)線段的斜率為正時(shí),對(duì)應(yīng)的數(shù)字編碼為1,當(dāng)線段的斜率為負(fù)時(shí),對(duì)應(yīng)的數(shù)字編碼為0。同時(shí),CVSD 編碼在有誤碼發(fā)生的情況下仍能保持良好的語音品質(zhì),即使達(dá)到4%比特錯(cuò)誤率時(shí),CVSD 編碼的語音還是可聽的,基本能夠滿足日常的語音通話要求。
因此CVSD 編碼以其較低的應(yīng)用難度,極低的成本,較低的采樣頻率和較好的語音編碼質(zhì)量等優(yōu)勢(shì),得到了廣泛的應(yīng)用,已成為集群通信系統(tǒng)中理想的編碼調(diào)制方案之一。
CML 公司研制的CMX649 芯片是一種支持CVSD編碼功能的成熟芯片。它提供全雙工的CVSD 編碼,具備有高可靠性、容錯(cuò)性及低功耗等特點(diǎn),能夠使應(yīng)用系統(tǒng)開發(fā)者免去了前向誤碼糾錯(cuò),制定相關(guān)協(xié)議和算法的過程,大大減輕了軟件編寫工作的負(fù)擔(dān)和系統(tǒng)的實(shí)現(xiàn)難度,從而節(jié)省了系統(tǒng)開發(fā)的周期,為CVSD 編碼的應(yīng)用提供一種低成本、低功耗的理想解決方案。
CMX649 芯片共有23 個(gè)可配置寄存器,通過對(duì)CMX649 芯片內(nèi)部寄存器的配置可以實(shí)現(xiàn)多種形式的語音編解碼。用戶可根據(jù)實(shí)際情況來進(jìn)行編碼方式和采樣速率的選取、功率的控制、編/譯碼的相關(guān)算法以及其它的一些功能參數(shù)的配置等操作。因此,用戶具有相當(dāng)大的開發(fā)自主權(quán)。
同時(shí),CMX649 芯片提供了一個(gè)名為C-BUS 的配置總線,通過該配置總線可以實(shí)現(xiàn)對(duì)其內(nèi)部寄存器的操作,從而實(shí)現(xiàn)對(duì)CMX649 芯片的配置。在對(duì)C-BUS總線的時(shí)序要求如圖1 所示,在對(duì)其配置時(shí)要嚴(yán)格遵守該時(shí)序,通過對(duì)CSN、SCLK、CMD DATA、REPLY DATA 等信號(hào)的操作實(shí)現(xiàn)對(duì)寄存器的讀寫。

圖1 C-BUS時(shí)序圖
CVSD 編解碼功能設(shè)計(jì)時(shí),采用可編程邏輯器件(CPLD 芯片)對(duì)CMX649 芯片進(jìn)行控制,實(shí)現(xiàn)CVSD 編解碼數(shù)據(jù)的讀寫等功能。
程序設(shè)計(jì)時(shí),遵循通用性和易移植的設(shè)計(jì)思想,采用模塊化的設(shè)計(jì)思路,根據(jù)實(shí)現(xiàn)的功能將程序分為不同的功能模塊。主要包括主控模塊、時(shí)序控制模塊、數(shù)據(jù)接收/發(fā)送模塊、配置模塊等功能模塊。
主控模塊:該模塊為編碼功能的頂層模塊,主要完成對(duì)各個(gè)功能模塊的調(diào)度及配置,通過各模塊之間的有序配合共同完成對(duì)CMX649 芯片的配置、編解碼數(shù)據(jù)的讀寫等操作。
時(shí)序控制模塊:該模塊主要負(fù)責(zé)生成CMX649 芯片運(yùn)行所需要的各種時(shí)鐘及配置信號(hào),并為CPLD 芯片內(nèi)部主控模塊、數(shù)據(jù)接收/發(fā)送模塊、配置模塊的運(yùn)行提供準(zhǔn)確的時(shí)鐘信號(hào)和時(shí)序控制。
數(shù)據(jù)接收/發(fā)送模塊:該模塊主要實(shí)現(xiàn)對(duì)CMX649芯片編碼數(shù)據(jù)的讀寫功能,分別控制CVSD 編碼數(shù)據(jù)的接收和發(fā)送。由于數(shù)據(jù)接收和發(fā)送功能時(shí)序關(guān)系相似,時(shí)鐘頻率一致,考慮模塊的兼容性和復(fù)用性,將數(shù)據(jù)接收/發(fā)送功能設(shè)計(jì)為一個(gè)功能模塊。
設(shè)計(jì)時(shí),將譯碼器的數(shù)據(jù)時(shí)鐘引腳(RX CLK)和碼后的數(shù)據(jù)輸出的時(shí)鐘信號(hào)引腳(TX CLK)均設(shè)計(jì)為輸入模式,并采用相同的鐘源CLK 進(jìn)行設(shè)計(jì)。同時(shí),由于語音信號(hào)的連續(xù)性和實(shí)時(shí)性,在進(jìn)行數(shù)據(jù)接收/發(fā)送模塊設(shè)計(jì)時(shí),同步設(shè)計(jì)了基于乒乓機(jī)制的數(shù)據(jù)讀寫緩存功能,保障語音業(yè)務(wù)的連續(xù)不中斷。
配置模塊:該模塊主要負(fù)責(zé)對(duì)CMX649 芯片的C-BUS 總線進(jìn)行配置操作,產(chǎn)生圖1 所示的時(shí)序關(guān)系,控制CPLD 芯片與CMX649 芯片之間進(jìn)行的指令、數(shù)據(jù)以及狀態(tài)等信息的傳遞。該配置信息只需在芯片上電時(shí)配置,在配置過程中最主要的是正確產(chǎn)生CSN、SCLK、CMD DATA 這3 個(gè)信號(hào),為保持CMX649 芯片工作的穩(wěn)定性,要求對(duì)C-BUS 總線進(jìn)行配置前,這3個(gè)信號(hào)至少需要保護(hù)10ms 以上的高電位。
CSN 為C-BUS 總線的片選信號(hào),它要求在對(duì)CMX649 芯片的寄存器寫程序時(shí)必須保持在低電平狀態(tài),而配置下一個(gè)寄存器之前必須保持一段高電平,并且有嚴(yán)格的時(shí)間要求。
SCLK 為C-BUS 總線的時(shí)鐘信號(hào),要求其工作頻率最高不超過5KHz,該時(shí)鐘與系統(tǒng)內(nèi)的各時(shí)鐘采用同一時(shí)鐘源進(jìn)行設(shè)計(jì)。
CMD DATA 為C-BUS 總線的數(shù)據(jù)信號(hào),其必須與CSN、SCLK 配合使用,它負(fù)責(zé)寄存器控制命令寫入及反饋信號(hào)的讀取,在進(jìn)行讀寫操作時(shí),各配置命令要求低位在前。
基于CMX649 芯片的CVSD 編碼功能在集群設(shè)備中應(yīng)用時(shí),各功能模塊需要運(yùn)行在集群設(shè)備的可編程邏輯器件上,系統(tǒng)結(jié)構(gòu)框圖如圖2 所示。
集群設(shè)備開機(jī)時(shí),內(nèi)部的可編程邏輯器件上電運(yùn)行,主控模塊啟動(dòng)后通過調(diào)用配置模塊將CMX649 芯片的配置數(shù)據(jù)通過C-BUS 總線將寫入相應(yīng)寄存器,實(shí)現(xiàn)編碼模式及相應(yīng)參數(shù)的配置。
當(dāng)集群設(shè)備處于發(fā)送狀態(tài)時(shí),用戶話音通過聲音采集器后輸入到CMX649 芯片的模擬話音輸入端,通過運(yùn)行在可編程邏輯器件中的主控模塊的控制,CMX649 芯片將模擬信號(hào)進(jìn)行CVSD 編碼后轉(zhuǎn)化為數(shù)字信號(hào),并通過芯片間的內(nèi)部總線送至設(shè)備處理器,處理器通過調(diào)用加密算法對(duì)編碼后話音數(shù)據(jù)進(jìn)行加密保護(hù),同時(shí)調(diào)用專用調(diào)整芯片對(duì)信號(hào)進(jìn)行調(diào)制并發(fā)送至收端集群設(shè)備。

圖2 系統(tǒng)結(jié)構(gòu)框圖
收端集群設(shè)備按照上述相逆的過程依次對(duì)數(shù)據(jù)進(jìn)行解調(diào)、解密,并通過CMX649 芯片解碼后得到用戶話音,送至集群設(shè)備的揚(yáng)聲器,完成一次用戶通話。
在收發(fā)用戶的通信過程中,由于將模話音信號(hào)編碼并數(shù)據(jù)化了,因此可通過調(diào)用相應(yīng)的加解密算法對(duì)用戶話音進(jìn)行保護(hù),保障了話音傳輸過程的安全性。
該系統(tǒng)設(shè)計(jì)時(shí),考慮到實(shí)際工作中用戶對(duì)話音質(zhì)量的要求及信道的開銷,采用傳輸速率為16kbit/s 的CVSD 全雙工通信模式,經(jīng)試驗(yàn)驗(yàn)證,該采樣率基本能夠滿足日常的無線語音通話要求。
設(shè)計(jì)時(shí),CMX649 芯片的時(shí)鐘輸入引腳(XTAL/CLK)采用4.096M 的外部時(shí)鐘輸入,同時(shí)該時(shí)鐘也是可編程邏輯器件中主控模塊及各個(gè)功能模塊工作的主時(shí)鐘。
在對(duì)數(shù)據(jù)接收/發(fā)送模塊配置時(shí),將收發(fā)時(shí)鐘RX CLK 和TX CLK 設(shè)置為16KHz 的時(shí)鐘,收發(fā)數(shù)據(jù)緩存空間設(shè)置為512 字節(jié)。
在對(duì)配置模塊配置時(shí),根據(jù)編碼模式和傳輸速率的要求,對(duì)CMX649 芯片各寄存器配置要求如表1所示。

表1 寄存器配置表
集群通信系統(tǒng)具有自由組網(wǎng)、靈活配置、快速接續(xù)、一呼百應(yīng)等特點(diǎn),已被大量應(yīng)用于各種專用調(diào)度指揮場景。
以某單位日常勤務(wù)系統(tǒng)為例,系統(tǒng)建設(shè)采用專網(wǎng)模式進(jìn)行,并為每位執(zhí)勤人員配備集群終端,通過多臺(tái)集群終端之間的自由組網(wǎng),進(jìn)行群組用戶的調(diào)度和實(shí)時(shí)通信,實(shí)現(xiàn)日常勤務(wù)的功能,具體應(yīng)用場景如圖3所示。

圖3 日常勤務(wù)系統(tǒng)拓?fù)鋱D
由于該系統(tǒng)為內(nèi)部勤務(wù)系統(tǒng),日常執(zhí)勤使用時(shí),可能會(huì)設(shè)計(jì)內(nèi)部敏感信息的傳輸,為實(shí)現(xiàn)對(duì)用戶敏感信息的保護(hù),通過本方案設(shè)計(jì)的CVSD 編碼模塊實(shí)現(xiàn)對(duì)用戶話音的數(shù)字化,從而完成業(yè)務(wù)信息的加解密等處理,防止敏感信息被用非法用戶竊聽,提高系統(tǒng)的安全性。
CMX649 芯片是基于CVSD 的一種低成本、低功耗的語音編解碼芯片,支持多種編碼方式,功能強(qiáng)大,配置方便,能為系統(tǒng)開發(fā)用戶節(jié)省許多繁瑣的工作。
基于CMX649 芯片實(shí)現(xiàn)的CVSD 編碼功能,具有成熟度高、使用成本低、可移植性高等特點(diǎn),同時(shí)在提高用戶信息的安全等級(jí)的同時(shí),對(duì)話音質(zhì)量的損耗減小到最小,可在多種專用集群通信領(lǐng)域得到應(yīng)用。