1 引言 異步通信和同步通信是兩種不同的通信方式。異步通信采用字符起止同步技術,前后字符的間隔沒有嚴格要求,發送端在發送的每個字符前加上起始位,字符后加上停止位,接收端據此完成傳輸字符的接收。雙方毋需同步時鐘,因而通信設備和控制手段相對簡單。同步通信是一種比特同步通信技術,要求發收雙方具有同頻同相的同步時鐘信號,只需在傳送報文的最前面附加特定的同步字符,使發收雙方建立同步,此后便在同步時鐘的控制下逐位發送/接收。顯然,因為發送端和接收端必須有同步信號的支持,使得通信設備和控制技術比異步通信復雜得多。 由于異步通信中需為每個字符添加起始位、停止位,往往還要附加校驗位,因而傳輸速率不高,效率也較低。設字符寬度為8位,起始位、停止位、校驗位均為1位,則在傳送的數據流中,有效信息僅占8/11。若考慮到字符間隔,則不到8/ 11,有3/11以上的比特開銷被用作通信控制的冗余信息,大大降低了信道利用率。若設定異步速率為33.6kb/s,在上述的字符格式下,其真正的信息速率不到24.4kb/s。正因為異步通信的這個缺點,致使其使用范圍比較局限,在實際的通信系統中,主要采用同步通信技術。 目前,調制解調器(Modem)得到了廣泛的應用,特別在網絡應用中,人們普遍以Modem作為DCE設備,實現PC機的撥號上網。在這里,PC 機提供的是RS232異步通信端口,普通的Mo dem也只支持異步通信。故在這種應用中,我們進行的仍只是異步通信。 調制解調技術和調制解調器都發展得十分迅速,目前已能支持V.90/V.92協議,各種智能型的調制解調器也在不斷推出。但在通信方式上,市售的Modem均只能支持異步通信。我們通過對Mo dem內核的深入分析和試驗,發現只要對現有的 Modem采取一定的技術措施,一般的外置Mo dem均能支持同步通信。我們以美國Rockwell公司的調制解調芯片組RC56D[2]和TI公司的DSP 為核心,研制成功了一種同步通信數字終端,獲得了理想的同步通信效果。 2 RC56D簡介 Rockwell是當今調制解調產品的最主要生產廠商,RC56D是目前Modem使用的主流芯片。它采用TCM調制技術,支持ITU-T V.90/K56Flex數據調制協議、V.42/MNP2-4差錯控制協議和V.42bis/ MNP5數據壓縮協議,單工接收/雙工傳輸速率達57.6/33.6kb/s,且具有自動升降速功能,當數據壓縮比為4:1時(V.42bis壓縮標準),吞吐量可達230.4kb/s。 RC56D芯片組由兩塊大規模集成電路組成,一塊是8位的微控制單元MCU(80引腳PQFP封裝),另一塊是100引腳的數據泵MDP。MCU執行各種功能命令,支持主機/DTE和MDP接口;MDP則是一個專用DSP,主要完成數據的調制解調和握手功能,Modem的TCM調制、自適應均衡和Viterbi軟判決譯碼等,均由MDP實現。 用RC56D實現同步傳輸的關鍵是正確控制芯片的各種時鐘信號引腳以及利用AT命令正確設置Modem的工作模式。表1列出了MCU和MDP中的時鐘信號。 3 和同步方式有關的AT命令 AT命令是Hayes公司發明,用于設置Mo dem 參數、發起和終止呼叫、執行Modem測試等操作的一組命令。因其均以AT開頭,故稱為AT命令集。在Modem中設置了三套參數存儲器,即工廠配置存儲器、當前參數存儲器(或稱動態存儲器)、用戶配置存儲器。用AT命令可修改當前參數存儲器,即設置Modem當前的操作狀態。命令執行結果,Modem將把執行結果以代碼的形式送回計算機或終端。Modem具有兩種工作方式,即數據方式和命令方式,命令方式又有離線命令方式和在線命令方式兩種。 為采用同步通信方式,需用到以下AT命令: ① &M1 在異步離線命令狀態下選擇同步連接模式。即命令在異步方式下呼叫后, Modem轉換為同步方式。 ② +ES=6,,8 使能同步傳輸模式。 ③ &X0 內部定時,即Modem自己產生發送時鐘信號并將其用于串口輸出TXCLK。 &X1 外部定時,由本地DTE產生發送時鐘信號,送到MDP的XTCLK ,Modem將此時鐘用于串口輸出。 &X2 從定時,即Modem從收到的載波中提取時鐘信號。 ④ +MS = 若干參數,用于確定調制、編碼算法及傳輸速率的最大/最小值。 從后面的例子可以知道AT命令的使用方法。 4 同步通信的實現 根據前節介紹的&Xn命令,可以采用兩種同步方式,即內部定時和外部定時。無論選擇那種方式,通信雙方的從端均應選擇“從”定時方式。 (1)外部定時。圖1是采用外部定時方式時, DSP、MCU、MDP和比特率產生電路之間的同步時鐘信號接線圖。 圖中,比特率產生電路由MC14411組成,也可根據需要另行設計。比特率產生電路生成的時鐘信號由MDP的XTCLK 輸入,經MDP的內部鎖相環電路產生發送和接收時鐘TDCLK、RDCLK,并送給DSP和MCU的TXCLK、RXCLK,控制DSP和MCU的同步工作。同時TDCLK還經分頻電路形成DSP 所需的幀同步接收脈沖FSR(因篇幅有限,DSP的同步工作模式略)。當速率為14.4kb/s和28.8kb/s時,同步時鐘信號TDCLK/RDCLK和發送/接收數據TXD/RXD相互關系的波形圖如圖2所示。 為實現外部定時的同步通信,使用的AT設置命令為: AT &F1 C1+ES=6, ,8&M1&X1+MS=11,1,2400,33600,1,33600。 命令中“&F1”指定恢復工廠配置1,“C1” 為返回“OK”信息,“+MS=”后面的數個參數指定為A律編碼,V.34調制,最低接收速率為 2400b/s,最高發送/接收速率為33.6kb/s,其它同步方式命令已在前面解釋。 在圖1的信號連接中,DSP的TXCLK也可以直接與DSP的RXCLK相連,即DSP的發送/接收共用同一個時鐘。根據我們的經驗,這種接法的傳輸效果更好。 (2)內部定時。為設為內部定時方式,只要將前述AT命令中的&X1改為&X0即可。這時,單獨的比特率產生電路刪去,由MCU自己生成發送和接收時鐘TXCLK/RXCLK(外接晶振28.224MHz)。MDP的XTCLK引腳懸空不用。此時的同步信號連接圖如圖3所示。 (3)同步傳輸的控制軟件。我們使用的DSP 是TMS320F206,使用異常靈活方便。實現同步通信的軟件流程是:先利用DSP異步口進行異步連接,建立數據鏈路后,Modem轉換為同步模式, DSP則關閉異步口,打開同步口,從而進入同步傳輸工作狀態,其DSP程序流程如圖4。 我們按照本文方案研制的同步通信終端,在一些專業通信應用(如視頻監控和傳輸)中使用,獲得了非常理想的效果,不但傳輸效率高,誤碼率也極低。 |