串行通信接口_第1頁(yè)
串行通信接口_第2頁(yè)
串行通信接口_第3頁(yè)
串行通信接口_第4頁(yè)
串行通信接口_第5頁(yè)
已閱讀5頁(yè),還剩82頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

串行通信接口第一頁(yè),共八十七頁(yè),2022年,8月28日7.1串行通信與接口

7.1.1串行通信1.并行傳輸與串行傳輸并行傳輸數(shù)據(jù)代碼的每一位各占一條傳輸線(xiàn),在兩個(gè)數(shù)據(jù)部件之間一次并行傳輸n位數(shù)據(jù)。

并行傳輸適合在一米或數(shù)米范圍內(nèi)的近距離高速傳輸。計(jì)算機(jī)內(nèi)CPU與主存之間的數(shù)據(jù)傳輸是并行傳輸?shù)牡湫屠樱⑿械奈粩?shù)有8位、16位、32位、64位甚至更多。串行傳輸

數(shù)據(jù)代碼的所有位順序串行排列成數(shù)據(jù)流,在一條線(xiàn)纜上逐位傳輸。

串行傳輸速度通常低于并行傳輸,但節(jié)省硬件(線(xiàn)纜),適宜遠(yuǎn)距離數(shù)據(jù)傳輸,通信網(wǎng)及計(jì)算機(jī)網(wǎng)絡(luò)中服務(wù)器與站點(diǎn)之間、各個(gè)站點(diǎn)之間都以串行方式傳輸數(shù)據(jù)。

計(jì)算機(jī)的某些部件之間,如鍵盤(pán)到主機(jī)鍵盤(pán)接口電路的按鍵掃描碼傳送、磁盤(pán)驅(qū)動(dòng)器與磁盤(pán)適配器(控制器)之間的數(shù)據(jù)傳輸都以串行方式進(jìn)行。南橋芯片ICH5(2003年)支持的硬盤(pán)外部數(shù)據(jù)傳輸規(guī)范SATA(SerialATA)、廣泛應(yīng)用的USB接口是高速串行傳輸?shù)牡浞?,串行傳輸在?jì)算機(jī)系統(tǒng)中的應(yīng)用日益廣泛。

并行與串行的數(shù)據(jù)傳輸如下圖所示。

第二頁(yè),共八十七頁(yè),2022年,8月28日2.數(shù)據(jù)傳輸?shù)耐?/p>

數(shù)據(jù)傳輸必須同步,以解決接收方在接收到的源源不斷的數(shù)據(jù)流中如何正確區(qū)分發(fā)送方發(fā)送來(lái)的每一個(gè)代碼,正確完成傳輸任務(wù)。并行傳輸因其距離進(jìn),收發(fā)雙方可用同一頻率時(shí)鐘進(jìn)行發(fā)送和接收,或增加一根或幾根狀態(tài)控制線(xiàn)(稱(chēng)握手信號(hào)線(xiàn))進(jìn)行聯(lián)絡(luò),協(xié)調(diào)收發(fā)雙方,保證數(shù)據(jù)代碼正確傳輸。在計(jì)算機(jī)和通信設(shè)備內(nèi)部,不少部件之間都設(shè)有專(zhuān)門(mén)的握手信號(hào)線(xiàn)。

在串行通信中,一般不設(shè)握手信號(hào)線(xiàn),因此,必須在傳輸?shù)臄?shù)據(jù)編碼中解決同步問(wèn)題。為了正確識(shí)別代碼和恢復(fù)報(bào)文,收發(fā)雙方必須區(qū)分出:◆每個(gè)比特,即每個(gè)二進(jìn)位;◆每個(gè)代碼(如ASCII字符),即區(qū)分出每個(gè)代碼的

起始位和結(jié)束位;◆完整的報(bào)文數(shù)據(jù)塊,即數(shù)據(jù)幀的開(kāi)始和結(jié)束。上述三個(gè)問(wèn)題分別是位同步、字符同步和幀同步。

數(shù)據(jù)串行傳輸有異步傳輸和同步傳輸之分。

采用異步傳輸方式,發(fā)送和接收設(shè)備的時(shí)鐘是異步的;

采用同步傳輸方式,收發(fā)的時(shí)鐘是同步的。同步傳輸具有較高的傳輸效率和速率。

第三頁(yè),共八十七頁(yè),2022年,8月28日2.數(shù)據(jù)傳輸?shù)耐剑ɡm(xù))

異步傳輸異步傳輸每個(gè)字符前后分別加上起始位和停止位,表示一個(gè)字符的開(kāi)始和結(jié)束,實(shí)現(xiàn)字符同步。起始位為“0”,長(zhǎng)度為一個(gè)二進(jìn)數(shù)據(jù)位(bit)的持續(xù)時(shí)間;停止位為“1”,長(zhǎng)度為1、1.5或2個(gè)二進(jìn)數(shù)據(jù)位的持續(xù)時(shí)間;字符的數(shù)據(jù)位可為5、6、7或8位;數(shù)據(jù)位后停止位前可以設(shè)置一位奇偶校驗(yàn)位,也可沒(méi)有校驗(yàn)位。異步傳輸如下圖所示。

傳輸時(shí)每一位寬度(占用的時(shí)間長(zhǎng)度)由收發(fā)雙方編程約定,保持不變,從而實(shí)現(xiàn)字符內(nèi)的位同步。每位傳輸時(shí)間的倒數(shù)稱(chēng)波特率。字符之間的間距(時(shí)間間隔)是任意的,所以傳輸一幀的時(shí)間是不定的,靠傳送特殊字符來(lái)表示一幀的開(kāi)始和結(jié)束,實(shí)現(xiàn)幀同步。異步傳輸收發(fā)之間無(wú)須傳送定時(shí)信號(hào),實(shí)現(xiàn)簡(jiǎn)單。缺點(diǎn)是每個(gè)字符都要加上起始位和停止位,傳輸效率低;而且收發(fā)雙方時(shí)鐘未嚴(yán)格同步,故通信時(shí)鐘頻率不能過(guò)高(否則一個(gè)字符傳輸時(shí)間內(nèi),收發(fā)時(shí)鐘差異積累若達(dá)半個(gè)數(shù)據(jù)位寬就將使傳輸?shù)淖址鲥e(cuò)),因而速度低,常用于低速數(shù)據(jù)傳輸。

第四頁(yè),共八十七頁(yè),2022年,8月28日2.數(shù)據(jù)傳輸?shù)耐剑ɡm(xù))同步傳輸同步傳輸時(shí)收發(fā)雙方的時(shí)鐘完全相同,時(shí)鐘與傳輸?shù)拿恳晃粐?yán)格對(duì)應(yīng),保持位同步;字符間順序相連,沒(méi)有間隙也沒(méi)有插入位,在位同步的基礎(chǔ)上靠完全相同的收發(fā)時(shí)鐘和收發(fā)順序來(lái)達(dá)到字符同步;在一幀字符前后有幀同步字符(或外加同步脈沖)和幀終止字符,實(shí)現(xiàn)幀同步;幀與幀之間是空白字符。同步傳輸如下圖所示。要做到收發(fā)時(shí)鐘完全相同,近距離傳輸時(shí)可加一條時(shí)鐘信號(hào)線(xiàn),用同一時(shí)鐘發(fā)生器驅(qū)動(dòng)發(fā)送和接收設(shè)備;遠(yuǎn)距離傳輸時(shí)可通過(guò)編碼技術(shù)(如曼徹斯特編碼等)將發(fā)送時(shí)鐘信息附加到數(shù)據(jù)流中,用一條信號(hào)線(xiàn)傳輸之,接收端用鎖相技術(shù)從數(shù)據(jù)流中提取時(shí)鐘信號(hào),得到同發(fā)送端在頻率和相位上完全相同的接收時(shí)鐘。同步傳輸較為復(fù)雜,但節(jié)省傳輸時(shí)間,具有較高的傳輸速率和效率。

第五頁(yè),共八十七頁(yè),2022年,8月28日3.傳輸速率

傳輸速率指單位時(shí)間內(nèi)傳送的信息量。一般用每秒鐘傳送的二進(jìn)位數(shù)(比特?cái)?shù))即比特率bps(bitspersecond)來(lái)衡量。數(shù)據(jù)傳輸速率反映了主機(jī)通信端口與終端設(shè)備之間、終端設(shè)備相互之間的信息傳輸能力,通常指發(fā)送端和接收端之間在一段時(shí)間內(nèi)數(shù)據(jù)傳輸?shù)钠骄忍財(cái)?shù),單位為bps(位/秒)、Kbps(千位/秒)、Mbps(兆位/秒)。在同步通信中,每個(gè)發(fā)/收時(shí)鐘內(nèi)發(fā)送/接受一個(gè)比特,因此比特率與通信時(shí)鐘頻率相同。信息傳輸速率與傳輸過(guò)程中的同步方式、差錯(cuò)編碼及冗余字符填充、通信控制規(guī)程等諸種因素有關(guān)。當(dāng)進(jìn)行串行異步通信時(shí),通常用n個(gè)時(shí)鐘周期寬度來(lái)表示一個(gè)二進(jìn)位數(shù)據(jù)(n常為16或64),為避免混淆,這時(shí)常用另一個(gè)速率測(cè)量單位——波特率(baudrate),它指每秒鐘傳送二進(jìn)制數(shù)據(jù)位數(shù)。采用串行同步通信,每個(gè)時(shí)鐘發(fā)送(或接收)一個(gè)二進(jìn)位,因此如果忽略同步字符等附加位,波特率就等于比特率;而采用串行異步通信,波特率等于時(shí)鐘頻率除以n。接收/發(fā)送時(shí)鐘頻率與波特率的關(guān)系如下: 收/發(fā)時(shí)鐘頻率=n×收/發(fā)波特率其中n=1,16,(32),64同步傳送必須n=1;異步傳送常選n=16,也可選n=1或64,括號(hào)內(nèi)的數(shù)值(32)盡量不選,因?yàn)樵S多通信電路不支持它。

第六頁(yè),共八十七頁(yè),2022年,8月28日3.傳輸速率

異步傳輸,收、發(fā)端使用獨(dú)立的時(shí)鐘,時(shí)鐘頻率須相同,其誤差容限在4.5%以?xún)?nèi),大多數(shù)接收端時(shí)鐘比發(fā)發(fā)端時(shí)鐘頻率略快。異步傳輸常采用16個(gè)時(shí)鐘周期發(fā)送一個(gè)數(shù)據(jù)位,即數(shù)據(jù)位寬Td≈16×Tc,Tc是時(shí)鐘周期。接收器在每個(gè)時(shí)鐘的上升沿對(duì)傳輸線(xiàn)上的信號(hào)電平采樣,檢測(cè)到低電平后再延續(xù)8個(gè)時(shí)鐘周期,仍在上升沿采樣、監(jiān)測(cè)傳輸線(xiàn)是否仍為低電平,若不是低電平則判為假起始位(傳輸線(xiàn)上噪音干擾產(chǎn)生的誤動(dòng)作),刪除之;若仍是低電平則判為真起始位(已定位在16個(gè)時(shí)鐘周期構(gòu)成的起始位的中間點(diǎn)),以此為時(shí)間基準(zhǔn),每隔16個(gè)時(shí)鐘周期Tc對(duì)傳輸線(xiàn)上送來(lái)的數(shù)據(jù)位采樣,如右圖所示。在時(shí)間上每一個(gè)采樣點(diǎn)都接近每一位位寬的中心點(diǎn),避免了干擾,有效地實(shí)現(xiàn)了收發(fā)同步。

第七頁(yè),共八十七頁(yè),2022年,8月28日

4.通信工作方式

按在不同方向上數(shù)據(jù)傳輸能力,傳輸線(xiàn)路有三種基本工作方式。

單工通信兩通信終端只能由一方將數(shù)據(jù)傳輸給另一方,即一方僅可作為發(fā)送端,另一方只能為接受端。半雙工通信兩通信終端都可以發(fā)送或接收數(shù)據(jù),但任何一方都不能在同一時(shí)間內(nèi)又發(fā)又收,在同一時(shí)間內(nèi)只能由一方發(fā)另一方收。 某些領(lǐng)域內(nèi)將單工通信稱(chēng)為單向通信,而將半雙工通信稱(chēng)為單工通信。全雙工通信兩通信終端都可以同時(shí)在兩個(gè)方向上進(jìn)行數(shù)據(jù)的發(fā)送和接收。 一般情況下,一條物理鏈路只能進(jìn)行單工或半雙工數(shù)據(jù)通信,而全雙工信道需要兩條傳輸鏈路。一條傳輸鏈路通常由兩條傳輸線(xiàn)組成,稱(chēng)為二線(xiàn)制線(xiàn)路。

第八頁(yè),共八十七頁(yè),2022年,8月28日5.校驗(yàn)方式

數(shù)據(jù)代碼在存儲(chǔ)、傳輸和處理過(guò)程中,由于干擾或衰減會(huì)發(fā)生突變,出現(xiàn)差錯(cuò)。若不能及時(shí)識(shí)別、糾正這種差錯(cuò),將產(chǎn)生無(wú)法預(yù)料的后果。適當(dāng)增加代碼長(zhǎng)度,按一定算法進(jìn)行變換,形成含一定冗余度的校驗(yàn)碼,可在一定范圍內(nèi)對(duì)錯(cuò)誤進(jìn)行檢測(cè)甚至糾正。

一般情況下,數(shù)據(jù)冗余度越大,校驗(yàn)碼的檢錯(cuò)、糾錯(cuò)能力越強(qiáng)。但冗余度越大,占據(jù)的存儲(chǔ)空間越多,傳輸和處理的時(shí)間越長(zhǎng),使系統(tǒng)效率降低。校驗(yàn)碼一般可分為兩種:檢錯(cuò)碼和糾錯(cuò)碼。檢錯(cuò)碼可以發(fā)現(xiàn)某些錯(cuò)誤而不能糾正錯(cuò)誤;糾錯(cuò)碼不僅能發(fā)現(xiàn)某些錯(cuò)誤,還能在一定程度上予以糾正。產(chǎn)生校驗(yàn)碼的方法很多,如奇偶校驗(yàn)碼、循環(huán)冗余校驗(yàn)碼(CRC)、恒比碼、群計(jì)數(shù)碼、海明碼等等,前兩種校驗(yàn)碼在計(jì)算機(jī)中有廣泛的應(yīng)用。

(1)奇偶校驗(yàn)(ParityCheck)奇偶校驗(yàn)碼最簡(jiǎn)單,無(wú)糾錯(cuò)能力。編碼規(guī)則是先將數(shù)據(jù)代碼分組(如一個(gè)ASCII字符為一組),在各組數(shù)據(jù)后加一位校驗(yàn)位,使包括校驗(yàn)碼在內(nèi)的數(shù)據(jù)代碼中“1”的個(gè)數(shù)恒為偶數(shù)個(gè)(偶檢驗(yàn))或奇數(shù)個(gè)(奇校驗(yàn))。設(shè)b0~bm-1是同一組內(nèi)m位數(shù)據(jù),bm是附加的校驗(yàn)位,則偶校驗(yàn):bm=b0⊕b1⊕…⊕bm-1奇校驗(yàn):bm=b0⊕b1⊕…⊕bm-1⊕1

進(jìn)行校驗(yàn)時(shí),必定:偶校驗(yàn)

b0⊕b1⊕…⊕bm-1⊕bm≡0(有偶數(shù)個(gè)“1”)

奇校驗(yàn)

b0⊕b1⊕…⊕bm-1⊕bm≡1(有奇數(shù)個(gè)“1”) 否則出錯(cuò)。第九頁(yè),共八十七頁(yè),2022年,8月28日5.校驗(yàn)方式(續(xù))奇偶校驗(yàn)碼只能檢出數(shù)據(jù)代碼中奇數(shù)個(gè)錯(cuò)誤,偶數(shù)個(gè)錯(cuò)誤必定漏檢。理論計(jì)算和統(tǒng)計(jì)結(jié)果都表明:奇偶校驗(yàn)?zāi)懿槌鼋^大多數(shù)隨機(jī)錯(cuò)誤,漏檢率為3.5×10-4,但對(duì)諸如通信系統(tǒng)中可能出現(xiàn)的突發(fā)性錯(cuò)誤,漏檢率接近1/2。根據(jù)數(shù)據(jù)代碼的分組方法,奇偶校驗(yàn)可分為垂直奇偶校驗(yàn)、水平奇偶校驗(yàn)和縱橫奇偶校驗(yàn),水平奇偶校驗(yàn)相對(duì)比垂直奇偶校驗(yàn)復(fù)雜;縱橫奇偶校驗(yàn)又稱(chēng)垂直水平奇偶校驗(yàn),查錯(cuò)能力最強(qiáng),能查出垂直和水平方向上的奇數(shù)個(gè)錯(cuò)誤,還能查出不大于代碼長(zhǎng)度的突發(fā)錯(cuò)誤,它產(chǎn)生校驗(yàn)碼和校驗(yàn)邏輯更為復(fù)雜。(2)循環(huán)冗余校驗(yàn)CRC(CyclicRedundancyCheck)CRC性能優(yōu)秀,但其編碼、檢錯(cuò)、糾錯(cuò)的算法復(fù)雜。隨著VLSI的發(fā)展,CRC的復(fù)雜算法都已由硬件電路實(shí)現(xiàn),速度遠(yuǎn)高于軟件計(jì)算;因此,CRC廣泛用于計(jì)算機(jī)網(wǎng)絡(luò)設(shè)備中。CRC碼又稱(chēng)(n,k)循環(huán)碼,此編碼共n位,前k位為數(shù)據(jù)位,后(n-k)=r位為冗余位,冗余位是原數(shù)據(jù)代碼模2除某個(gè)r位二進(jìn)制數(shù)得到的余數(shù)。對(duì)(n,k)循環(huán)碼,有且只有一個(gè)r位二進(jìn)制數(shù)g,滿(mǎn)足:◆

(n,k)循環(huán)碼中任一合法碼字都是g的整數(shù)倍,即任一合法碼字模2除g的余數(shù)都為0;◆任一非法的(n,k)循環(huán)碼碼字模2除g的余數(shù)都不為0;◆合法的(n,k)循環(huán)碼右移一位后仍為合法的循環(huán)碼。g所對(duì)應(yīng)的多項(xiàng)式稱(chēng)為生成多項(xiàng)式g(x),即把碼字中碼元當(dāng)作多項(xiàng)式的系數(shù)(取值為0或1),碼元所處的位置(從右向左數(shù))作為對(duì)應(yīng)項(xiàng)的冪。第十頁(yè),共八十七頁(yè),2022年,8月28日5.校驗(yàn)方式(續(xù))CRC校驗(yàn)過(guò)程為:將發(fā)送幀看成是一長(zhǎng)串的二進(jìn)制位流,在發(fā)送的同時(shí)連續(xù)模2除一個(gè)二進(jìn)制數(shù)(即生成多項(xiàng)式),數(shù)據(jù)位發(fā)送完畢再接著發(fā)送模2相除所得到的余數(shù);接收方將接收到的二進(jìn)制位流(包括余數(shù))模2相除同一個(gè)生成多項(xiàng)式,若能除盡則認(rèn)為傳輸無(wú)誤,若除不盡肯定出錯(cuò)。模2加減即按位加減,不考慮進(jìn)位和借位;模2乘除是在模2加減基礎(chǔ)上進(jìn)行乘除運(yùn)算。CRC校驗(yàn)廣泛用于高速同步通信。常用的生成多項(xiàng)式有CRC-12x12+x11+x3+x2+1美國(guó)二進(jìn)制同步系統(tǒng)(如磁盤(pán)控制器)中采用,CRC-16x16+x15+x2+1(同上)CCITTx16+x12+x5+1SDLC/HDLC通信規(guī)程中多采用CRC-32x32+x26+x23+x22+x16+x12+x11+x10+x8+x7+x5+x4+x2+x+1

IEEE802.3標(biāo)準(zhǔn)的計(jì)算機(jī)局域網(wǎng)中采用CRC碼查錯(cuò)功能較強(qiáng),能查出:◆

全部奇數(shù)個(gè)錯(cuò);◆

全部雙錯(cuò);全部不多于冗余位r=(n-k)的突發(fā)性錯(cuò)誤;◆

對(duì)(n-k+1)位突發(fā)錯(cuò),檢出率為1-2-(r-1); ◆對(duì)大于(n-k+1)位突發(fā)錯(cuò),檢出率為1-2-r。第十一頁(yè),共八十七頁(yè),2022年,8月28日5.校驗(yàn)方式(續(xù))(3)數(shù)據(jù)傳輸質(zhì)量 數(shù)據(jù)傳輸質(zhì)量常用誤碼率來(lái)衡量,誤碼率是個(gè)統(tǒng)計(jì)平均值:誤碼率=接收方出現(xiàn)差錯(cuò)的比特?cái)?shù)/總的傳輸比特?cái)?shù)×100%差錯(cuò)有獨(dú)立型差錯(cuò)和突發(fā)型差錯(cuò),前者碼元間差錯(cuò)不存在關(guān)聯(lián),后者多是由于外界強(qiáng)干擾引起的突發(fā)或成片差錯(cuò)。獨(dú)立型差錯(cuò)又稱(chēng)隨機(jī)差錯(cuò),可通過(guò)改進(jìn)傳輸設(shè)備和傳輸線(xiàn)路加以改善;突發(fā)型差錯(cuò)嚴(yán)重而通過(guò)檢錯(cuò)糾錯(cuò)編碼仍無(wú)法糾正的,接收方只有要求對(duì)方重發(fā)。

6.調(diào)制-解調(diào)與多路復(fù)用二進(jìn)制數(shù)字信號(hào)都是脈沖信號(hào),其頻譜很寬,從直流到很高頻率;計(jì)算機(jī)進(jìn)行遠(yuǎn)程數(shù)據(jù)傳輸大多借用現(xiàn)成的公用通信網(wǎng)。而公用通信網(wǎng)對(duì)用戶(hù)端開(kāi)通的通信信道帶寬是有限的,如電話(huà)網(wǎng)為300Hz~3400Hz。因此,對(duì)于遠(yuǎn)程數(shù)據(jù)傳輸,發(fā)送端要將數(shù)字信號(hào)經(jīng)調(diào)制器調(diào)制成適合在通信信道上傳輸?shù)哪M信號(hào),到達(dá)接收端后用相應(yīng)的解調(diào)器將模擬信號(hào)還原成原先的數(shù)字信號(hào)。對(duì)于需要收發(fā)的通信終端,將調(diào)制和解調(diào)兩種設(shè)備做在一起,這就是調(diào)制解調(diào)器Modem(Modulator-Demodulator)。

第十二頁(yè),共八十七頁(yè),2022年,8月28日6.調(diào)制-解調(diào)與多路復(fù)用(續(xù))調(diào)制信號(hào)的方法很多,常見(jiàn)的有調(diào)幅、調(diào)頻、調(diào)相三種信號(hào)變換,分別稱(chēng)為ASK(幅度鍵控)、FSK(移頻鍵控)、PSK(移相鍵控),如下圖所示。

對(duì)二進(jìn)制數(shù)值“0”和“1”,ASK用正弦波的兩個(gè)不同振幅值表示,F(xiàn)SK用兩個(gè)不同頻率表示,PSK用一定頻率正弦波的兩個(gè)不同相位表示。

對(duì)移相調(diào)制PSK有二相調(diào)制:移相0°表示0,移相180°表示1;四相調(diào)制:相位角變化0°、90°、180°、270°分別表示二位二進(jìn)制數(shù)00、01、10、11;八相調(diào)制:相位角變化0°、45°、90°、135°、180°、225°、270°、315°分別表示三位二進(jìn)制數(shù)000、001、010、011、100、101、110、111。

在高速調(diào)制解調(diào)器中,除移相調(diào)制PSK外,還常有相位幅度調(diào)制PAM,用相位和幅度不同狀態(tài)的組合來(lái)表示數(shù)位二進(jìn)制數(shù)。

第十三頁(yè),共八十七頁(yè),2022年,8月28日6.調(diào)制-解調(diào)與多路復(fù)用(續(xù))在長(zhǎng)途通信中常用光纖、衛(wèi)星、地面微波、同軸電纜等傳輸信號(hào),它們?nèi)萘扛摺㈩l帶寬,為了充分、高效、合理利用通信資源,一般采用多路復(fù)用技術(shù),讓多路數(shù)據(jù)信號(hào)共同使用一條線(xiàn)路進(jìn)行傳輸:發(fā)送端將來(lái)自多條輸入線(xiàn)的多路數(shù)據(jù)信號(hào)組合、調(diào)制成復(fù)用數(shù)據(jù)信號(hào)送上高容量的數(shù)據(jù)鏈路,接收端用多路分配器接收復(fù)用數(shù)據(jù)信號(hào),依照信道分離(分配)、還原為多路數(shù)據(jù),將其送到相應(yīng)的輸出線(xiàn)上。多路復(fù)用技術(shù)逐步發(fā)展,從最初的由多條電線(xiàn)組成一根電纜的空分多路復(fù)用SDM(SpaceDivisionMultiplex)、到模擬通信中的頻分多路復(fù)用FDM(FrequencyDivisionMultiplex)、到數(shù)字信號(hào)傳送的時(shí)分多路復(fù)用TDM(TimeDivisionMultiplex)和統(tǒng)計(jì)時(shí)分多路復(fù)用SDTM(StatisticalTDM,又稱(chēng)異步TDM或智能TDM),而現(xiàn)代廣泛應(yīng)用于衛(wèi)星通信和移動(dòng)通信的是碼分多路復(fù)用CDMA(CodeDivisionMultiplexAddress,又稱(chēng)碼分多址),隨著光纖通信的發(fā)展又出現(xiàn)了波分多路復(fù)用WDM(WavelengthDivisionMultiplex)和光頻分多路復(fù)用OFDM(OpticalFrequencyDivisionMultiplex),本質(zhì)上WDM和OFDM屬于頻分多路復(fù)用FDM。

第十四頁(yè),共八十七頁(yè),2022年,8月28日7.1.2串行接口

1.串行接口標(biāo)準(zhǔn)簡(jiǎn)介數(shù)據(jù)的發(fā)送者和接收者分別稱(chēng)為數(shù)據(jù)源和數(shù)據(jù)宿,統(tǒng)稱(chēng)為數(shù)據(jù)終端設(shè)備,即DTE(DataTerminalEquipment)。DTE之間的通路稱(chēng)為數(shù)據(jù)電路。數(shù)據(jù)信號(hào)必須經(jīng)信號(hào)變換設(shè)備變換后才能送上(通信網(wǎng)的)傳輸信道進(jìn)行傳輸,傳輸?shù)男盘?hào)也必須經(jīng)反變換后才能為DTE所接收。信號(hào)變換設(shè)備位于數(shù)據(jù)電路的終端,稱(chēng)為數(shù)據(jù)電路終接設(shè)備,即DCE(DataCircuitingEquipment)。在簡(jiǎn)單的計(jì)算機(jī)數(shù)字傳輸系統(tǒng)中,計(jì)算機(jī)(或準(zhǔn)確地講計(jì)算機(jī)串行接口)就是DTE,調(diào)制解調(diào)器MODEM就是DCE,它們位于OSI通信模型的最低層——物理層。

為了統(tǒng)一物理層的操作,使得不同廠家生產(chǎn)的設(shè)備能相互連接起來(lái),國(guó)際標(biāo)準(zhǔn)化組織ISO、國(guó)際電報(bào)電話(huà)咨詢(xún)委員會(huì)CCITT、電氣和電子工程師協(xié)會(huì)IEEE、美國(guó)電子工業(yè)協(xié)會(huì)EIA均制定了相應(yīng)的標(biāo)準(zhǔn)和建議,例如CCITT制定的通過(guò)電話(huà)網(wǎng)進(jìn)行數(shù)據(jù)傳輸?shù)腣系列建議、通過(guò)公用數(shù)據(jù)網(wǎng)進(jìn)行數(shù)據(jù)傳輸?shù)腦系列建議、IEEE制定的用于局域網(wǎng)的IEEE802系列標(biāo)準(zhǔn)等等。其中兩個(gè)最著名的協(xié)議實(shí)例是CCITTV.24和X.21。

由于計(jì)算機(jī)網(wǎng)絡(luò)最早使用的是模擬電話(huà)信道,CCITT較早地開(kāi)發(fā)和建立了適合于電話(huà)網(wǎng)的CCITTV.24,用作計(jì)算機(jī)或終端與Modem之間的接口標(biāo)準(zhǔn)。CCITTV.24與廣為流行的EIARS-232-C標(biāo)準(zhǔn)相兼容,作為DTE-DCE之間的模擬接口標(biāo)準(zhǔn)非常實(shí)用。第十五頁(yè),共八十七頁(yè),2022年,8月28日1.串行接口標(biāo)準(zhǔn)簡(jiǎn)介(續(xù))RS-232-C規(guī)定了接口接插件(插頭、插座)的規(guī)格、尺寸、針孔的數(shù)量與排列等機(jī)械特性如下圖所示。RS-232-C規(guī)定了連線(xiàn)的電氣特性:信號(hào)電平采用負(fù)邏輯,即邏輯“1”為-3V~-15V,邏輯“0”為+3V~+15V;使用分立元件實(shí)現(xiàn)不平衡雙流接口,最大工作速率為20Kbps,采用ISO2110規(guī)定的25芯連接器。當(dāng)采用電容性(約150pF/m)多芯電纜時(shí),最大纜長(zhǎng)不超過(guò)15m。RS-232-C功能特性規(guī)定每條接口線(xiàn)有一個(gè)功能,接口線(xiàn)以英文字母組合命名。RS-232-C規(guī)程特性定義了接口控制信號(hào)線(xiàn)上電平升降的動(dòng)作序列,它們對(duì)應(yīng)了接口兩側(cè)物理連接的建立、維持、拆除以及比特流的傳送情況。第十六頁(yè),共八十七頁(yè),2022年,8月28日1.串行接口標(biāo)準(zhǔn)簡(jiǎn)介(續(xù))計(jì)算機(jī)還用到其它串行接口。如IBMPC機(jī)支持20mA電流環(huán)方式。以20mA電流的有和無(wú)來(lái)表示邏輯電平“1”和“0”,有4條信號(hào)線(xiàn):發(fā)送+、發(fā)送-、接收+、接收-;在機(jī)器內(nèi)借用RS-232-C的D型25針連接器中未使用的9、11、18、25號(hào)引線(xiàn)做為上述4條信號(hào)線(xiàn)。20mA電流環(huán)抗干擾能力強(qiáng)、傳輸距離遠(yuǎn),是個(gè)非正式標(biāo)準(zhǔn)。高速遠(yuǎn)距離大容量傳輸場(chǎng)合,也用到RS-422和RS-423,它們采用差分平衡傳輸線(xiàn)和差分不平衡傳輸線(xiàn),最大傳輸距離達(dá)1500m,傳輸速率可分別達(dá)到1Mbps和100Kbps。1997年以后,支持通用串行總線(xiàn)USB標(biāo)準(zhǔn)的外設(shè)迅猛發(fā)展,USB接口受到普遍支持,大有取代其它各種外設(shè)接口的架勢(shì),詳見(jiàn)后述。

第十七頁(yè),共八十七頁(yè),2022年,8月28日2.串行接口連接

以RS-232-C為例介紹串行接口的連接。RS-232-C標(biāo)準(zhǔn)規(guī)定了串行通信時(shí)數(shù)據(jù)終端設(shè)備DTE(例如計(jì)算機(jī))和數(shù)據(jù)電路終接設(shè)備DCE(如MODEM)之間的接口信號(hào)。RS-232-C共定義25條線(xiàn),包括2條地線(xiàn)、4條收發(fā)數(shù)據(jù)線(xiàn)、11條控制線(xiàn)、3條定時(shí)線(xiàn),另有2條留作測(cè)試用、3條保留備用。實(shí)際上常用的只有9條,分述如下。(2)數(shù)據(jù)收發(fā)線(xiàn)TxD:發(fā)送數(shù)據(jù)線(xiàn)DTE將串行數(shù)據(jù)經(jīng)TxD端發(fā)送至DCE。RxD:接收數(shù)據(jù)線(xiàn)DTE從RxD端接收DCE送來(lái)的串行數(shù)據(jù)。當(dāng)數(shù)據(jù)傳輸距離大于15米時(shí),DTE之間要加Modem進(jìn)行調(diào)制解調(diào),一般要用到RS-232-C定義的5~9條信號(hào)線(xiàn),Modem之間距離近可用專(zhuān)線(xiàn),距離遠(yuǎn)可通過(guò)電話(huà)網(wǎng)傳輸,接口連接如下圖所示。

SG:信號(hào)地。第十八頁(yè),共八十七頁(yè),2022年,8月28日1.串行接口標(biāo)準(zhǔn)簡(jiǎn)介(續(xù))

數(shù)據(jù)傳輸距離小于15米時(shí),可在DTE之間直接通過(guò)RS-232-C連線(xiàn)而無(wú)須Modem,最簡(jiǎn)單情況只要使用3條信號(hào)線(xiàn)就能進(jìn)行全雙工通信,各種接線(xiàn)方式如右圖所示。第十九頁(yè),共八十七頁(yè),2022年,8月28日7.2可編程通信接口芯片

通信接口硬件電路可分為UART(UniversalAsynchronousReceiver/Transmitter:通用異步收發(fā)器)、USRT(UniversalSynchronousReceiver/Transmitter:通用同步收發(fā)器)和USART(UniversalSynchronous-AsynchronousReceiver/Transmitter:通用同步-異步收發(fā)器)。PC機(jī)中串行通信接口使用8250,屬UART,只支持異步通信,采用單通道雙緩沖結(jié)構(gòu),芯片外部有40條引腳。8251A-PCI(ProgrammableCommunicationInterface:可編程通信接口)屬USART,采用單通道雙緩沖結(jié)構(gòu),芯片有28條引腳。8251A的基本性能如下?!?/p>

同步傳輸:每個(gè)字符可設(shè)為5~8位,可內(nèi)同步或外同步,內(nèi)同步自動(dòng)插入同步字符;

傳輸速率可達(dá)64Kbps?!舢惒絺鬏敚好總€(gè)字符可設(shè)為5~8位,傳輸速率可達(dá)19.2Kbps,收發(fā)時(shí)鐘速率可為傳

輸波特率的1、16或64倍,可編程產(chǎn)生1、1.5或2位的停止位,能檢測(cè)假起始位,自

動(dòng)檢測(cè)奇偶錯(cuò)、格式錯(cuò)和溢出錯(cuò)?!?/p>

完全雙工,具有雙緩沖的接收器和發(fā)送器。所有輸入輸出電平與TTL兼容。

第二十頁(yè),共八十七頁(yè),2022年,8月28日7.2.1編程結(jié)構(gòu)

8251A有五個(gè)主要組成部分:面向通信端的接收器、發(fā)送器、調(diào)制解調(diào)控制邏輯和面向CPU端的讀寫(xiě)控制邏輯、數(shù)據(jù)總線(xiàn)緩沖器。

(1)接收器接收器按接收時(shí)鐘RxC的節(jié)拍將RxD引腳上的串行數(shù)據(jù)一位位地移入接收移位寄存器,按規(guī)定去掉起始位、校驗(yàn)位和停止位,一個(gè)字符接收完畢再將接收移位寄存器中并行數(shù)據(jù)送入接受數(shù)據(jù)緩沖寄存器。接收移位寄存器接收串行數(shù)據(jù),送出并行數(shù)據(jù),完成串-并轉(zhuǎn)換。接收移位寄存器和接收數(shù)據(jù)緩沖寄存器組成了接收的雙緩沖器結(jié)構(gòu)。

(2)發(fā)送器發(fā)送器按TxC的節(jié)拍,將發(fā)送移位寄存器中的數(shù)據(jù)按規(guī)定的格式裝上起始位、校驗(yàn)位和停止位,再一位一位移到TxD引腳發(fā)送出去。發(fā)送的數(shù)據(jù)先由CPU送入發(fā)送數(shù)據(jù)緩沖寄存器,當(dāng)發(fā)送移位寄存器移空時(shí),自動(dòng)將發(fā)送數(shù)據(jù)緩沖寄存器的內(nèi)容裝入發(fā)送移位寄存器。發(fā)送移位寄存器裝入的是并行數(shù)據(jù),送出的串行數(shù)據(jù),完成并-串轉(zhuǎn)換。

發(fā)送數(shù)據(jù)緩沖寄存器和發(fā)送移位寄存器組成了發(fā)送的雙緩沖器結(jié)構(gòu)。

第二十一頁(yè),共八十七頁(yè),2022年,8月28日7.2.1編程結(jié)構(gòu)(續(xù))(3)調(diào)制解調(diào)(Modem)控制邏輯Modem邏輯控制產(chǎn)生8251A與Modem之間二對(duì)(四線(xiàn))聯(lián)絡(luò)信號(hào):和、和,以協(xié)調(diào)8251A與Modem之間同步地傳輸數(shù)據(jù)。(4)讀寫(xiě)控制邏輯讀寫(xiě)控制邏輯對(duì)系統(tǒng)送入8251A的控制信號(hào)進(jìn)行譯碼,實(shí)施對(duì)8251A的讀寫(xiě)操作,如下表所示。(5)數(shù)據(jù)總線(xiàn)緩沖器數(shù)據(jù)總線(xiàn)緩沖器包括狀態(tài)緩沖寄存器、命令緩沖寄存器,以及發(fā)送數(shù)據(jù)緩沖寄存器、接收數(shù)據(jù)緩沖寄存器,經(jīng)雙向三態(tài)數(shù)據(jù)引腳D7~D0與系統(tǒng)數(shù)據(jù)總線(xiàn)相連。CPU用輸入/輸出指令對(duì)8251A讀/寫(xiě)數(shù)據(jù)、或讀狀態(tài)字/寫(xiě)控制字,都通過(guò)數(shù)據(jù)總線(xiàn)緩沖器進(jìn)行。

第二十二頁(yè),共八十七頁(yè),2022年,8月28日7.2.2引腳及其功能

8251A芯片是N溝道硅柵工藝MOS器件,采用28腳DIP封裝,如下圖所示。

(1)數(shù)據(jù)線(xiàn)D7~D0

雙向三態(tài)收發(fā)的數(shù)據(jù)、寫(xiě)入的方式字/同步字符/命令字、讀出的狀態(tài),都經(jīng)D7~D0進(jìn)行。

(2)讀寫(xiě)控制線(xiàn)C/-D(Control/Data)控制/數(shù)據(jù)信號(hào),輸入C/-D引腳有兩種狀態(tài),表征8251A芯片內(nèi)的數(shù)據(jù)端口和控制(狀態(tài))端口。當(dāng)-CS有效時(shí),C/-D=0表示對(duì)8251A讀寫(xiě)數(shù)據(jù),C/-D=1則表示讀狀態(tài)或?qū)懣刂谱帧?RD(Read)讀,輸入,低電平有效。有效時(shí)表示對(duì)8251A進(jìn)行讀操作。-WR(Writ)寫(xiě),輸入,低電平有效。有效時(shí)表示對(duì)8251A進(jìn)行寫(xiě)操作。RESET復(fù)位,輸入,高電平有效。RESET有效使8251A復(fù)位到空閑狀態(tài),只有重新初始化才能脫離空閑狀態(tài)。CLK時(shí)鐘輸入CLK周期規(guī)定在0.32μs~1.35μs之間。在同步方式CLK頻率大于TxC或RxC(收或發(fā)時(shí)鐘)30倍,異步方式須大于收發(fā)時(shí)鐘4.5倍。

-CS(Chipselect)片選信號(hào),輸入,低電平有效接地址譯碼器的輸出,有效后才能對(duì)8251A進(jìn)行讀寫(xiě)操作。第二十三頁(yè),共八十七頁(yè),2022年,8月28日7.2.2引腳及其功能

(3)發(fā)送器引腳TxD(TransmitterData)發(fā)送數(shù)據(jù)線(xiàn),輸出。TxC(TransmitterClock)發(fā)送時(shí)鐘,輸入。TxRDY(TransmitterReady)發(fā)送準(zhǔn)備好,輸出,高電平有效。當(dāng)允許發(fā)送且發(fā)送數(shù)據(jù)緩沖寄存器已空時(shí),TxRDY有效,告知CPU將下一個(gè)發(fā)送字符送來(lái)。該引腳可作為中斷請(qǐng)求信號(hào)向CPU申請(qǐng)發(fā)送中斷。TxE(TransmitterEmpty)發(fā)送器空,輸出,高電平有效。TxE有效表示發(fā)送移位寄存器移空,已無(wú)數(shù)據(jù)可發(fā)。TxE有效,必然TxRDY已經(jīng)有效。(4)接收器引腳RxD(ReceiverData)接收數(shù)據(jù)線(xiàn),輸入。RxC(ReceiverClock)接收時(shí)鐘,輸入。RxRDY(ReceiverReady)接收準(zhǔn)備好,輸出,高電平有效。RxRDY有效,表示接收數(shù)據(jù)緩沖器中已收到一個(gè)接收好的數(shù)據(jù),可供CPU來(lái)讀取。該引腳可作為中斷請(qǐng)求信號(hào)向CPU申請(qǐng)接收中斷。SYNDET/BRKDET(SynchronousDetect/BreakDetect)同步檢測(cè)/斷點(diǎn)檢測(cè),輸出/輸入,高電平有效。 ◆8251A工作于同步方式該引腳表示SYNDET,內(nèi)同步時(shí)該引腳為輸出,有效狀態(tài)(高

電平)表示8251A已經(jīng)檢測(cè)到同步字符;外同步時(shí)該引腳為輸入,由該引腳輸入同步

脈沖,上升沿啟動(dòng)8251A接收數(shù)據(jù)。 ◆8251A工作于異步方式該引腳表示BRKDET,是輸出信號(hào),有效狀態(tài)(高電平)表示

接收端檢測(cè)到間斷點(diǎn)(編程規(guī)定長(zhǎng)度的全“0”字符);恢復(fù)正常數(shù)據(jù)接收時(shí)該引腳被

復(fù)位。

第二十四頁(yè),共八十七頁(yè),2022年,8月28日7.2.2引腳及其功能

(續(xù))(5)Modem聯(lián)絡(luò)線(xiàn)

-DTR(DataTerminalReady)數(shù)據(jù)終端準(zhǔn)備好,輸出,低電平有效。8251A以有效來(lái)通知Modem:DTE(即8251A)已經(jīng)準(zhǔn)備好。-DSR(DataSetReady)數(shù)據(jù)裝置準(zhǔn)備好,輸入,低電平有效。這是Modem對(duì)的應(yīng)答信號(hào):表示調(diào)制解調(diào)器已準(zhǔn)備好。-RTS(RequestToSend)請(qǐng)求發(fā)送,輸出,低電平有效。8251A通過(guò)有效來(lái)向Modem提出發(fā)送數(shù)據(jù)的請(qǐng)求。-CTS(ClearToSend)允許發(fā)送,輸入,低電平有效。這是Modem對(duì)的應(yīng)答信號(hào):Modem已經(jīng)準(zhǔn)備就緒,8251A可以發(fā)送數(shù)據(jù)。只有有效,TxRDY引腳才可能有效。

第二十五頁(yè),共八十七頁(yè),2022年,8月28日7.2.3數(shù)據(jù)收發(fā)過(guò)程

1.發(fā)送過(guò)程設(shè)置好8251A方式字(規(guī)定數(shù)據(jù)格式、通信方式和通信波特率)后,CPU輸出命令字到8251A,使其-DTR與-RST引腳有效(通知Modem),待Modem來(lái)的-DSR、-CTS以及TxRDY引腳有效(讀狀態(tài)字識(shí)別)后,CPU用輸出指令將發(fā)送數(shù)據(jù)輸出至8251A的發(fā)送數(shù)據(jù)緩沖寄存器(TxRDY變?yōu)闊o(wú)效),發(fā)送數(shù)據(jù)緩沖寄存器的內(nèi)容再送至發(fā)送移位寄存器(此時(shí)TxRDY又變?yōu)橛行В却鼵PU送來(lái)下一個(gè)發(fā)送數(shù)據(jù)),發(fā)送移位寄存器按照發(fā)送時(shí)鐘TxC的節(jié)拍將其內(nèi)容一位一位地移到TxD輸出數(shù)據(jù)線(xiàn)上串行發(fā)送出去。若是異步通信方式,控制邏輯按規(guī)定的格式給發(fā)送數(shù)據(jù)加上起始位、校驗(yàn)位和停止位。若是同步方式,外同步在外界同步脈沖觸發(fā)后/內(nèi)同步在發(fā)送同步字符(一個(gè)或兩個(gè))后,再按TxC節(jié)拍將發(fā)送移位寄存器內(nèi)容逐位移到TxD輸出數(shù)據(jù)線(xiàn)上。當(dāng)發(fā)送移位寄存器移空時(shí),發(fā)送數(shù)據(jù)緩沖寄存器內(nèi)容自動(dòng)裝入發(fā)送移位寄存器,接著發(fā)送下一個(gè)字符的各位,如此不斷重復(fù),使數(shù)據(jù)發(fā)送連續(xù)進(jìn)行。CPU通過(guò)查詢(xún)或中斷方式及時(shí)地將發(fā)送數(shù)據(jù)送到發(fā)送數(shù)據(jù)緩沖寄存器,保證內(nèi)存中待發(fā)送的數(shù)據(jù)經(jīng)發(fā)送數(shù)據(jù)緩沖寄存器——發(fā)送移位寄存器——TxD,按TxC的節(jié)拍,源源不斷地從TxD引腳線(xiàn)上發(fā)送出去,直至發(fā)送結(jié)束。若發(fā)送的數(shù)據(jù)不能及時(shí)送到發(fā)送數(shù)據(jù)緩沖寄存器(TxRDY有效),8251A按照既定的TxC速率對(duì)發(fā)送移位寄存器繼續(xù)發(fā)送,將發(fā)送移位寄存器移空后TxE變?yōu)橛行?,發(fā)送過(guò)程就將中斷(沒(méi)有有效的數(shù)據(jù)供發(fā)送)。

第二十六頁(yè),共八十七頁(yè),2022年,8月28日7.2.3數(shù)據(jù)收發(fā)過(guò)程(續(xù))2.接收過(guò)程初始化設(shè)置好8251A方式字,對(duì)內(nèi)同步方式CPU輸出命令字使8251A進(jìn)入收索同步字符狀態(tài),不斷判斷RxD引腳上是否接收到同步字符(一個(gè)或二個(gè)),若接收到同步字符,CPU輸出命令字允許8251A開(kāi)始接收數(shù)據(jù)。對(duì)外同步方式,則接收到輸入的同步脈沖后開(kāi)始接收數(shù)據(jù)。同步方式按RxC節(jié)拍從RxD引腳上逐位接收串行數(shù)據(jù)放入接收移位寄存器中,每接收完一個(gè)字符后就將接收移位寄存器中內(nèi)容裝入接收緩沖寄存器中。

對(duì)異步方式允許接收后,8251A不斷判斷RxD引腳上是否收到起始位(“0”電平),若收到起始位則每隔若干時(shí)鐘周期在數(shù)據(jù)位的中間點(diǎn)判斷RxD引腳上接受的是“0”還是“1”,每接收完一幀(一個(gè)字符)8251A就按規(guī)定的格式去掉起始位、校驗(yàn)位和停止位,將接收移位寄存器中內(nèi)容裝入接收緩沖寄存器中。接收緩沖寄存器中每裝入一個(gè)接收的字符,RxRDY引腳輸出有效,同時(shí)狀態(tài)寄存器的RxRDY位為“1”;如果接收的字符出錯(cuò),則狀態(tài)寄存器的相應(yīng)出錯(cuò)標(biāo)志位(共3個(gè))置位。CPU用中斷或查詢(xún)方式讀取接收的數(shù)據(jù)。

中斷方式由RxRDY引腳經(jīng)中斷控制器向CPU申請(qǐng)中斷;

查詢(xún)方式CPU首先從8251A狀態(tài)寄存器讀入狀態(tài)字,判斷一個(gè)字符是否接收完畢?接收是否出錯(cuò)?若接受完畢且無(wú)差錯(cuò)則從接收數(shù)據(jù)緩沖寄存器中讀入數(shù)據(jù),否則等待或進(jìn)行出錯(cuò)處理。

若CPU遲遲未取走已經(jīng)送到數(shù)據(jù)緩沖寄存器中的接收數(shù)據(jù),8251A按RxC節(jié)拍從RxD引腳上又接收完一個(gè)字符數(shù)據(jù)并再次裝入接收數(shù)據(jù)緩沖寄存器中,則前一個(gè)接收數(shù)據(jù)將被沖掉,這就發(fā)生了重疊錯(cuò)(又稱(chēng)溢出錯(cuò),狀態(tài)寄存器的D4=1)。

第二十七頁(yè),共八十七頁(yè),2022年,8月28日7.2.4初始化編程

8251A是可編程單通道全雙工通信接口芯片,軟硬件協(xié)調(diào)工作,不管是發(fā)送還是接收數(shù)據(jù),都必須先對(duì)芯片進(jìn)行初始化編程。初始化編程定義8251A通信方式、字符格式、傳輸波特率等,設(shè)置收發(fā)操作及其工作狀態(tài)。

1.初始化流程初始化向8251A寫(xiě)入方式字、(同步字符)和命令字,它們都寫(xiě)入芯片的控制端口,靠寫(xiě)入時(shí)的狀態(tài)和順序來(lái)區(qū)分。在8251A復(fù)位狀態(tài)下,依次寫(xiě)入方式字→(同步字符)→命令字,異步方式或外同步方式時(shí)不需寫(xiě)入同步字符。初始化后8251A才能收發(fā)通信,其流程如右圖所示。

8251A只有一個(gè)控制端口,必須復(fù)位后才能寫(xiě)入方式字、同步字符和命令字,而復(fù)位又必須由命令字完成,如何進(jìn)行呢?一般先向控制口連續(xù)寫(xiě)入兩個(gè)字節(jié)0AAH、40H,0AAH稱(chēng)為虛字節(jié),若8251A認(rèn)為是方式字則為異步方式,接著向控制口寫(xiě)入的必定是命令字;若8251A認(rèn)為是命令字,則沒(méi)有內(nèi)部復(fù)位(D6=0),接著向控制口寫(xiě)入的仍為命令字。因此接在0AAH之后寫(xiě)入的40H為命令字,執(zhí)行內(nèi)部復(fù)位(D6=1),接下來(lái)向控制口寫(xiě)入的肯定是方式字了,開(kāi)始實(shí)際的初始化操作,本小節(jié)最后的接收程序?qū)?251A就是這樣開(kāi)始初始化編程的。

第二十八頁(yè),共八十七頁(yè),2022年,8月28日2.方式控制字

方式控制字規(guī)定了8251A通信的字符格式與校驗(yàn)、波特率系數(shù)和同步方式。其格式如下圖所示。

D1D0=00為同步傳輸,

D1D0=01、10、11為異步傳輸,波特率系數(shù)分別為×1、×16、×64。D3D2決定一個(gè)字符的長(zhǎng)度。D5D4定義字符的奇偶校驗(yàn)及校驗(yàn)方式。D4=0則D5位無(wú)效D7D6同步時(shí)規(guī)定同步方式和單/雙同步字符;異步時(shí)規(guī)定停止位位數(shù)。

第二十九頁(yè),共八十七頁(yè),2022年,8月28日3.命令控制字

命令控制字規(guī)定了8251A芯片的收—發(fā)操作及其狀態(tài),其格式如下圖所示。

D0允許發(fā)送位:=1允許發(fā)送,=0禁止發(fā)送。只有D0=1,TxRDY才可能有效。D1數(shù)據(jù)終端準(zhǔn)備好:=1使-DTR引腳有效(為0)。D2允許接收位:=1允許接收,=0禁止接收。只有D2=1,RxRDY才可能有效。允許接收必須使錯(cuò)誤標(biāo)志復(fù)位(使命令字D4=1),在同步方式允許接受時(shí)還必須進(jìn)入同步收索操作(使命令字D7=1)。D5請(qǐng)求發(fā)送位:=1使引腳-RTS有效,向Modem提出發(fā)送請(qǐng)求。D6內(nèi)部復(fù)位位:=1強(qiáng)制8251A內(nèi)部復(fù)位,使之回到準(zhǔn)備接收方式字狀態(tài)。D7進(jìn)入收索操作位:只用于內(nèi)同步方式,為1使8251A進(jìn)入收索同步字符操作狀態(tài),收索到則使SYNDET引腳有效,并開(kāi)始對(duì)數(shù)據(jù)的接收操作。D3發(fā)送斷點(diǎn)字符位:=1迫使TxD端發(fā)送斷點(diǎn)字符“1”,=0正常傳輸。D4出錯(cuò)標(biāo)志復(fù)位位:=1使?fàn)顟B(tài)寄存器中三個(gè)出錯(cuò)標(biāo)志位復(fù)位,以便重新接收字符。

第三十頁(yè),共八十七頁(yè),2022年,8月28日4.狀態(tài)字

狀態(tài)寄存器記錄了8251A在收發(fā)數(shù)據(jù)過(guò)程中的狀態(tài),供CPU讀取。狀態(tài)字格式如下圖所示。

D0:TxRDY位,為1表示發(fā)送數(shù)據(jù)緩沖寄存器已空。D1:RxRDY位,為1表示接收數(shù)據(jù)緩沖寄存器中已有一個(gè)接收好的數(shù)據(jù)。D2:TxE位,為1表示發(fā)送移位寄存器已空(無(wú)數(shù)據(jù)可發(fā)),其電平與TxE引腳相同。D3:PE(奇偶錯(cuò))位,為1表示接收到的數(shù)據(jù)出現(xiàn)奇偶校驗(yàn)錯(cuò)。D4:OE(溢出錯(cuò))位,為1表示出現(xiàn)溢出錯(cuò),前一個(gè)已接受好的數(shù)據(jù)被沖掉。D5:PE(格式錯(cuò))位,為1表示不能收到字符的有效停止位,字符格式出錯(cuò)。D6:SYNDET/BRKDET(同步/斷點(diǎn)檢測(cè))位,為1表示已經(jīng)檢測(cè)到同步字符(內(nèi)同步方式)或接收到斷點(diǎn)字符(異步方式)。D7:DSR(數(shù)據(jù)裝置準(zhǔn)備好)位,為1表示Modem已準(zhǔn)備好,電平狀態(tài)與引腳-DSR相反。

第三十一頁(yè),共八十七頁(yè),2022年,8月28日5.8251A應(yīng)用

(1)8251A與CPU、RS-232-C的硬件連接8251A作為串行通信接口,與CPU、RS-232-C的硬件連接如下圖所示。 經(jīng)RS-232-C標(biāo)準(zhǔn)接口,8251A可連接異步/同步調(diào)制解調(diào)器等通信設(shè)備。

第三十二頁(yè),共八十七頁(yè),2022年,8月28日(2)軟件編程控制通信

以甲乙兩臺(tái)TP86單板機(jī)之間通信為例介紹編程控制。兩臺(tái)單板機(jī)均以8251A作為DTE,若距離很近,只需將甲機(jī)8251A的TxD、RxD同乙機(jī)8251A的RxD、TxD引線(xiàn)互連、再將信號(hào)地線(xiàn)GND直接相連即可。若相距較遠(yuǎn),可經(jīng)RS-232-C接口使用Modem、再經(jīng)專(zhuān)線(xiàn)或電話(huà)網(wǎng)連接通信,參考前圖。要求把甲機(jī)上存儲(chǔ)在TBUFFER緩沖區(qū)、長(zhǎng)度為2DH的數(shù)據(jù)塊(一段顯示程序)傳送到乙機(jī)的RBUFFER的緩沖區(qū)中,采用異步方式,字符長(zhǎng)度為8位、停止位2位、無(wú)校驗(yàn),波特率系數(shù)為16。因此8251A的方式字為0CEH,發(fā)送命令字為33H(DTE準(zhǔn)備好、允許并請(qǐng)求發(fā)送、錯(cuò)誤標(biāo)志復(fù)位),接受命令字為54H(錯(cuò)誤復(fù)位、允許接受)。CPU采用查詢(xún)方式與8251A交換數(shù)據(jù),8251A的控制口地址為0F2H,數(shù)據(jù)口地址為0F0H(即8251A的C/接系統(tǒng)地址總線(xiàn)A1)。接收與發(fā)送程序分別編寫(xiě),每個(gè)程序都包括8251A初始化、狀態(tài)查詢(xún)和數(shù)據(jù)傳輸。第三十三頁(yè),共八十七頁(yè),2022年,8月28日TP86發(fā)送程序CSEG SEGMENTASSUME CS:CSEG

;以下是待發(fā)送的45個(gè)字節(jié)數(shù)據(jù)TBUFFER DB<…………> DB<…………>TCOUNT EQU$-TBUFFER TRAN PROC FAR MOVDX,0F2H ;DX指向控制口

MOVAL,0 ;連同以下三句使8251A進(jìn)入復(fù)位狀態(tài)

OUTDX,AL OUTDX,AL OUTDX,AL MOVAL,40H ;內(nèi)部復(fù)位命令字

OUTDX,AL NOP MOVAL,0CEH ;設(shè)置方式字

OUTDX,AL MOVAL,33H ;設(shè)置發(fā)送方命令字

OUTDX,AL MOVCX,TCOUNT ;設(shè)置發(fā)送字節(jié)數(shù)

LEASI,TBUFFER ;發(fā)送字節(jié)的首地址送SI地址指針第三十四頁(yè),共八十七頁(yè),2022年,8月28日TP86發(fā)送程序(續(xù))

LTRA: INAL,DX ;讀取狀態(tài)

TESTAL,01H ;發(fā)送緩沖器空嗎?

JZLTRA ;不空則繼續(xù)詢(xún)問(wèn)等待

MOVDX,0F0H ;DX指向數(shù)據(jù)端口

MOVAL,[SI] ;取發(fā)送字節(jié)

OUTDX,AL ;送去發(fā)送

INCSI ;指向下一個(gè)發(fā)送字節(jié)

MOVDX,0F2H

LOOPLTRA ;未發(fā)送完,繼續(xù)

JMPFF00:0000H ;發(fā)送完畢,返回監(jiān)控

TRAN ENDP

CSEG ENDS

END

第三十五頁(yè),共八十七頁(yè),2022年,8月28日TP86接收程序CDSEG SEGMENT ASSUME CS:CDSEGRBUFFER DB 45DUP(?) ;設(shè)置45個(gè)字節(jié)長(zhǎng)的接受字符緩沖區(qū)

RCOUNT EQU$-RBUFFERRECE PROC FARSTART: MOVDX,0F2H ;DX指向控制口

MOVAL,0AAH ;使8251A進(jìn)入復(fù)位狀態(tài)

OUTDX,AL MOVAL,50H ;復(fù)位并清除出錯(cuò)標(biāo)志命令

OUTDX,AL NOP MOVAL,0CEH ;設(shè)置方式字

OUTDX,AL MOVAL,54H ;設(shè)置接收方命令字

OUTDX,AL MOVCX,RCOUNT ;設(shè)置接收字節(jié)數(shù)

LEADI,RBUFFER ;DI指向接受緩沖區(qū)首地址

第三十六頁(yè),共八十七頁(yè),2022年,8月28日TP86接收程序(續(xù))

LREC: MOVDX,0F2H ;DX指向狀態(tài)口

INAL,DX ;讀取狀態(tài)

TESTAL,02H ;接收到一個(gè)字符嗎?

JZLREC ;未接受到,繼續(xù)詢(xún)問(wèn)等待

TESTAL,38H ;接收出錯(cuò)否?

JNZERR ;出錯(cuò)則轉(zhuǎn)ERR處理

MOVDX,0F0H ;無(wú)差錯(cuò)則轉(zhuǎn)數(shù)據(jù)口接收數(shù)據(jù)

INAL,DX MOV[DI],AL ;接收數(shù)據(jù)送接收緩沖區(qū)

INCDI ;指向下一個(gè)接收單元地址

DECCX ;接收計(jì)數(shù)

JNZLREC ;未完,繼續(xù)接收

ERR:<…………> ;接受出錯(cuò)處理 ┆ ┆

RECE ENDP CDSEG ENDS END

第三十七頁(yè),共八十七頁(yè),2022年,8月28日7.3微機(jī)異步通信適配器

異步通信適配器是計(jì)算機(jī)和調(diào)制解調(diào)器等外部通信設(shè)備之間的接口電路。早期微機(jī)異步串行通信適配器有兩個(gè)通信通道,分主、輔兩個(gè)串行口(COM1和COM2),PC機(jī)中相應(yīng)有主、輔兩塊插卡,PC/XT機(jī)將兩卡合一、并和其他電路做在一塊適配卡上,再往后兩個(gè)異步通信適配器直接整合在微機(jī)的主板內(nèi)。PC/XT機(jī)異步通信適配器以可編程異步通信控制器8250為核心,配以TTL←→EIA電平轉(zhuǎn)換等電路,采用RS-232-C和20mA電流環(huán)傳輸方式。8250芯片采用DIP40引腳封裝,片內(nèi)有10個(gè)8位寄存器用來(lái)控制傳輸數(shù)據(jù)格式、通信波特率,記錄通信線(xiàn)路和Modem的狀態(tài),管理中斷。8250有一個(gè)全雙工的異步通信通道,不支持同步通信方式。

第三十八頁(yè),共八十七頁(yè),2022年,8月28日7.3.1異步通信適配器硬件邏輯結(jié)構(gòu)

異步通信適配器硬件邏輯結(jié)構(gòu)如下圖所示,包括8250與系統(tǒng)總線(xiàn)的連接、以及通信端口的連線(xiàn)。

第三十九頁(yè),共八十七頁(yè),2022年,8月28日8250是微機(jī)異步通信適配器的核心,其內(nèi)部編程結(jié)構(gòu)和外部引腳示于下圖。

第四十頁(yè),共八十七頁(yè),2022年,8月28日1.主輔串口地址及8250片內(nèi)寄存器尋址

主串口地址:跨接器U15的J12接通、J10斷開(kāi),當(dāng)AEN=0(非DMA操作)時(shí),若A9~A3為全“1”,與非門(mén)U2輸出為“0”,片選有效(另兩個(gè)片選端CS0與CS1接+5V,一直有效),主串口的8250被選中,故主串口地址為1111111xxx,即3F8H~3FFH。輔串口地址:跨接器U15的J10接通、J12斷開(kāi),將A8反相接至U2,其它與主串口情況相同,故輔串口地址為101111xxx,即2F8H~2FFH。片內(nèi)寄存器尋址:由地址線(xiàn)A2~A0及片內(nèi)線(xiàn)路控制寄存器最高位D7(DLAB位)實(shí)現(xiàn)對(duì)8250片內(nèi)10個(gè)寄存器尋址。

2.對(duì)通信適配器的讀寫(xiě)控制◆由系統(tǒng)信號(hào)-IOR和-IOW直接控制對(duì)8250的讀和寫(xiě)?!?250芯片的正數(shù)據(jù)輸入選通引腳DISTR和正數(shù)據(jù)輸出選通引腳DOSTR直接接地、一直

無(wú)效,◆系統(tǒng)讀信號(hào)-IOR經(jīng)兩級(jí)反相接到8250的負(fù)數(shù)據(jù)輸入選通引腳-DISTR,控制對(duì)其讀出;

◆系統(tǒng)寫(xiě)信號(hào)直接與8250的負(fù)數(shù)據(jù)輸出選通引腳-DOSTR相連,控制對(duì)其寫(xiě)入。

◆兩個(gè)輸入選通引腳DISTR和-DISTR、兩個(gè)輸出選通引腳DOSTR和-DOSTR中,只要有一

個(gè)有效即可對(duì)8250進(jìn)行讀或?qū)憽?/p>

3.基準(zhǔn)時(shí)鐘輸入◆1.8432MHz晶振脈沖經(jīng)三態(tài)門(mén)U7隔離、整形送到8250的基準(zhǔn)時(shí)鐘輸入端XTAL1?;鶞?zhǔn)

時(shí)鐘再用片內(nèi)的兩個(gè)8位除數(shù)鎖存器鎖存的除數(shù)(16位)對(duì)之分頻,即得到發(fā)送器的

發(fā)送時(shí)鐘;

◆將芯片輸出引腳BAUDOUT與輸入引腳RCLK相連,則8250接收器的接收時(shí)鐘與發(fā)送

器的發(fā)送時(shí)鐘相同。

第四十一頁(yè),共八十七頁(yè),2022年,8月28日7.3.2異步通信接口

如圖所示,異步通信接口有6條(32~33、36~39)與Modem的聯(lián)絡(luò)控制線(xiàn),提供RS-232-C電壓傳輸方式和20mA電流傳輸方式。U14將Modem信號(hào)線(xiàn)上EIA電平轉(zhuǎn)換成TTL電平送到8250的-RLSD(ReceiverLineSignalDetect:接收線(xiàn)路信號(hào)檢測(cè))、-CTS(ClearToSend:允許發(fā)送)、-DSR(DataSetReady:數(shù)據(jù)裝置準(zhǔn)備好)和-RI(Ring:振鈴)引腳,U12則把8250的輸出引腳-DTR(DataTerminalReady:數(shù)據(jù)終端準(zhǔn)備好)和-RTS(RequestToSend:請(qǐng)求發(fā)送)的TTL電平轉(zhuǎn)換成EIA電平送到RS-232-C的D型插座20#和4#引腳上。采用RS-232-C方式傳輸,則跨接器U5的J7和J8接通,J1、J2和J3斷開(kāi)。8250串行輸出數(shù)據(jù)從SOUT引腳經(jīng)U13變成EIA電平,通過(guò)J7輸出到RS-232-C的D型插座TxD線(xiàn)(腳2#)。而從D型插座的RxD線(xiàn)(腳3#)來(lái)的接收數(shù)據(jù)經(jīng)U9轉(zhuǎn)換成TTL電平,通過(guò)J8送入8250的串行輸入引腳SIN。使用20mA電流環(huán)方式傳輸,跨接器U5的J1、J2和J3接通,J7和J8斷開(kāi)。SOUT的輸出數(shù)據(jù)經(jīng)U8(3個(gè)并聯(lián)的集電極開(kāi)路電路)產(chǎn)生20mA電路,該電流通過(guò)J2、通信線(xiàn)路、對(duì)方兩個(gè)接收端(18#和25#)和J1構(gòu)成電流環(huán)路。作為接收方20mA電流流經(jīng)U4使發(fā)光二極管發(fā)光,緊挨著的光敏二極管導(dǎo)通,使三極管導(dǎo)通,其集電極變?yōu)榈碗娖?,反相后為高電平,即TTL電平“1”,經(jīng)J3送入8250的串行輸入端SIN;若沒(méi)有20mA電流,則送入SIN引腳的為“0”。

第四十二頁(yè),共八十七頁(yè),2022年,8月28日7.3.3串行通信功能調(diào)用

基本輸入輸出系統(tǒng)BIOS提供了對(duì)異步通信功能的調(diào)用,用“INT14H”指令實(shí)現(xiàn)。這樣,用戶(hù)就不必熟悉異步通信適配器的硬件結(jié)構(gòu)及有關(guān)細(xì)節(jié),只要給出相應(yīng)的通信參數(shù)、然后調(diào)用即可。調(diào)用主串口(地址范圍3F8H~3FFH),須令DX=0;DX=1調(diào)用輔串口(地址范圍2F8H~2FFH)。串行通信功能調(diào)用INT14H有四種功能,功能號(hào)為0~3,由AH指明。1.初始化通信口 功能號(hào):AH=0

入口參數(shù):AL

出口參數(shù):AX

第四十三頁(yè),共八十七頁(yè),2022年,8月28日出口參賽返回通信線(xiàn)路狀態(tài)(在AH中)和Modem狀態(tài)(在AL中),如下圖所示。

入口參數(shù)規(guī)定數(shù)據(jù)格式、校驗(yàn)方式和波特率,如下圖所示。

第四十四頁(yè),共八十七頁(yè),2022年,8月28日3.接收數(shù)據(jù) 功能號(hào):AH=2

入口參數(shù):(無(wú)) 出口參數(shù):AL(接收的字符)

AH(通信線(xiàn)路狀態(tài),D5=0、D6=0,其余同上)4.讀取通信口狀態(tài) 功能號(hào):AH=3

入口參數(shù):(無(wú))

出口參數(shù):AX(AH為通信線(xiàn)路狀態(tài),AL為Modem狀態(tài),同上)

2.發(fā)送數(shù)據(jù) 功能號(hào):AH=1入口參數(shù):AL(發(fā)送的字符)出口參數(shù):AH(通信線(xiàn)路狀態(tài),同上)

第四十五頁(yè),共八十七頁(yè),2022年,8月28日7.4通用串行總線(xiàn)

隨著外圍設(shè)備日益豐富,人們期盼能簡(jiǎn)單易行地對(duì)外設(shè)進(jìn)行擴(kuò)充,希望能獲得一個(gè)高性?xún)r(jià)比的標(biāo)準(zhǔn)接口,執(zhí)行靈活的協(xié)議,廣泛接納各種設(shè)備。串行通信總線(xiàn)USB提供了外設(shè)共享接口,解決了個(gè)人計(jì)算機(jī)與周邊設(shè)備的通用連接,USB和IEEE1394實(shí)現(xiàn)了多媒體可視化動(dòng)態(tài)視頻與音頻信息的實(shí)時(shí)數(shù)據(jù)傳輸,尤其USB,適合低、中、高速外設(shè)的通用連接,價(jià)廉易用,許多人都期待其實(shí)現(xiàn)對(duì)計(jì)算機(jī)外設(shè)接口的大一統(tǒng)。串行總線(xiàn)減少了接口的針腳數(shù)目,降低電力消耗和發(fā)熱量,在計(jì)算機(jī)系統(tǒng)的各個(gè)層面得到越來(lái)越廣泛的應(yīng)用。在機(jī)箱內(nèi),新世紀(jì)之初推出的硬盤(pán)接口類(lèi)型ATA-100就是SATA(SerialATA:串行ATA)的初始規(guī)格,第一代SATA速度達(dá)150Mbps,總線(xiàn)速度達(dá)1.5Gbps;第三代SATA速度預(yù)計(jì)達(dá)600Mbps,而總線(xiàn)速度可達(dá)6Gbps。

第四十六頁(yè),共八十七頁(yè),2022年,8月28日7.4.1USB概述

USB(UniversalSerialBus:通用串行總線(xiàn))在傳統(tǒng)計(jì)算機(jī)組織結(jié)構(gòu)上引入了某些網(wǎng)絡(luò)技術(shù),是計(jì)算機(jī)外設(shè)連接技術(shù)的重大變革,已成為當(dāng)今計(jì)算機(jī)接口的主流。

1.USB接口性能和特點(diǎn)USB接口性能如下:n

支持同步與異步傳輸,USB1.1數(shù)據(jù)傳輸速率高達(dá)12Mbps,USB2.0最高480Mbps。n

一個(gè)UBS接口最多可連接127臺(tái)外設(shè),整個(gè)連接采用樹(shù)型分層管理,最多支持5層集

線(xiàn)器。n

四芯連線(xiàn):2根用于差分信號(hào)的數(shù)據(jù)線(xiàn),2根電源線(xiàn)。n

最大接線(xiàn)長(zhǎng)度5米左右。n

即插即用,支持設(shè)備帶電熱插拔。n

增刪外設(shè)簡(jiǎn)單方便,系統(tǒng)會(huì)自動(dòng)收索、識(shí)別、配置新外設(shè),會(huì)自動(dòng)收回已撤消外設(shè)

所占用的資源。n

可提供或接受外設(shè)電源。第四十七頁(yè),共八十七頁(yè),2022年,8月28日1.USB接口性能和特點(diǎn)(續(xù))USB標(biāo)準(zhǔn)能對(duì)不同的系統(tǒng)和部件提供不同的功能,具有廣泛的應(yīng)用性,是外圍設(shè)備發(fā)展的必然趨勢(shì)。USB特點(diǎn)如下:n

易用性

USB連接器具有單一的模型,支持熱插拔和即插即用(PaP),允許隨時(shí)加

入和撤除設(shè)備,提供動(dòng)態(tài)識(shí)別并自動(dòng)對(duì)設(shè)備進(jìn)行設(shè)置和驅(qū)動(dòng)。n

廣泛性可對(duì)多個(gè)設(shè)備同時(shí)進(jìn)行操作,在主機(jī)和設(shè)備之間傳輸多個(gè)數(shù)據(jù)流和報(bào)文;

適應(yīng)各種設(shè)備,支持同步和異步傳輸模式。能向外設(shè)提供電能,也可接受外設(shè)提供

的電能。與現(xiàn)有操作系統(tǒng)相適應(yīng),不會(huì)產(chǎn)生任何沖突。n

靈活性允許選擇設(shè)備緩沖區(qū)的大小和傳輸帶寬,支持一系列大小數(shù)據(jù)包分幀串行

傳輸,支持各種數(shù)據(jù)傳輸率,從幾Kbps到幾Mbps甚至幾百M(fèi)bps。n

容錯(cuò)性USB協(xié)議中規(guī)定了出錯(cuò)處理和差錯(cuò)恢復(fù)機(jī)制,可對(duì)錯(cuò)誤的數(shù)據(jù)進(jìn)行恢復(fù)和

報(bào)告,可對(duì)有缺陷的設(shè)備進(jìn)行認(rèn)定。 ●高性能價(jià)格比

價(jià)格低廉而性能優(yōu)越,將外設(shè)和主機(jī)進(jìn)行了最優(yōu)集成,提供低價(jià)的

電纜和連接器,促進(jìn)了低價(jià)外設(shè)的發(fā)展。

第四十八頁(yè),共八十七頁(yè),2022年,8月28日2.USB系統(tǒng)概況

USB系統(tǒng)分為三部分:USB主機(jī)、USB連接和USB設(shè)備。

下面簡(jiǎn)述USB拓?fù)浣Y(jié)構(gòu)——USB設(shè)備——USB傳輸。USB主機(jī)是USB系統(tǒng)的核心。任何USB系統(tǒng)中,只有一個(gè)主機(jī)。主機(jī)系統(tǒng)的USB接口稱(chēng)為主機(jī)控制器HC(HostController),由硬件和軟件綜合實(shí)現(xiàn)之?!鬠SB連接是指設(shè)備和主機(jī)之間進(jìn)行

的連接及其通信方式。

◆從物理連接上看,USB呈樹(shù)型結(jié)構(gòu),

是有層次的星型布局,每個(gè)集線(xiàn)器

Hub是星型的中心,每條線(xiàn)段實(shí)現(xiàn)

點(diǎn)對(duì)點(diǎn)的連接,設(shè)備通過(guò)集線(xiàn)器分

層連接到主機(jī)上,主機(jī)是這棵樹(shù)的

根,如右圖所示。

USB的拓?fù)渖疃炔怀^(guò)5層。

◆從邏輯上看,USB是星型網(wǎng)絡(luò),主

機(jī)是這個(gè)網(wǎng)絡(luò)的中心。主機(jī)與設(shè)備

相連進(jìn)行通信,它們各自充當(dāng)信息

流的源(或目的)端和目的(或源)

端。

第四十九頁(yè),共八十七頁(yè),2022年,8月28日2.USB系統(tǒng)概況(續(xù))USB設(shè)備有集線(xiàn)器Hub和功能部件兩類(lèi)。集線(xiàn)器提供USB設(shè)備和主機(jī)之間的接口電路,簡(jiǎn)化了USB互連的復(fù)雜性,讓更多不同性能的設(shè)備方便地連到USB上。

連接點(diǎn)稱(chēng)作端口,每個(gè)集線(xiàn)器上有一個(gè)上行端口和若干個(gè)下行端口,上行端口向主機(jī)方向進(jìn)行連接,下行端口連接到下層的集線(xiàn)器或功能部件。集線(xiàn)器可以發(fā)現(xiàn)下行端口上的設(shè)備插入或移出,為下行設(shè)備分配電能。功能部件是通過(guò)總線(xiàn)發(fā)送或接收數(shù)據(jù)和控制信息的設(shè)備,由一條電纜連到集線(xiàn)器某個(gè)下行端口上,為系統(tǒng)提供具體的功能,如ISDN連接設(shè)備、鍵盤(pán)、鼠標(biāo)、移動(dòng)硬盤(pán)等。有的USB設(shè)備需要主機(jī)提供電源,稱(chēng)作總線(xiàn)供電設(shè)備,如鼠標(biāo)等;有些SUB設(shè)備可自帶電源,稱(chēng)作自供電設(shè)備。USB主機(jī)和USB設(shè)備之間的通信最終都通過(guò)USB電纜進(jìn)行。USB電纜由4根導(dǎo)線(xiàn)組成,一對(duì)具有28AGW規(guī)格的雙絞信號(hào)線(xiàn)為數(shù)據(jù)線(xiàn),一對(duì)在允許規(guī)格范圍內(nèi)的非雙絞線(xiàn)為電源線(xiàn)和地線(xiàn),外加屏蔽層。四條導(dǎo)線(xiàn)使用不同的顏色,如右表所示。第五十頁(yè),共八十七頁(yè),2022年,8月28日2.USB系統(tǒng)概況(續(xù))為了減少噪聲干擾,發(fā)送、傳輸和接收都采用差分信號(hào)。USB電纜上的串行傳輸數(shù)據(jù)采用NRZI(NoneReturnZeroInvert:“0”翻轉(zhuǎn)不歸零碼)編碼方式,傳輸信號(hào)線(xiàn)電平翻轉(zhuǎn)(有跳變)表示“0”,無(wú)跳變表示“1”。

與RS-232-C不同,USB設(shè)備與USB總線(xiàn)采用同名端相連如下圖所示。

USB連接器有兩個(gè)系列:A系列插頭(一般上行到主機(jī)系統(tǒng))/插座和B系列插頭(一般下行到USB設(shè)備)/插座。

USB設(shè)備可隨時(shí)安裝或拆卸,集線(xiàn)器Hub內(nèi)有個(gè)狀態(tài)寄存器指明其下行端口上的設(shè)備是安裝了還是拆除了。

◆當(dāng)一個(gè)USB設(shè)備插入Hub的一個(gè)端口時(shí),Hub向主機(jī)報(bào)告狀態(tài)的改變,主機(jī)查明所連接

的端口,等待100ms(待插入動(dòng)作完成并穩(wěn)定)后發(fā)回一個(gè)復(fù)位命令將該端口使能,

USB設(shè)備進(jìn)入默認(rèn)狀態(tài);接著主機(jī)給該端口的USB設(shè)備分配一個(gè)唯一的地址并讀取設(shè)備

描述表,主機(jī)從讀取的配置信息中為設(shè)備選定一個(gè)配置值。到此時(shí)設(shè)備已可使用。

◆移除USB設(shè)備,Hub同樣會(huì)通知主機(jī),使設(shè)備所連接的端口回到未使能狀態(tài),主機(jī)更新

內(nèi)部的拓?fù)湫畔?。第五十一?yè),共八十七頁(yè),2022年,8月28日2.USB系統(tǒng)概況(續(xù))設(shè)備使能后就可以和主機(jī)通信。USB是一種輪詢(xún)方式的串行總線(xiàn),主機(jī)控制器初始化所有的數(shù)據(jù)傳輸。USB總線(xiàn)時(shí)間以一毫秒的間隔等分為幀,主機(jī)控制器以1ms為周期產(chǎn)生幀起始包SOF(StartofFrame)來(lái)標(biāo)識(shí)一幀的開(kāi)始。一次I/O操作將要傳輸?shù)臄?shù)據(jù)(包括命令、狀態(tài)等信息)分割成許多包(Package)在一幀或若干幀內(nèi)傳送。總線(xiàn)一次傳送操作一般包含三種類(lèi)型的包:傳送開(kāi)始時(shí)刻,主機(jī)控制器發(fā)送一個(gè)標(biāo)志包(又稱(chēng)令牌包),描述傳輸?shù)姆N類(lèi)、方向、USB設(shè)備地址和端口號(hào)等;隨后由發(fā)送端發(fā)送若干數(shù)據(jù)包給接收端;最后接收端給發(fā)送端回送一個(gè)握手包,表明傳送是否成功。USB數(shù)據(jù)傳送有四種基本類(lèi)型。控制傳送:USB設(shè)備初次安裝時(shí),USB系統(tǒng)軟件用來(lái)設(shè)置設(shè)備參數(shù)。采用嚴(yán)格的差錯(cuò)控制機(jī)制,是無(wú)損傳送。批傳送:又稱(chēng)塊傳送,是大批量數(shù)據(jù)傳送,如打印輸出、掃描輸入等。中斷傳送:少量具有突發(fā)性的數(shù)據(jù)傳輸,要求傳輸延時(shí)短。同步傳送:以固定的速率發(fā)送和接收信息,對(duì)傳輸延時(shí)非常敏感。

各種不同傳送類(lèi)型的數(shù)據(jù)包在一個(gè)幀內(nèi)傳送,一個(gè)I/O事務(wù)的數(shù)據(jù)包可在一個(gè)或若干個(gè)幀內(nèi)傳送。同步傳送和中斷傳送屬于周期傳送,傳送時(shí)間之和不得超過(guò)一幀的90%時(shí)間,控制傳送和批傳送屬于非周期性傳送,其時(shí)間總和一般不得超過(guò)一幀的10%時(shí)間。第五十二頁(yè),共八十七頁(yè),2022年,8月28日2.USB系統(tǒng)概況(續(xù))主機(jī)和設(shè)備之間的數(shù)據(jù)傳輸可視為一條信道?!鬠SB設(shè)備上電后即存在一條默認(rèn)的控制信道,該信道提供設(shè)備配置和

狀態(tài)/控制信息的傳輸;其余信道在USB設(shè)備設(shè)置完成后才會(huì)存在。 ◆一個(gè)設(shè)備可以有幾個(gè)信道。信道有兩種類(lèi)型:消息信道和流通道。◆消息信道上傳送的數(shù)據(jù)都是有格式的,符合USB定義的數(shù)據(jù)結(jié)構(gòu),用

于控制傳送(傳送控制命令和狀態(tài)信息)?!袅魍ǖ纻魉偷臄?shù)據(jù)沒(méi)有格式,是單向傳輸,用于同步傳送、中斷傳送

和批傳送。對(duì)傳送進(jìn)行安排可對(duì)流通道實(shí)現(xiàn)流控功能。流控機(jī)制允許靈活的任務(wù)安排,使不同性質(zhì)的流傳送同時(shí)正常工作,多種流通道在不同的時(shí)間間隔傳送不同大小的數(shù)據(jù)包。

第五十三頁(yè),共八十七頁(yè),2022年,8月28日3.USB使用

使用USB需要主機(jī)硬件、操作系統(tǒng)和外設(shè)三個(gè)方面支持。

◆當(dāng)前微機(jī)都采用支持USB功能的芯片組,因此主板上有USB接口插座;◆Windows98~WindowsXP等操作系統(tǒng)都提供USB功能;

◆現(xiàn)在USB外設(shè)越來(lái)越多,如移動(dòng)硬盤(pán)、閃存盤(pán)(MP3/MP4)、數(shù)字相

機(jī)、數(shù)字游戲桿、掃描儀、打印機(jī)、鍵盤(pán)、鼠標(biāo)……USB設(shè)備可插在微機(jī)上任意USB端口內(nèi)。使用USBHub還可以級(jí)連擴(kuò)展端口,接入更多的USB設(shè)備。但級(jí)連最多5級(jí),擴(kuò)展連接距離不得超過(guò)30m,一臺(tái)主機(jī)最多可連127臺(tái)USB設(shè)備(包括Hub)。在系統(tǒng)運(yùn)行中,可隨時(shí)插入或拔下USB設(shè)備。

◆插入U(xiǎn)SB設(shè)備,系統(tǒng)會(huì)自動(dòng)檢測(cè)到該硬件并完成對(duì)它的設(shè)置,不需要

關(guān)閉和重新啟動(dòng)系統(tǒng)。

早期的Windows98稍稍麻煩一點(diǎn),系統(tǒng)會(huì)彈出一個(gè)窗口提示用戶(hù)安裝

或選擇該設(shè)備的驅(qū)動(dòng)程序,用戶(hù)在系統(tǒng)提示下一步步操作即可。

◆拔下USB設(shè)備,也不會(huì)對(duì)系統(tǒng)中其它的設(shè)備和運(yùn)行的程序產(chǎn)生影響。

第五十四頁(yè),共八十七頁(yè),2022年,8月28日7.4.2USB通信的層次結(jié)構(gòu)及其功能

1.分層連接及層間數(shù)據(jù)流從邏輯連接上看,USB是個(gè)星型網(wǎng)絡(luò),主機(jī)是該網(wǎng)絡(luò)的中心,從它出發(fā)連接著各個(gè)USB設(shè)備。

USB主機(jī)又可分為三層:客戶(hù)層、USB系統(tǒng)層、主機(jī)控制層,如下圖所示。

第五十五頁(yè),共八十七頁(yè),2022年,8月28日1.分層連接及層間數(shù)據(jù)流(續(xù))(1)客戶(hù)層客戶(hù)層處在USB主機(jī)的最高層,面向客戶(hù)提供各種設(shè)備驅(qū)動(dòng)程序。

為屏蔽設(shè)備的硬件細(xì)節(jié),實(shí)現(xiàn)透明通信,USB引入了信道概念:將客戶(hù)層到應(yīng)用功能層(USB設(shè)備的最高層)之間的邏輯連接視為信道。從信道取數(shù)據(jù),即從設(shè)備輸入數(shù)據(jù)到客戶(hù)(層);往信道送數(shù)據(jù),即從客戶(hù)(層)輸出數(shù)據(jù)到設(shè)備。(2)USB系統(tǒng)層USB系統(tǒng)層是整個(gè)USB的管理中樞,由三部分組成:HCD(HostControllDriver:主機(jī)控制驅(qū)動(dòng)器)、USBD(USBDriver:USB驅(qū)動(dòng)器)和主機(jī)軟件。

◆USB系統(tǒng)可能有多個(gè)不同的主機(jī)控制器,HCD將具體的不同的主機(jī)控制器映像到

USB系統(tǒng),屏蔽掉主機(jī)控制器細(xì)節(jié),提供統(tǒng)一的HCDI(HCDInterface:HCD接口)

給USBD。

◆在USB系統(tǒng)層內(nèi),USBD處于HCD之上,面向客戶(hù)層提供USBDI(USBDInterface:

USBD接口),支持客戶(hù)的數(shù)據(jù)傳輸、設(shè)備配置等請(qǐng)求。

◆主機(jī)軟件也面向客戶(hù),是可選的,主機(jī)軟件接受客戶(hù)的命令,并將其轉(zhuǎn)換成USBDI

所要求的標(biāo)準(zhǔn)格式,交由USBD執(zhí)行,從而進(jìn)一步屏蔽了USBDI細(xì)節(jié),方便客戶(hù)操作。(3)主機(jī)控制器層主機(jī)控制器是主機(jī)上的總線(xiàn)接口,完成主機(jī)與設(shè)備之間的電氣連接和協(xié)議匹配??偩€(xiàn)控制器在串行的電纜線(xiàn)上生成1ms周期的幀,將發(fā)送的數(shù)據(jù)組織成包發(fā)往總線(xiàn),或接收總線(xiàn)上的數(shù)據(jù)包轉(zhuǎn)換成并行數(shù)據(jù)送往緩沖區(qū),并對(duì)傳輸錯(cuò)誤進(jìn)行處理,等等。

第五十六頁(yè),共八十七頁(yè),2022年,8月28日2.主機(jī)控制器HC及其功能

USB主機(jī)控制器位于USB層次結(jié)構(gòu)的最低層,其主要功能如下。(1)幀生成USB總線(xiàn)在時(shí)間上由周期為1ms的幀組成。每幀開(kāi)始由幀起始包SOF標(biāo)識(shí),主機(jī)控制器以1mS為周期產(chǎn)生SOF包。SOF包具有訪問(wèn)總線(xiàn)的最高優(yōu)先權(quán),在SOF包期間,總線(xiàn)上的其它一切活動(dòng)都停止。SOF包還用于主機(jī)與設(shè)備之間的同步。(2)并-串轉(zhuǎn)換USB數(shù)據(jù)傳輸在主機(jī)數(shù)據(jù)緩沖區(qū)與USB設(shè)備之間進(jìn)行。

主機(jī)數(shù)據(jù)緩沖區(qū)的數(shù)據(jù)是以字節(jié)為基本單位的并行數(shù)據(jù),在向設(shè)備輸出數(shù)據(jù)時(shí),主機(jī)控制器HC必須將并行數(shù)據(jù)轉(zhuǎn)換成串行格式送上USB電纜,形成比特流串行傳送。反之從設(shè)備輸入數(shù)據(jù)時(shí),HC必須將串行的比特流轉(zhuǎn)換成并行格式送往數(shù)據(jù)緩沖區(qū)存儲(chǔ)。若USB設(shè)備是并行設(shè)備,通信時(shí)設(shè)備端的串-并轉(zhuǎn)換由USB設(shè)備自身控制邏輯完成。(3)定義數(shù)據(jù)格式、插入?yún)f(xié)議信息定義、設(shè)置主機(jī)與設(shè)備之間數(shù)據(jù)通信的具體格式。HC向輸出的數(shù)據(jù)中插入?yún)f(xié)議信息,比如地址、CRC校驗(yàn)碼等。(4)處理傳輸錯(cuò)誤在傳輸過(guò)程中出現(xiàn)超時(shí)錯(cuò)、CRC校驗(yàn)錯(cuò)、位插入錯(cuò)、協(xié)議錯(cuò)等錯(cuò)誤時(shí),主機(jī)控制器必須能檢測(cè)到并做相應(yīng)處理

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論