基于NiosII傳真通信規(guī)程的分析與設(shè)計(jì)實(shí)現(xiàn)
目前傳真通信的產(chǎn)品開(kāi)發(fā)主要是基于Conexant等公司的專(zhuān)用傳真芯片,對(duì)系統(tǒng)二次開(kāi)發(fā)。本文從替代傳統(tǒng)專(zhuān)用芯片的角度,提出一種新的基于NiosII傳真系統(tǒng)方案,即軟硬件協(xié)同開(kāi)發(fā)的流程,分析并設(shè)計(jì)實(shí)現(xiàn)傳真通信。
1 傳真通信規(guī)程分析
1.1 傳真過(guò)程描述
T.30建議規(guī)定了通信規(guī)程的適用范圍、所用術(shù)語(yǔ)的解釋、傳真呼叫描述、傳真用的單音信號(hào)方式和二進(jìn)制信號(hào)方式[1]。圖1為傳真階段過(guò)程圖。本文引用地址:http://2s4d.com/article/157722.htm
(1)階段A:呼叫建立,連通傳真通信雙方傳輸線(xiàn),使傳真機(jī)接入線(xiàn)路。撥號(hào)和應(yīng)答雙方均可由人工或自動(dòng)兩種操作完成。
(2)階段B:報(bào)文前過(guò)程,報(bào)文傳輸?shù)臏?zhǔn)備階段,包括性能識(shí)別和選擇條件命令及接收條件確認(rèn)。命令部分包括性能命令、訓(xùn)練、同步及可選的非標(biāo)準(zhǔn)設(shè)備命令、終端識(shí)別命令、查詢(xún)(發(fā)送)命令和回聲抑制器解除。
(3)階段C:報(bào)文中過(guò)程,由信息傳輸過(guò)程和報(bào)文傳輸組成。信息傳輸過(guò)程與報(bào)文傳輸同時(shí)進(jìn)行,并控制傳輸信號(hào)完整性,如傳輸同步、差錯(cuò)檢測(cè)及糾錯(cuò)和線(xiàn)路管理。若沒(méi)有差錯(cuò)檢測(cè)和糾錯(cuò)處理,則該階段只傳輸報(bào)文數(shù)據(jù)。
(4)階段D:報(bào)文后過(guò)程,傳真雙方在完成傳輸一頁(yè)報(bào)文后進(jìn)行該過(guò)程。包含消息結(jié)束信號(hào)、確認(rèn)信號(hào)、多頁(yè)信號(hào)和傳真結(jié)束過(guò)程信號(hào)。如果信息傳輸完畢,則直接進(jìn)入E階段。
(5)階段E:呼叫釋放,可以手動(dòng)或自動(dòng)進(jìn)行。在信息傳輸完畢或上述各階段操作異常時(shí),雙方分別進(jìn)入該階段,將傳真機(jī)與線(xiàn)路脫離。
1.2 傳真二進(jìn)制碼信號(hào)結(jié)構(gòu)
傳真過(guò)程用的二進(jìn)制信號(hào),以300 b/s的速率傳送,這是三類(lèi)機(jī)二進(jìn)制代碼過(guò)程數(shù)據(jù)傳輸?shù)臉?biāo)準(zhǔn)速率。二進(jìn)制代碼的傳真控制過(guò)程都使用HDLC幀結(jié)構(gòu)。一個(gè)HDLC幀結(jié)構(gòu)由先導(dǎo)序列、標(biāo)志序列、地址字段、控制字段、信息字段、幀校驗(yàn)序列組成。
由于采用的調(diào)制解調(diào)器為T(mén)M-EC5658V Data/Voice/Fax Modem,它完成幀校驗(yàn)和幀封裝工作,所以數(shù)字終端設(shè)備DTE與調(diào)制解調(diào)器通信過(guò)程中的HDLC幀結(jié)構(gòu)如圖2所示。
(1)地址字段:表示該鏈路上發(fā)送或接收該幀的地址。提供多點(diǎn)連接安排中的指定終端的標(biāo)識(shí)。在傳真通信中,由于公用電話(huà)交換網(wǎng)中只進(jìn)行點(diǎn)對(duì)點(diǎn)的通信,故限定為單一信號(hào)格式。
(2)控制字段:該字段8 bit數(shù)據(jù),用來(lái)提供末幀及非末幀的標(biāo)志。格式為1100 x000,過(guò)程中的非末幀,x=0,末幀,x=1,這樣可以區(qū)別末幀和非末幀。末幀是指為期待從對(duì)方站發(fā)來(lái)響應(yīng)之前所發(fā)送的最后一幀。
(3)HDLC信息字段:T.30建議書(shū)中HDLC信息字段被劃分為傳真控制字段和傳真信息字段兩部分。傳真控制字段由8 bit或16 bit構(gòu)成,二進(jìn)制碼表示各種命令或響應(yīng)信號(hào),可以提供28=256種控制信號(hào)。傳真信息字段的作用是進(jìn)一步說(shuō)明傳真控制字段的內(nèi)容,提供各種標(biāo)識(shí)、選擇、控制參數(shù)等信息。傳真信息字段是以8 bit為一組的數(shù)據(jù)信息來(lái)說(shuō)明傳真過(guò)程。
(4)幀校驗(yàn)序列,幀校驗(yàn)序列為16 bit位寬數(shù)據(jù),用于檢測(cè)傳輸中可能產(chǎn)生的差錯(cuò)。DTE向Modem發(fā)送幀數(shù)據(jù)時(shí)不需要幀校驗(yàn)序列,Modem完成幀校驗(yàn)。Modem向DTE傳送幀數(shù)據(jù)時(shí),附帶有幀校驗(yàn)數(shù)據(jù)。
1.3 傳真通信流程分析
主叫端主動(dòng)發(fā)出一次傳真呼叫,其既可以發(fā)送也可以接收傳真文件。一般情況下,當(dāng)一方有文件需要發(fā)送時(shí),可作為主叫端發(fā)送傳真文件。在輪詢(xún)狀態(tài)下,主叫端檢測(cè)被叫端是否有文件需要傳送。當(dāng)主叫端和被叫端均為全自動(dòng)操作時(shí),主叫端先將傳真機(jī)接入電路,檢測(cè)到撥號(hào)音后撥號(hào),啟動(dòng)計(jì)時(shí)并向線(xiàn)路發(fā)送主叫單音信號(hào),在設(shè)置本端傳真模式后進(jìn)入階段B。
階段B要完成對(duì)通信雙方的標(biāo)識(shí),包括收發(fā)操作的確認(rèn)、兼容性識(shí)別以及傳輸速率的確定。具體過(guò)程如下:
(1)被叫端將其性能指標(biāo)(如支持的頁(yè)面大小、傳輸速率等)封裝在DIS(Digital Identification Signal)中,通知主叫端發(fā)送。
(2)主叫端根據(jù)被叫端性能指標(biāo)做兼容性判斷。若本地?zé)o文件發(fā)送而對(duì)方有文件發(fā)送,則作為接收機(jī)發(fā)送DTC(Digital Transmistion Command)信號(hào);若本地有文件發(fā)送且對(duì)方機(jī)器兼容,則發(fā)送DCS(Digital Command Signal)通知接收端本次傳真過(guò)程所采用的傳輸參數(shù),并發(fā)送協(xié)商速率下的訓(xùn)練序列。
(3)接收端正確接收到訓(xùn)練后發(fā)送CFR(Confirmation To Receive)信號(hào),否則發(fā)送FTT(Failure To Train)信號(hào),發(fā)送端更新DCS相應(yīng)字段并重發(fā)降速訓(xùn)練序列,直至接收到CFR。
在收發(fā)雙方確定連接所能夠支持的最大速率傳輸速率下傳輸報(bào)文。非糾錯(cuò)模式的報(bào)文在階段C一次性全部傳輸完畢,其報(bào)文后命令有三種,分別為多頁(yè)信號(hào)MPS(MultiPage Signal)、傳真過(guò)程結(jié)束信號(hào)EOP(End Of Procedure)和報(bào)文結(jié)束信號(hào)EOM(End Of Message)。正確接收?qǐng)?bào)文后接收端發(fā)送MCF(Message Confirmation)信號(hào)。發(fā)送端收到MCF后,進(jìn)入E階段,并發(fā)送DCN(Disconnect)信號(hào),雙方拆鏈路。
1.4 調(diào)制解調(diào)器通信原理分析
Modem集成標(biāo)準(zhǔn)RS-232接口,通過(guò)RS-232接口的TxD和RxD兩條信號(hào)線(xiàn)完成DCE(Data Communication Equipment)和DTE(Data Terminal Equipment)的數(shù)據(jù)交換和控制信號(hào)交換。DTE發(fā)送AT命令到DCE,即Modem。Modem執(zhí)行命令后通過(guò)RxD返回結(jié)果給DTE。圖3是Modem通信的示意圖。Modem每執(zhí)行一條AT指令,都要返回當(dāng)前的狀態(tài);傳真過(guò)程中向Modem串口發(fā)送AT指令和HDLC幀數(shù)據(jù)。
由于Modem的性能不同,對(duì)應(yīng)不同的工作模式,Class 1服務(wù)類(lèi)別DCE提供為支持G3傳真操作所需要的服務(wù)水平。DTE通過(guò)AT指令向Modem傳遞命令和參數(shù)。Modem執(zhí)行AT命令的結(jié)果就是修改Modem寄存器的值,即設(shè)置Modem操作狀態(tài)。通過(guò)設(shè)置Modem的服務(wù)類(lèi)型后,撥號(hào)進(jìn)入傳真流程。
評(píng)論