一、串行通信口的物理特性
對單片機的通信性能可以從通信接口性能和軟件處理能兩個方面進行考慮。通信接口性能主要表現(xiàn)在與通信有關(guān)的電路物理性能上;而軟件處理性能則與單片機的指令系統(tǒng)和CPU性能直接有關(guān),所以,軟件處理性能可以用單片機的固件特性來表示。
單片機串行通信接口一般分為兩種,一種是同步串行通信接口(SPI),另一種是異步串行通信接口(SCI)。SPI具有串行通信速度高的特點,但一般需要1條發(fā)送和1條接收串行數(shù)據(jù)通信線、1條通信目標選擇線和1條同步時鐘線,一共需要4條通信線(占用單片機的4個I/O引腳)。SOC雖然數(shù)據(jù)傳輸速度低于SPI,但一般只需要2條數(shù)據(jù)線和1條地線即可,也就是只需要3根通信線(占用單片機的3個引腳)。
SPI和SCI串行通信接口的基本電路結(jié)構(gòu)如圖1和圖2所示。
從圖中可以看到SPI和SCI的物理結(jié)構(gòu)有很大差別:SPI的通信速率和信號接收正確率由時鐘和接口物理特性決定;SCI的通信速率和信號接收正確率由物理接口和時鐘分頻率決定。
通信接口接收的是數(shù)字電平信號,因此,存在電平判別的問題。如果輸入電路的物理特性對輸入電平波形有影響,則會直接影響接收信號的正確性。因此,要求接收和發(fā)送電路的物理特性必須滿足波形的要求。
通信息的物理特性還與通信介質(zhì)和連接狀態(tài)有關(guān)。圖3是通信接口電路和驅(qū)動電路之間的待效電路圖。
當數(shù)據(jù)傳輸速率遠小于電路電壓跟蹤速度時,可認為每一位數(shù)據(jù)的電平保護足夠長的時間。根據(jù)圖3可以得到輸出和輸入信號的階段響應(yīng):
u=U(1-e-at)(1)
式中,u是數(shù)字信號高電平,a=1/[R(C1+C2)]是上升時間常數(shù)。圖4是數(shù)字信號受到分布參數(shù)影響后的波形。
根據(jù)式(1)可知,在5V電源電壓條件下,通信信號電平幅度上升到判別電壓幅度(TTL高電平或CMOS高電平)所需時間是T=-R(C1+C2)ln0.46(對TTL電路)或T=-R(C1+C2)ln0.72(對CMOS電路)。如果信號的波特率為fb,為確保正確接收,信號上升時間應(yīng)當為信號脈沖寬度的1/4~1/10。
由此,當數(shù)字信號為TTL電平時,要求單片機接口電路的分布參數(shù)范圍是
當數(shù)字系統(tǒng)為CMOS電平時,要求單片機接口電路的分布參數(shù)范圍是
如果單片機的物理分布參數(shù)已經(jīng)確定,則式(2)和式(3)就是最高通信速率的限制條件。
通過以上分析可以看出,單片機通信接口的物理特性對通信性能直接影響,主要反映在接口電路分布參數(shù)對數(shù)字信號波形的影響,進而引起接口電平判別失誤。
二、單片機串行通信接口的固件特性
所謂單片機串行通信接口的固件特性,是指單片機串行通信接口的控制和支持硬件在串行通信時所具有技術(shù)特性。固件特性包括兩個方面問題,一個方面是軟件行為對硬件的要求條件,另一個是硬件電路所能提供的結(jié)構(gòu)和功能特性。
1.單片機通信接口功能的控制方式
單片機串行通信接口功能的控制是在單片機內(nèi)部硬件結(jié)構(gòu)支持下的軟件操作。單片機是面向寄存器的工作方式,因此,對于通信接口的控制是通過一系列的寄存器操作實現(xiàn)的。基本控制步驟如下:
。1)設(shè)置必要參數(shù)(如通信速率、時鐘源、終端方式等);
。2)設(shè)置數(shù)據(jù)結(jié)構(gòu)(對于異步通信口);
。3)通過向發(fā)送寄存器寫入數(shù)據(jù),啟動發(fā)送/接收——讀取數(shù)據(jù)。
每一次通信(發(fā)送一個字節(jié))都需要重復最后一個步驟。
由此可知,單片機串行通信接口寄存器的操作會直接影響通信接口的功能和性能。由于單片機的每一步驟操作都是執(zhí)行1條指令,所以,單片機串行通信的真正發(fā)送時間,是向發(fā)送寄存器寫數(shù)據(jù)指令結(jié)束的時刻。
2.單片機串行通信接口基本固件特性
單片機串行通信接口一般包括發(fā)送數(shù)據(jù)、接收數(shù)據(jù)、發(fā)送時鐘、接收時鐘、線路監(jiān)測、碰撞處理、波特率設(shè)置、幀結(jié)構(gòu)設(shè)備等。這些固件的特性有一個共同的特點,就是全部以寄存器為操作對象,并在每一個操作指令結(jié)束時執(zhí)行寄存器操作,通過寄存器的輸出電路實現(xiàn)相應(yīng)的功能。由此可知,寄存器操作的特性,就是單片機串行通信接口固件的特性。
。1)次序固定的固件特性。單片機串行以通信接口操作中,必須先進行相應(yīng)的設(shè)置,才能實施通信。這種固定的次序是單片機串行通信接口的重要固件特性,如果忽略了這種次序特性,必然會導致通信失敗。
。2)協(xié)議相關(guān)的固件特性。通信協(xié)議是有效利用單片機串行通信接口的基本保證之一。如果在單片機的通信協(xié)議執(zhí)行過程中出現(xiàn)問題,則通信功能就會喪失。
。3)隱含協(xié)調(diào)性。所謂隱含協(xié)調(diào)性指隱含在通信指令集中的協(xié)議規(guī)定,如發(fā)送方與接收方的等待協(xié)議規(guī)定等。
由此,可以把單片機的固件特性用3個不同集合之交表示:設(shè)有通信接口的操作次序集合A、相關(guān)協(xié)議集合B和隱含規(guī)約集合C。A中的每一個元素都是一種正確的通信接口操作次序;B中每一個元素都是一種體現(xiàn)相關(guān)協(xié)議的通信接口操作要求;C中每一個元素都是一種隱含規(guī)約,則符合要求的通信接口控制固件必然是三者之交:
Y=A∩B∩C(4)
由此可知,要檢查單片機串行通信接口的基本固件特性,可以使用式(2)進行判別;如果不能滿足式(2),就表明單片機串行通信接口的固件特性有問題,會引起通信失效。
三、單片機通信性能分析
上述對單片機串行通信接口的物理特性和因件特性的分析,提供了單片機通信性能分析的基礎(chǔ)。單片機通信性能分析包括比特吞吐特性分析、有效性分析和數(shù)據(jù)安全性分析。
1.比特吞吐特性分析
比特吞吐特性,是指單片機執(zhí)行通信任務(wù)時單位時間內(nèi)發(fā)送和接收的比特數(shù)目。比特吞吐特性不能用串行特性的波特率代替。比特吞特性不僅與波特率有關(guān),更與單片機的固件特性有關(guān)。不同的通信協(xié)議會引起不同的通信操作,形成不同的操作固件。這種固件操作的有效性才是決定比特吞吐特性的關(guān)鍵。
在處理一組數(shù)據(jù)時,設(shè)通信協(xié)議處理數(shù)據(jù)的時間為tp,串行通信發(fā)送數(shù)據(jù)的時間為tc,則總的通信時間為t=tp+tc,因此,串行通信接口的比特吞吐特性可用如下函數(shù)表示:
ξ=fctc/(tp+tc)(5)
式中,ξ叫做比特吞吐系數(shù),fc是固件設(shè)備的串行通信波特率?梢,在fc固定的條件下,要提高比特吞吐特性,就必須盡量減少tp+tc并增加tc。在tp=0這種極端情況下,比特吞吐系數(shù)才能等于通信波特率。
利用比特吞吐系數(shù)可以方便地檢查單片機的串行通信能力能否滿足應(yīng)用系統(tǒng)的要求。例如,應(yīng)用系統(tǒng)要求每秒鐘內(nèi)傳輸10個字節(jié)數(shù)據(jù),相當于要求每秒鐘的比特吞吐系數(shù)為80K。這里K是數(shù)據(jù)幀格式有效系數(shù):異步串行通信中K>1;同步串行通信中K=1。根據(jù)這個要求,可以對應(yīng)用系統(tǒng)所設(shè)計的軟件結(jié)構(gòu)進行核實,如果不能滿足,則說明應(yīng)用系統(tǒng)不能滿足對通信的要求,必須進行調(diào)整。
2.有效性分析
所謂有效性,是指對包括通信協(xié)議在內(nèi)的整個通信過程的有效性。設(shè)單片機應(yīng)用系統(tǒng)發(fā)送和接收的控制信息數(shù)據(jù)是隨機函數(shù)y=P(x),其中x代表單位時間內(nèi)的數(shù)據(jù)傳輸量。Y的數(shù)據(jù)期望是:
σ=E[y]=E[P(x)](6)
σ叫做單片機串行通信系統(tǒng)的數(shù)據(jù)傳輸有效性系數(shù)。顯然,在滿足應(yīng)用系統(tǒng)功能的前提下,σ的值小,說明數(shù)據(jù)傳輸?shù)挠行愿;反之,系統(tǒng)數(shù)據(jù)傳輸量大,說明系數(shù)控制信息的有效性差。必須注意,這里只考慮控制信息,并不包括必要的數(shù)據(jù)采集。
有效性分析就是要根據(jù)系數(shù)數(shù)據(jù)傳輸?shù)碾S機分布,估計系統(tǒng)數(shù)據(jù)的有效性。可以直接利用有效性系數(shù)作為檢驗的標準。
此外,數(shù)據(jù)識別率也是衡量單片機通信效果和應(yīng)用系統(tǒng)固件特性的一種重要參數(shù)。
數(shù)據(jù)識別率是指對接收到的數(shù)據(jù)語義理解的速度。設(shè)單片機接收到能代表完整意義的X個字節(jié)所需要的時間是tx,語義理解(翻譯和判別)需要的時間為tY,則數(shù)據(jù)識別率為
η=X/(tx+ty)(7)
數(shù)據(jù)識別率表示了單位時間內(nèi)單片機通信的效果,η值越大,表明單片機的整體固件特性越好,通信效率越高。
3.數(shù)據(jù)完全性
數(shù)據(jù)安全性不僅與系統(tǒng)的串行通信物理特征有關(guān),更主要的是與應(yīng)用系統(tǒng)通信的固件特性有關(guān),尤其是通信協(xié)議中的應(yīng)用層,直接關(guān)系系統(tǒng)的數(shù)據(jù)安全。
數(shù)據(jù)安全性可以用通信穩(wěn)定性和數(shù)據(jù)識別率表示。
通信穩(wěn)定性與通信線路和物理接口的侵入和干擾狀態(tài)有關(guān)。對于單片機通信系統(tǒng)來說,當多個單片機采用串行連接的方法連接在1條總線上時,通信線路的侵入狀態(tài)由通信協(xié)議直接確定。如使用令牌通信方式時,基本上沒有侵入狀態(tài);但如果用客戶/服務(wù)器方式,侵入狀態(tài)將隨線路上單片機數(shù)量的增加而惡化。這是比較復雜的通信系統(tǒng)行為特性分析問題,本文不再分析。
結(jié)論
本文對單片機通信接口的物理特性和固件特性進行了分析。指出了確定物理接口電路分布參數(shù)的分析方法,并導出了在不考慮傳輸線電感(PCB板)條件下電路分布參數(shù)與保證通信可靠條件之間的關(guān)系計算公式。這些計算表明,接口電路的分布參數(shù)是限制通信速度的主要因素之一。
通信接口控制的固件特性對單片機通信性能有重要影響。通信接口控制的固件特性需要用通信接口操作次序集合A、相關(guān)協(xié)議集合B和隱含規(guī)約集合C的交集進行檢查。選擇一組合適的固件結(jié)構(gòu)組合,以保證通信系統(tǒng)通信接口控制性能固件的正確性。
對單片機通信性能評價時,可以使用本文提出的單片機通信性能分析參數(shù)。這些參數(shù)是比特吞吐系數(shù)ξ、數(shù)據(jù)傳輸有效性系數(shù)σ和數(shù)據(jù)識別率η。利用這些參數(shù),可以定量地對單片機通信特性進行分析,同時也中以利用這些參數(shù)進行單片機的選擇和應(yīng)用系統(tǒng)設(shè)計。
必須指出,單片機通信系統(tǒng)的安全特性也是一個重要的應(yīng)用基礎(chǔ),限于篇幅本文不再討論。
來源:網(wǎng)絡(luò)整理 免責聲明:本文僅限學習分享,如產(chǎn)生版權(quán)問題,請聯(lián)系我們及時刪除。