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