微控制器通訊效能探究專業論文
微控制器通訊效能探究專業論文
一、序列通訊口的物理特性
對微控制器的通訊效能可以從通訊介面效能和軟體處理能兩個方面進行考慮。通訊介面效能主要表現在與通訊有關的電路物理效能上;而軟體處理效能則與微控制器的指令系統和CPU效能直接有關,所以,軟體處理效能可以用微控制器的韌體特性來表示。
微控制器序列通訊介面一般分為兩種,一種是同步序列通訊介面(SPI),另一種是非同步序列通訊介面(SCI)。SPI具有序列通訊速度高的特點,但一般需要1條傳送和1條接收序列資料通訊線、1條通訊目標選擇線和1條同步時鐘線,一共需要4條通訊線(佔用微控制器的4個I/O引腳)。SOC雖然資料傳輸速度低於SPI,但一般只需要2條資料線和1條地線即可,也就是隻需要3根通訊線(佔用微控制器的3個引腳)。
SPI和SCI序列通訊介面的基本電路結構如圖1和圖2所示。
從圖中可以看到SPI和SCI的物理結構有很大差別:SPI的通訊速率和訊號接收正確率由時鐘和介面物理特性決定;SCI的通訊速率和訊號接收正確率由物理介面和時鐘分頻率決定。
通訊介面接收的是數字電平訊號,因此,存在電平判別的問題。如果輸入電路的物理特性對輸入電平波形有影響,則會直接影響接收訊號的正確性。因此,要求接收和傳送電路的物理特性必須滿足波形的要求。
通訊息的物理特性還與通訊介質和連線狀態有關。圖3是通訊介面電路和驅動電路之間的待效電路圖。
當資料傳輸速率遠小於電路電壓跟蹤速度時,可認為每一位資料的電平保護足夠長的時間。根據圖3可以得到輸出和輸入訊號的階段響應:
u=U(1-e-at)(1)
式中,u是數字訊號高電平,a=1/[R(C1+C2)]是上升時間常數。圖4是數字訊號受到分佈引數影響後的波形。
根據式(1)可知,在5V電源電壓條件下,通訊訊號電平幅度上升到判別電壓幅度(TTL高電平或CMOS高電平)所需時間是T=-R(C1+C2)ln0.46(對TTL電路)或T=-R(C1+C2)ln0.72(對CMOS電路)。如果訊號的波特率為fb,為確保正確接收,訊號上升時間應當為訊號脈衝寬度的1/4~1/10。
由此,當數字訊號為TTL電平時,要求微控制器介面電路的分佈引數範圍是
當數字系統為CMOS電平時,要求微控制器介面電路的分佈引數範圍是
如果微控制器的物理分佈引數已經確定,則式(2)和式(3)就是最高通訊速率的限制條件。
透過以上分析可以看出,微控制器通訊介面的物理特性對通訊效能直接影響,主要反映在介面電路分佈引數對數字訊號波形的影響,進而引起介面電平判別失誤。
二、微控制器序列通訊介面的韌體特性
所謂微控制器序列通訊介面的韌體特性,是指微控制器序列通訊介面的控制和支援硬體在序列通訊時所具有技術特性。韌體特性包括兩個方面問題,一個方面是軟體行為對硬體的要求條件,另一個是硬體電路所能提供的結構和功能特性。
1.微控制器通訊介面功能的控制方式
微控制器序列通訊介面功能的控制是在微控制器內部硬體結構支援下的軟體操作。微控制器是面向暫存器的工作方式,因此,對於通訊介面的控制是透過一系列的暫存器操作實現的。基本控制步驟如下:
(1)設定必要引數(如通訊速率、時鐘源、終端方式等);
(2)設定資料結構(對於非同步通訊口);
(3)透過向傳送暫存器寫入資料,啟動傳送/接收——讀取資料。
每一次通訊(傳送一個位元組)都需要重複最後一個步驟。
由此可知,微控制器序列通訊介面暫存器的操作會直接影響通訊介面的功能和效能。由於微控制器的每一步驟操作都是執行1條指令,所以,微控制器序列通訊的真正傳送時間,是向傳送暫存器寫資料指令結束的時刻。
2.微控制器序列通訊介面基本韌體特性
微控制器序列通訊介面一般包括髮送資料、接收資料、傳送時鐘、接收時鐘、線路監測、碰撞處理、波特率設定、幀結構裝置等。這些韌體的特性有一個共同的特點,就是全部以暫存器為操作物件,並在每一個操作指令結束時執行暫存器操作,透過暫存器的輸出電路實現相應的功能。由此可知,暫存器操作的特性,就是微控制器序列通訊介面韌體的特性。
(1)次序固定的韌體特性。微控制器序列以通訊介面操作中,必須先進行相應的設定,才能實施通訊。這種固定的次序是微控制器序列通訊介面的重要韌體特性,如果忽略了這種次序特性,必然會導致通訊失敗。
(2)協議相關的韌體特性。通訊協議是有效利用微控制器序列通訊介面的基本保證之一。如果在微控制器的通訊協議執行過程中出現問題,則通訊功能就會喪失。
(3)隱含協調性。所謂隱含協調性指隱含在通訊指令集中的協議規定,如傳送方與接收方的等待協議規定等。
由此,可以把微控制器的韌體特性用3個不同集合之交表示:設有通訊介面的操作次序集合A、相關協議集合B和隱含規約集合C。A中的每一個元素都是一種正確的通訊介面操作次序;B中每一個元素都是一種體現相關協議的通訊介面操作要求;C中每一個元素都是一種隱含規約,則符合要求的通訊介面控制韌體必然是三者之交:
Y=A∩B∩C(4)
由此可知,要檢查微控制器序列通訊介面的基本韌體特性,可以使用式(2)進行判別;如果不能滿足式(2),就表明微控制器序列通訊介面的韌體特性有問題,會引起通訊失效。
三、微控制器通訊效能分析
上述對微控制器序列通訊介面的物理特性和因件特性的分析,提供了微控制器通訊效能分析的基礎。微控制器通訊效能分析包括位元吞吐特性分析、有效性分析和資料安全性分析。
1.位元吞吐特性分析
位元吞吐特性,是指微控制器執行通訊任務時單位時間內傳送和接收的位元數目。位元吞吐特性不能用序列特性的波特率代替。位元吞特性不僅與波特率有關,更與微控制器的韌體特性有關。不同的通訊協議會引起不同的通訊操作,形成不同的操作韌體。這種韌體操作的有效性才是決定位元吞吐特性的關鍵。
在處理一組資料時,設通訊協議處理資料的時間為tp,序列通訊傳送資料的時間為tc,則總的通訊時間為t=tp+tc,因此,序列通訊介面的位元吞吐特性可用如下函式表示:
ξ=fctc/(tp+tc)(5)
式中,ξ叫做位元吞吐係數,fc是韌體裝置的序列通訊波特率。可見,在fc固定的條件下,要提高位元吞吐特性,就必須儘量減少tp+tc並增加tc。在tp=0這種極端情況下,位元吞吐係數才能等於通訊波特率。
利用位元吞吐係數可以方便地檢查微控制器的`序列通訊能力能否滿足應用系統的要求。例如,應用系統要求每秒鐘內傳輸10個位元組資料,相當於要求每秒鐘的位元吞吐係數為80K。這裡K是資料幀格式有效係數:非同步序列通訊中K>1;同步序列通訊中K=1。根據這個要求,可以對應用系統所設計的軟體結構進行核實,如果不能滿足,則說明應用系統不能滿足對通訊的要求,必須進行調整。
2.有效性分析
所謂有效性,是指對包括通訊協議在內的整個通訊過程的有效性。設微控制器應用系統傳送和接收的控制資訊資料是隨機函式y=P(x),其中x代表單位時間內的資料傳輸量。Y的資料期望是:
σ=E[y]=E[P(x)](6)
σ叫做微控制器序列通訊系統的資料傳輸有效性係數。顯然,在滿足應用系統功能的前提下,σ的值小,說明資料傳輸的有效性高;反之,系統資料傳輸量大,說明係數控制資訊的有效性差。必須注意,這裡只考慮控制資訊,並不包括必要的資料採集。
有效性分析就是要根據係數資料傳輸的隨機分佈,估計系統資料的有效性。可以直接利用有效性係數作為檢驗的標準。
此外,資料識別率也是衡量微控制器通訊效果和應用系統韌體特性的一種重要引數。
資料識別率是指對接收到的資料語義理解的速度。設微控制器接收到能代表完整意義的X個位元組所需要的時間是tx,語義理解(翻譯和判別)需要的時間為tY,則資料識別率為
η=X/(tx+ty)(7)
資料識別率表示了單位時間內微控制器通訊的效果,η值越大,表明微控制器的整體韌體特性越好,通訊效率越高。
3.資料完全性
資料安全性不僅與系統的序列通訊物理特徵有關,更主要的是與應用系統通訊的韌體特性有關,尤其是通訊協議中的應用層,直接關係系統的資料安全。
資料安全性可以用通訊穩定性和資料識別率表示。
通訊穩定性與通訊線路和物理介面的侵入和干擾狀態有關。對於微控制器通訊系統來說,當多個微控制器採用序列連線的方法連線在1條總線上時,通訊線路的侵入狀態由通訊協議直接確定。如使用令牌通訊方式時,基本上沒有侵入狀態;但如果用客戶/伺服器方式,侵入狀態將隨線路上微控制器數量的增加而惡化。這是比較複雜的通訊系統行為特性分析問題,本文不再分析。
結論
本文對微控制器通訊介面的物理特性和韌體特性進行了分析。指出了確定物理介面電路分佈引數的分析方法,並匯出了在不考慮傳輸線電感(PCB板)條件下電路分佈引數與保證通訊可靠條件之間的關係計算公式。這些計算表明,介面電路的分佈引數是限制通訊速度的主要因素之一。
通訊介面控制的韌體特性對微控制器通訊效能有重要影響。通訊介面控制的韌體特性需要用通訊介面操作次序集合A、相關協議集合B和隱含規約集合C的交集進行檢查。選擇一組合適的韌體結構組合,以保證通訊系統通訊介面控制性能韌體的正確性。
對微控制器通訊效能評價時,可以使用本文提出的微控制器通訊效能分析引數。這些引數是位元吞吐係數ξ、資料傳輸有效性係數σ和資料識別率η。利用這些引數,可以定量地對微控制器通訊特性進行分析,同時也中以利用這些引數進行微控制器的選擇和應用系統設計。
必須指出,微控制器通訊系統的安全特性也是一個重要的應用基礎,限於篇幅本文不再討論。