唐 文,王志華,馬 俊,雷 宇
(中國電子科技集團公司第三十研究所,四川 成都 610041)
?
一種基于PCM數(shù)字信號的傳真控制協(xié)議軟件檢測方案* 1
唐文,王志華,馬俊,雷宇
(中國電子科技集團公司第三十研究所,四川 成都 610041)
摘要:為了在模擬電話線路上檢測G3傳真通信,參照軟件無線電技術思路,可利用軟、硬件相結合的方案。硬件負責從接口上采集PCM數(shù)據(jù),軟件負責處理PCM話音數(shù)據(jù)如對PCM數(shù)據(jù)進行上采樣、V.21FSK解碼、HDLC幀解析,提取出傳真控制協(xié)議報文,根據(jù)傳真控制協(xié)議判斷當前電話線路上是否正在進行傳真通信。而且根據(jù)軟件所在處理器的處理能力,可實現(xiàn)一路或多路PCM數(shù)據(jù)處理和信號處理靈敏度可調(diào)。該方案可以利用嵌入式處理器的處理性能,實現(xiàn)多路基于PCM話音數(shù)據(jù)的傳真監(jiān)測,降低硬件實施成本,在硬件平臺實現(xiàn)國產(chǎn)化方向具有重要的意義。
關鍵詞:傳真控制檢測;PCM;V.21;HDLC; FSK;濾波器
0引言
傳真通信作為一種重要的數(shù)據(jù)通信業(yè)務,在電信網(wǎng)應用廣泛。為了在實際的線路中間設備上監(jiān)測傳真業(yè)務,需要對PCM話音數(shù)據(jù)進行傳真控制協(xié)議交互內(nèi)容進行檢測。在普通電話網(wǎng)上開展的G3類傳真通信協(xié)議一般包括兩種:基于V.21FSK調(diào)制標準的傳真控制協(xié)議和V.34傳真數(shù)據(jù)協(xié)議。當中間設備檢測當前電話呼叫的業(yè)務類型是否是話音或者傳真時,只需檢測業(yè)務數(shù)據(jù)中是否有V.21傳真控制協(xié)議報文。為了降低硬件成本、便于靈活部署,可采用軟硬結合的辦法,硬件負責采集PCM數(shù)據(jù),軟件負責處理PCM數(shù)據(jù),對PCM數(shù)據(jù)進行上采樣、FSK解碼、HDLC幀解析,提取出傳真控制協(xié)議報文。根據(jù)軟件所在處理器的處理能力,可實現(xiàn)一路或多路PCM數(shù)據(jù)處理。
通過文獻檢索,F(xiàn)SK信號解調(diào)硬件實現(xiàn)方法有相干解調(diào)、非相干解調(diào)[1-2],使用模擬低通濾波器對FSK信號進行分頻檢測?;蛘呋谟布酒腄FT變換算法對FSK調(diào)制使用的頻率進行檢測[3]。本文根據(jù)軟件無線電的實現(xiàn)思想,采用軟件在PCM數(shù)字信號上實現(xiàn)傳真控制協(xié)議的FSK檢測技術,提出一個較好的檢測方案,利用嵌入式處理器日益強大的處理性能,軟件實現(xiàn)的靈活性和靈敏度可調(diào)的優(yōu)點,對原始采樣PCM數(shù)據(jù)進行處理,從中檢測出傳真控制協(xié)議數(shù)據(jù)。
1G3類傳真過程介紹
根據(jù)ITU-TT.30[4]規(guī)定,典型的G3 類傳真過程如圖1所示:
A階段:呼叫建立。
B階段:前消息處理過程,識別并選擇必須的設備,主要完成能力協(xié)商和線路訓練,主要是速率、編碼和糾錯方面的協(xié)商。
圖1 傳真過程
C階段:消息傳輸過程,包括相位調(diào)整和同步,傳輸過程格式以及指定信號都與T4[4]建議一致。
D階段:后消息過程,包括結束消息和證實,以及多文件傳輸過程,完成證實多頁還是單頁文件傳輸,以及報文結束,傳真結束信號的發(fā)送接收。
E階段:呼叫釋放過程。
在傳真過程階段,所有的控制信號除了單音信號、訓練序列,其他的控制信號都采用HDLC幀進行傳輸。HDLC信息字段的長度是可變的,它包含了用于兩個傳真終端之間控制和報文互換的指定信息。在T.30建議書中信息字段被劃分為兩部分,傳真控制字段(FCF)和傳真信息字段(FIF),如圖2所示。
圖2 HDLC幀結構
V.21標準是一種傳輸速率為300b/s的會話協(xié)議,用簡單的輸入/輸出設備和輕松的操作就能到達數(shù)據(jù)傳輸功能的會話協(xié)議。用于傳真HDLC信息包交換階段,即DIS/DCS/CFR/PPS/PPR…這些握手信息的傳輸。傳真業(yè)務流程的監(jiān)測就是對使用V.21調(diào)制解調(diào)標準調(diào)制的數(shù)據(jù)進行檢測,提取出HDLC傳真控制命令幀。
2數(shù)字信號處理原理介紹
從PCM數(shù)據(jù)中檢測出FSK調(diào)制信號,需要運用數(shù)字信號處理過程實現(xiàn)對PCM信號的低通濾波,分離出V.21使用的兩個頻率信號:1 650Hz和1 850Hz正弦波。為了降低軟硬件之間接口交互數(shù)據(jù)量,話音數(shù)據(jù)的硬件PCM通用采樣率為8kHz。軟件在處理PCM數(shù)據(jù)之前,需要做采樣率轉換,將采樣率提升為40kHz,能夠提高V.21調(diào)制信號的識別精度。出于算法簡單、軟件運算量可控的考慮,該低通濾波器設計成FIR數(shù)字濾波器。
FIR數(shù)字濾波器在保證幅度特性滿足要求的條件下,能夠提供嚴格的線性相位特性,計算量可控,可用于低通濾波器設計[5]。FIR數(shù)字濾波器輸入輸出關系可用下面的差分方程描述:
(1)
對應的系統(tǒng)函數(shù)為:
(2)
因此H(z)是的N-1次多項式,在z平面上有N-1個零極點,且在原點有N-1個重極點。FIR濾波器設計的任務就是選擇有限長度的h(k),使傳輸函數(shù)滿足技術指標:即幅度特性和線性相位。
3檢測方案設計與實現(xiàn)
3.1低通濾波器設計
為了實現(xiàn)PCM數(shù)據(jù)的采樣率轉換,需要用到數(shù)字信號處理中的插值與抽取濾波技術[5]。在原始采樣數(shù)據(jù)之間增加D-1個零值,再通過低通濾波器,可實現(xiàn)輸出采樣率為原始采樣率的D倍,為插值濾波。每I個原始采樣點取出一個采樣點,再通過低通濾波器,為抽取濾波,輸出的采樣率為原始采樣率的1/I倍。根據(jù)濾波器的輸入輸出關系的差分方程,濾波器的設計任務是尋找合適的h(n)序列即濾波器系數(shù),使輸出信號的采樣值便于通過軟件計算得到。
濾波器的系數(shù)使用MATLAB工具輔助設計[6]。在MATLAB的命令行下運行filterbuilder命令,彈出濾波器設計的圖形界面,選擇lowpass,進入低通濾波器設計的界面如圖3所示。
圖3 濾波器系數(shù)設計窗口
按圖設定好濾波器的參數(shù)后,點擊apply,然后點擊viewfilterresponse,彈出顯示該濾波器各種特征的圖形界面如圖4所示。
圖4 濾波器系數(shù)設計幅度響應
如果選擇濾波器的類型為單一速率,插值濾波輸出的信號幅度將變??;選擇插值器,插值濾波輸出的信號幅度不變。輸入信號必須是完成插值0后的序列。通過低通濾波器輸出信號產(chǎn)生群延時,在延時若干個樣本時間后,輸出信號才有效。在本方案中,濾波器的類型為單一速率。下面設計了兩種濾波器。這兩種濾波器區(qū)別在于阻帶衰減系數(shù)不一樣;阻帶衰減的程度越大,濾波器系數(shù)越多,軟件濾波的運算開銷就越大。
原始PCM數(shù)字信號采樣率為8kHz,輸出采樣率為40kHz,信號的通帶頻率為1 950Hz,截止頻率4kHz,通道衰減1dB,阻帶衰減60dB,濾波器算法為Equiripple,設計出的濾波器系數(shù)如下(45個):
186,291,443,561,582,437,72,-534,-1343,-2253,-3095,-3651,-3681,-2974,-1387,1111,4413,8271,12319,16120,19232,21272,21982,21272,19232,16120,12319,8271,4413,1111,-1387,-2974,-3681,-3651,-3095,-2253,-1343,-534,72,437,582,561,443,291,186
原始PCM數(shù)字信號采樣率為8kHz,輸出采樣率為40kHz,信號的通帶頻率為1 950Hz,截止頻率4kHz,通道衰減1dB,阻帶衰減55dB,濾波器算法為Equiripple,設計出的濾波器系數(shù)如下(37個):
41, -26, -86, -187, -323, -477, -618, -707, -699, -551, -235, 258, 909,1670, 2470, 3224, 3842, 4247, 4389, 4247,3842,3224, 2470,1670, 909, 258,-235, -551, -699, -707, -618, -477, -323, -187, -86, -26, 41
3.2過零點檢測設計
本方案在PCM數(shù)據(jù)中檢測出1 650Hz和1 850Hz的正弦波信號時,采用了過零點檢測算法。
過零點檢測法[7-8]的基本思想是: 單位符號時間內(nèi)信號經(jīng)過零點的次數(shù),可以用來衡量頻率的高低,故檢出數(shù)字調(diào)頻信號的過零點數(shù)即可得到相應的載波頻率值,根據(jù)已知的載波頻率確定基帶信號0或1。
圖5 FSK解調(diào)框
具體FSK信號的解調(diào)框圖[9]如圖5 所示。假設已調(diào)FSK信號是經(jīng)過數(shù)模轉換后的方波信號??刂菩盘栕鳛橥叫盘枺瑔酉到y(tǒng)的解調(diào)工作。由于要計算調(diào)制信號一個周期內(nèi)的過零點次數(shù),所以時鐘計數(shù)器用來計算調(diào)制信號的周期,如果時鐘頻率與FSK調(diào)制信號頻率fclk∶fnrz=1∶11,那么表示每11 個CLK時鐘周期發(fā)送一個FSK調(diào)制信號,即當時鐘計數(shù)器從0遞增到10時,一個調(diào)制信號傳輸結束。計數(shù)器對一個周期內(nèi)已調(diào)FSK信號上升沿或下降沿的個數(shù)( 即過零點的個數(shù)) 進行計數(shù)。判決器作用主要是在調(diào)制信號的一個周期內(nèi),對計數(shù)器m的值進行判決。判決門限值根據(jù)調(diào)制信號和基帶信號的頻率的比值決定。如果一個FSK調(diào)制信號碼元中有8個周期的載波f1或者有4個周期的載波f2,則判決門限值x可以選擇x=8也可以選擇x=4。通過判決器就可以恢復出原始的基帶信號。判決器的門限可以選6或者7,使得解調(diào)器有一定的容錯能力,能更好的解調(diào)出基帶信號。
3.3PCM傳真協(xié)議檢測流程設計
兩個終端設備進入傳真通信時,設備硬件將按8kHz采樣的PCM話音數(shù)據(jù)按256字節(jié)/幀的頻率以中斷的方式交給處理器軟件。軟件每次收到一幀PCM數(shù)據(jù)時,先進行插值濾波器計算,將8kHz的PCM數(shù)據(jù)轉換成40kHz的PCM數(shù)據(jù)。然后按FSK調(diào)制的符號速率計算出每個符號所需要的PCM樣本數(shù)a,統(tǒng)計出每a個樣本PCM數(shù)據(jù)中,F(xiàn)SK信號上升沿的數(shù)量b,判斷b與待解調(diào)的FSK兩個載波頻率對應的調(diào)制信號的周期數(shù)門限,確定是否是兩個載波頻率中的一個。如果滿足載波頻率的周期門限,則輸出相應載波頻率對應的0或1。輸出的0或1比特流按每字節(jié)8bit轉成字節(jié)流進行存儲。HDLC成幀模塊按照標準HDLC數(shù)據(jù)封裝格式對該字節(jié)流進行搜索、定位,解析出HDLC協(xié)議幀。傳真協(xié)議模塊對每個HDLC協(xié)議幀進一步解析,分析出當前PCM流中包含的傳真控制命令。如圖6所示。
圖6 傳真控制協(xié)議檢測流程
3.4方案運行結果
通過借助硬件平臺采集傳真通信過程中發(fā)送或接收的PCM編碼數(shù)據(jù)保存為文件,編寫計算機算法仿真程序,對保存的PCM數(shù)據(jù)文件進行處理,其中分別使用上述兩組濾波器系數(shù)進行對比,輸出解析后的傳真控制協(xié)議命令二進制文件,對上述方案的軟件可行性和正確性進行了驗證。原始PCM數(shù)據(jù)波形圖和解析后的協(xié)議命令內(nèi)容參見圖7、圖8、圖9、圖10。使用上述兩組濾波器系數(shù)均能正確的檢測出傳真控制協(xié)議數(shù)據(jù),在嵌入式處理器平臺上,優(yōu)先使用了系數(shù)數(shù)目較少的濾波器系數(shù),減少嵌入式處理器軟件運算量,提高在嵌入式處理器上可實現(xiàn)性。
圖7 傳真發(fā)送端發(fā)送的PCM數(shù)據(jù)波形
圖8 傳真接收端發(fā)送的PCM數(shù)據(jù)波形
圖7波形圖中,信號幅度較平穩(wěn)的、幅度相對較低的波形部分為V.21傳真控制協(xié)議報文,幅度相對較高的波形部分為傳真數(shù)據(jù)報文。
圖8波形圖中,信號幅度較高的波形部分為V.21傳真控制協(xié)議報文,幅度相對較低的波形為訓練序列。
圖9 傳真發(fā)送端發(fā)送數(shù)據(jù)解析出的控制協(xié)議報文
圖10 傳真接收端發(fā)送數(shù)據(jù)解析出的控制協(xié)議報文
對比協(xié)議文件內(nèi)容和傳真控制協(xié)議標準[4],該次傳真發(fā)送端發(fā)送的傳真控制協(xié)議命令如圖9所示,具體如下:
(1)0x7e, 0xff, 0xc8, 0xc4, 0x00, 0x00, 0x6a…為NSS報文,表示非標準設備建立,是對NSF報文的響應。
(2)0x7e, 0xff, 0xc8, 0xf4為EOP報文,表示傳真頁結束。
(3)0x7e, 0xff, 0xc8, 0xdf, 0x00, 0x00為DCN報文,表示傳真通信結束。
傳真接收端發(fā)送的傳真控制協(xié)議命令如圖10所示,具體如下:
(1)0x7e, 0xff, 0xc0, 0x04, 0x00, 0x00為NSF報文,表示進行非標準設備能力協(xié)商,即非T系列的用戶專用能力。
(2)0x7e, 0xff, 0xc8, 0x01, 0x00, 0x72…為DIS報文,標識被叫的ITU-T的標準能力。
(3)0x7e, 0xff, 0xc8, 0x21, 0x57為CFR報文,表示可接收確認,報文前過程已經(jīng)完成,可以開始報文傳輸。
(4)0x7e, 0xff, 0xc8, 0x31, 0x45為MCF報文,表示多頁報文確認。
此次傳真過程,發(fā)送端與接收端傳真控制報文交互流程如圖11所示。
圖11 傳真控制報文交互流程示意
4結語
根據(jù)計算機算法仿真的結果,驗證該檢測方案切實可行,并且該方案已在某嵌入式設備國產(chǎn)芯片單片機中實現(xiàn),能夠準確的判斷出當前的通信是否是傳真以及傳真進行的控制階段。但在移植到嵌入式設備過程中,對PCM數(shù)據(jù)進行上采樣濾波時,涉及到數(shù)字信號處理數(shù)學運算,計算開銷大,必須對實現(xiàn)算法進行優(yōu)化。
該方案的意義在于可以通過軟件的方式,借助處理器的日益強大的處理能力,實現(xiàn)多路并發(fā)的模擬話機傳真過程監(jiān)測;參照軟件無線電的設計思路,通過軟件快速實現(xiàn)其他FSK調(diào)制標準的調(diào)制解調(diào)功能,降低硬件成本,減少對進口接口芯片的依賴,在國產(chǎn)自主化方面具有重要意義。
參考文獻:
[1]周浩,霍智杰.某引信通信2FSK調(diào)制解調(diào)方法[J].四川兵工學報,2014,35(06):91-93.
ZHOUHao,HUOZhi-jie.Analysison2FSKModulationandDemodulationMethodinFuzeCommunication[J].JournalofSichuanWarIndustry, 2014, 35(06):91-93.
[2]楊守良,吳薦.基于DSPBuilder的2FSK調(diào)制解調(diào)器設計[J].現(xiàn)代電子技術,2007(07):38-40.
YANGShouliang,WUJian.Designof2FSKModembasedonDSPBuilder[J].ModernElectronicTechnology, 2007(07):38-40.
[3]洪露,王輝.基于軟件無線電的FSK系統(tǒng)設計[J].通信技術,2010,43(01):63-35.
HONGLu,WANGHui.DesignofFSKDigitalModemBasedonSoftwareRadio[J].CommunicationsTechnology,2010,43(01):63-35.
[4]國際電信聯(lián)盟電信標準化部門.ITU-TT.30建議書,在公用電話交換網(wǎng)上的文件傳真?zhèn)鬏斠?guī)程[S]. 09/2005.
ITU-TRecommendationT.30 (09/2005),StandardizationofGroup3FacsimileTransmissiononPublicTelephoneLine[S].
[5]丁玉美,高西全,彭學愚.數(shù)字信號處理[M].陜西:西安電子科技大學出版社,1997:159-160.
DINGYu-Mei,GAOXi-quan,PENGXue-yu.DigitalSignalProcess[M].Shaanxi:Xi’anUniversityofElectronicTechnologyPress, 1997:159-160.
[6]聞 輝,劉益成,楊杏本.基于循環(huán)緩沖區(qū)FIR濾波器的設計[J].通信技術,2009,42(11):233-234.
WENHui,LIUYi-cheng,YANGXing-ben.CircularBufferbasedontheDesignofFIRFilters[J].CommunicationsTechnology,2009,42(11):233-234.
[7]吳海濤, 梁迎春, 陳英俊.基于FPGA的全數(shù)字FSK調(diào)制解調(diào)器設計[J].現(xiàn)代電子技術, 2007(23):72-72,76.
WUHai-tao,LIANGYing-chun,CHENYing-jun.DesignofFullDigitalFSKModembasedonFPGA[J].ModernElectronicTechnology, 2007(23):72-72,76.
[8]鄭爭兵.基于FPGA的FSK調(diào)制解調(diào)系統(tǒng)設計[J].陜西理工學院學報:自然科學版,2012 ,28(05):20-23.
ZHENGZheng-bing.ADesignofFSKModulatoronFPGA[J].JournalofShaanxiUniversityofTechnology(NaturalScienceEdition), 2012, 28(05):20-23.
[9]高偉,程耀先,趙群.300波特FSK調(diào)制解調(diào)器[J].黑龍江自動化技術與應用,1995, 14(01):52-54.
GAOWei,CHENGYao-xian,ZHAOQun.ADesignof300BotFSKModulator[J].HeilongjiangAutomaticTechnologyandApplication, 1995, 14(01):52-54.
FaxControlProtocolCheckingSoftwareMethodbasedonPCMData
TANGWen,WANGZhi-hua,MAJun,LEIYu
(No.30InstituteofCETC,ChengduSichuan610041,China)
Abstract:For monitoring G3 fax communication on telephony line, and according to software wireless technology, a method in combination of software with hardware is adopted, in which the hardware is responsible to capture PCM audio data, while the software to process PCM audio data, including to implement resampling, FSK decoding, HDLC frame detection and extract fax control protocol message, and based on these, to determine whether a fax communication is carried out on the telephone line. This method can be applied to embedded processors with which one or more audio streams can be handled, thus hardware cost can be grandly decreased, and China would have the product of its own independent intellectual property rights.
Key words:G3fax check;PCM;V.21;HDLC;FSK;filter
doi:10.3969/j.issn.1002-0802.2016.05.025
* 收稿日期:2015-12-08;修回日期:2016-03-20Received date:2015-12-08;Revised date:2016-03-20
中圖分類號:TP311
文獻標志碼:A
文章編號:1002-0802(2016)05-0644-05
作者簡介:
唐文(1977—),女,碩士,工程師,主要研究方向為通信網(wǎng)絡,窄帶數(shù)據(jù)通信;
王志華(1970—),男,工程碩士,工程師,主要研究方向為網(wǎng)絡安全;
馬俊(1983—),男,碩士,工程師,主要研究方向為通信網(wǎng)絡;
雷宇(1989—),男,碩士,助理工程師,主要研究方向為硬件設計與FPGA編程。