同步串行通信和異步串行通信
同步通信
所謂同步通信是指在約定的通信速率下,發(fā)送端和接收端的時鐘信號頻率和相信始終保持一致(同步),這就保證了通信雙方在發(fā)送和接收數(shù)據(jù)時具有完全一致的定時關系。
同步通信把許多字符組成一個信息組,或稱為信息幀,每幀的開始用同步字符來指示。由于發(fā)送和接收的雙方采用同一時鐘,所以在傳送數(shù)據(jù)的同時還要傳送時鐘信號,以便接收方可以用時鐘信號來確定每個信息位。
同步通信要求在傳輸線路上始終保持連續(xù)的字符位流,若計算機沒有數(shù)據(jù)傳輸,則線路上要用專用的“空閑”字符或同步字符填充。
同步通信傳送信息的位數(shù)幾乎不受限制,通常一次通信傳的數(shù)據(jù)有幾十到幾千個字節(jié),通信效率較高。但它要求在通信中保持精確的同步時鐘,所以其發(fā)送器和接收器比較復雜,成本也較高,一般用于傳送速率要求較高的場合。
用于同步通信的數(shù)據(jù)格式有許多種,
(a)單同步格式,會送一幀數(shù)據(jù)僅使用一個同步字符。當接收端收到并識別出一個完整同步字符后,就連續(xù)接收數(shù)據(jù)。一幀數(shù)據(jù)結(jié)束,進行CRC校驗。
同步字符 數(shù)據(jù) CRC1 CRC2
(b)雙同步字格式,這時利用兩個同步字符進行同步。
同步字符1 同步字符2 數(shù)據(jù) CRC1 CRC2
(c)同步數(shù)據(jù)鏈路控制(SDC)規(guī)程所規(guī)定的數(shù)據(jù)格式。
標志符01111110 地址符8位 數(shù)據(jù) CRC1 CRC2 標志符01111110
(d)則是一種外同步方式所采用的數(shù)據(jù)格式。對這種方式,在發(fā)送的一幀數(shù)據(jù)中不包含同步字符。同步信號SYNC通過專門的控制線加到串行的接口上。當SYNC一到達,表明數(shù)據(jù)部分開始,接口就連續(xù)接收數(shù)據(jù)和CRC校驗碼。
數(shù)據(jù)場 CRC1 CRC2
(e)高級數(shù)據(jù)鏈路控制(HDLC)規(guī)程所規(guī)定的數(shù)據(jù)格式。它們均用于同步通信。這兩種規(guī)程的細節(jié)本書不做詳細說明。
標志符01111110 地址符8位 控制符8位 數(shù)據(jù) CRC1 CRC2 標志符01111110
CRC(cyclic redundancy checks)的意思是循環(huán)冗余校驗碼。它用于檢驗在傳輸過程中是否出現(xiàn)錯誤,是保證傳輸可靠性的重要手段之一。
異步通信
異步通信是指通信中兩個字符之間的時間間隔是不固定的,而在一個字符內(nèi)各位的時間間隔是固定的。
異步通信規(guī)定字符由起始位(start bit)、數(shù)據(jù)位(data bit)、奇偶校驗位(parity)和停止位(stop bit)組成。起始位表示一個字符的開始,接收方可用起始位使自己的接收時鐘與數(shù)據(jù)同步。停止位則表示一個字符的結(jié)束。這種用起始位開始,停止位結(jié)束所構(gòu)成的一串信息稱為幀(frame)(注意:異步通信中的“幀”與同步通信中“幀”是不同的,異步通信中的“幀”只包含一個字符,而同步通信中“幀”可包含幾十個到上千個字符)。在傳送一個字符時,由一位低電平的起始位開始,接著傳送數(shù)據(jù)位,數(shù)據(jù)位的位數(shù)為5~8。在傳輸時,按低位在前,高位在后的順序傳送。奇偶校驗位用于檢驗數(shù)據(jù)傳送的正確性,也可以沒有,可由程序來指定。最后傳送的是高電平的停止位,停止位可以是1位、1.5位或2位。停止位結(jié)束到下一個字符的起始位之間的空閑位要由高電平2來填充(只要不發(fā)送下一個字符,線路上就始終為空閑位)。
異步通信中典型的幀格式是:1位起始位,7位(或8位)數(shù)據(jù)位,1位奇偶校驗位,2位停止位。
起始位 數(shù)據(jù)位(低位…高位) 奇偶校驗位 停止位 空閑位 起始位
從以上敘述可以看出,在異步通信中,每接收一個字符,接收方都要重新與發(fā)送主同步一次,所以接收端的同步時鐘信號并不需要嚴格地與發(fā)送方同步,只要它們在一個字符的傳輸時間范圍內(nèi)能保持同步即可,這意味著南時鐘信號漂移的要求要比同步信號低得多,硬件成本也要低的多,但是異步傳送一個字符,要增加大約20%的附加信息位,所以傳送效率比較低。異步通信方式簡單可靠,也容易實現(xiàn),故廣泛地應用于各種微型機系統(tǒng)中。
評論