嵌入式系統(tǒng)實(shí)時(shí)性的問題
3 嵌入式系統(tǒng)的實(shí)時(shí)性分析
3.1 嵌入式系統(tǒng)實(shí)時(shí)性的出發(fā)點(diǎn)
嵌入式系統(tǒng)由于是嵌入到對(duì)象體系中的一個(gè)電子系統(tǒng),與對(duì)象系統(tǒng)密切相關(guān)。而形形色色的對(duì)象系統(tǒng)會(huì)有不同的響應(yīng)時(shí)間ta要求,如動(dòng)態(tài)信號(hào)的采集系統(tǒng)、生產(chǎn)線的控制單元等,有嚴(yán)格的響應(yīng)時(shí)間要求;超市的秤重、計(jì)量、收銀機(jī)只要求有盡快的響應(yīng)時(shí)間;在同樣的動(dòng)態(tài)信號(hào)采集系統(tǒng)中系統(tǒng)的響應(yīng)時(shí)間與信號(hào)的動(dòng)態(tài)特性有關(guān)。這些不同的嵌入式應(yīng)用系統(tǒng)的不同響應(yīng)要求,表現(xiàn)了嵌入對(duì)象響應(yīng)要求(ta)的多樣性。
嵌入式應(yīng)用系統(tǒng)的激勵(lì)-運(yùn)行-響應(yīng)特性,形成了以軟件運(yùn)行時(shí)間ts為主要內(nèi)容的系統(tǒng)響應(yīng)能力T。而軟件運(yùn)行時(shí)間ts與指令速度、編程技巧、程序優(yōu)化等有關(guān),是一個(gè)在應(yīng)用系統(tǒng)設(shè)計(jì)中可以改變的參數(shù),它表現(xiàn)了嵌入式應(yīng)用系統(tǒng)實(shí)時(shí)能力的可變更性。
因此,ta的多樣性要求與響應(yīng)時(shí)間ts的可調(diào)整性,是嵌入式系統(tǒng)的實(shí)時(shí)性分析的基本出發(fā)點(diǎn)。根據(jù)嵌入對(duì)象ta的不同要求,調(diào)整、變更ts大小,以實(shí)現(xiàn)ts的最佳化,是嵌入式系統(tǒng)實(shí)時(shí)性設(shè)計(jì)的一項(xiàng)重要內(nèi)容。
3.2 嵌入式系統(tǒng)的實(shí)時(shí)性分析
(1)實(shí)時(shí)性與快速性
嵌入式系統(tǒng)的實(shí)時(shí)性不是一個(gè)快速性概念,而是一個(gè)等式概念,即能否滿足ts≤ta的要求。因而,快速系統(tǒng)不一定能滿足系統(tǒng)的實(shí)時(shí)性要求,而某些情況下滿足實(shí)時(shí)性要求時(shí),系統(tǒng)的運(yùn)行速度并不高。例如,滿足溫度采集實(shí)時(shí)性要求的嵌入式系統(tǒng),運(yùn)行速度并不高;而許多高速運(yùn)行的系統(tǒng),未必能滿足沖擊振動(dòng)的信號(hào)采集的實(shí)時(shí)性要求??焖傩灾环从沉讼到y(tǒng)的實(shí)時(shí)能力而已。
(2)系統(tǒng)的最佳實(shí)時(shí)
快速性是系統(tǒng)實(shí)時(shí)能力的表現(xiàn)。當(dāng)系統(tǒng)不能滿足實(shí)時(shí)性要求時(shí),必須提高系統(tǒng)的運(yùn)行速度,然而,運(yùn)行速度的提高必然帶來系統(tǒng)的一些負(fù)面效應(yīng),如導(dǎo)致系統(tǒng)功耗加大、電磁兼容性下降。因此,在設(shè)計(jì)一個(gè)具體的嵌入式系統(tǒng)時(shí),在保證能滿足實(shí)時(shí)性要求的條件下,應(yīng)使系統(tǒng)的運(yùn)行速度降到最低,以滿足系統(tǒng)在功耗、可靠性、電磁兼容性方面獲得最佳的綜合品質(zhì)。
(3)系統(tǒng)的實(shí)時(shí)性分配
在一個(gè)嵌入式應(yīng)用系統(tǒng)中,有許多過程環(huán)節(jié)。例如,一個(gè)典型的智能儀表就有信號(hào)采集、數(shù)據(jù)處理、結(jié)果顯示、鍵盤輸入等過程。這些過程往往是在不同的時(shí)間與空間上進(jìn)行,而且不同過程的實(shí)時(shí)性要求是不同的。鍵盤輸入、結(jié)果顯示是與人交互的,要滿足人機(jī)交互的實(shí)時(shí)性要求;信號(hào)采集與對(duì)象系統(tǒng)信號(hào)的動(dòng)態(tài)性密切相關(guān),必須滿足由動(dòng)態(tài)信號(hào)采集的實(shí)時(shí)性要求;而數(shù)據(jù)處理則會(huì)形成從動(dòng)態(tài)信號(hào)采集到結(jié)果顯示的時(shí)間延遲,影響到結(jié)果顯示的實(shí)時(shí)性要求。因此一個(gè)優(yōu)秀的實(shí)時(shí)系統(tǒng)設(shè)計(jì),必須研究系統(tǒng)中的每一個(gè)過程環(huán)節(jié),滿足每一個(gè)過程環(huán)節(jié)和整個(gè)系統(tǒng)的最佳實(shí)時(shí)要求。
3.3 實(shí)時(shí)系統(tǒng)的動(dòng)態(tài)誤差
當(dāng)我們研究嵌入式應(yīng)用系統(tǒng)的實(shí)時(shí)性時(shí),與對(duì)象系統(tǒng)相關(guān)的過程,必然是一個(gè)動(dòng)態(tài)過程,否則便不存在實(shí)時(shí)性問題。對(duì)于任何動(dòng)態(tài)過程,由于時(shí)間的滯后,都不可能完全重現(xiàn)原過程,這之間的差異便是動(dòng)態(tài)過程的動(dòng)態(tài)誤差。例如,對(duì)于一個(gè)動(dòng)態(tài)信號(hào)的數(shù)據(jù)進(jìn)行采集時(shí),在時(shí)間點(diǎn)t上啟動(dòng)采集命令,由于要執(zhí)行一系列控制指令,產(chǎn)生Δtm滯后;另外,A/D轉(zhuǎn)換器有一個(gè)轉(zhuǎn)換過程,產(chǎn)生Δtc滯后。由于這些時(shí)間滯后,致使在時(shí)間點(diǎn)t上采集的數(shù)據(jù),實(shí)際上是時(shí)間點(diǎn)t+Δtm+Δtc上的信號(hào)數(shù)據(jù).兩者之差便是系統(tǒng)中數(shù)據(jù)采集的動(dòng)態(tài)誤差。在A/D轉(zhuǎn)換中,常常會(huì)加入一個(gè)采樣/保持電路,就是為了在Δtc窗口上,使動(dòng)態(tài)信號(hào)值保持在Δtc的初始時(shí)間點(diǎn)上不變,使得信號(hào)值的變化只滯后t+Δtm,以減少動(dòng)態(tài)誤差。
由于系統(tǒng)在動(dòng)態(tài)過程中控制的滯后,形成了某個(gè)任務(wù)環(huán)節(jié)上的動(dòng)態(tài)誤差,這個(gè)動(dòng)態(tài)誤差在對(duì)象系統(tǒng)的具體動(dòng)態(tài)過程確定后,與動(dòng)態(tài)過程的變化速率有關(guān)。在對(duì)象系統(tǒng)一個(gè)具體的動(dòng)態(tài)過程確定之后,應(yīng)根據(jù)對(duì)象動(dòng)態(tài)過程的變化率和允許的動(dòng)態(tài)誤差值,估算出系統(tǒng)的允許滯后時(shí)間,這一時(shí)間就是應(yīng)用系統(tǒng)中實(shí)現(xiàn)該動(dòng)態(tài)過程實(shí)時(shí)性要求的響應(yīng)時(shí)間ta。例如,在某一個(gè)動(dòng)態(tài)電壓信號(hào)數(shù)據(jù)采集中,信號(hào)的最大變化速率為0.1V/ms,只考慮采集控制滯后的誤差因素時(shí),如該信號(hào)電壓給定的誤差應(yīng)為1mV,就可以最粗略地估算出滿足實(shí)練數(shù)據(jù)采集任務(wù)的響應(yīng)時(shí)間ta要求,ta=1mV/(100mV/1ms)=0.01ms。如果系統(tǒng)的數(shù)據(jù)采集時(shí)間耗費(fèi)ts能滿足ts≤ta這一要求,系統(tǒng)就能實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)采集。
4 嵌入式應(yīng)用系統(tǒng)的實(shí)時(shí)性設(shè)計(jì)
4.1 系統(tǒng)的實(shí)時(shí)性問題分析
由于嵌入式系統(tǒng)是嵌入到對(duì)象體系中的專用計(jì)算機(jī)應(yīng)用系統(tǒng),實(shí)現(xiàn)對(duì)象體系的智能化控制,因此,都存在著對(duì)象體系對(duì)控制過程的時(shí)間要求,與嵌入式系統(tǒng)能否滿足這一要求的實(shí)時(shí)性問題。在很多情況下,應(yīng)用系統(tǒng)設(shè)計(jì)中沒有涉及實(shí)時(shí)性設(shè)計(jì),這是因?yàn)槟壳坝?jì)算機(jī)已有可觀的運(yùn)行速度,在大多數(shù)應(yīng)用系統(tǒng)中,都能滿足 T≈ts≤ta,因此,在一般應(yīng)用系統(tǒng)設(shè)計(jì)中,實(shí)時(shí)性設(shè)計(jì)并不突出。
通常,由于嵌入式系統(tǒng)實(shí)現(xiàn)的是對(duì)象系統(tǒng)的全面智能化控制,系統(tǒng)中會(huì)有許多相關(guān)的任務(wù)與過程。例如,一個(gè)數(shù)據(jù)采集系統(tǒng)不只是要實(shí)現(xiàn)對(duì)對(duì)象系統(tǒng)環(huán)境參數(shù)的采集,還要對(duì)采得的信號(hào)數(shù)據(jù)進(jìn)行處理,對(duì)處理結(jié)果進(jìn)行存儲(chǔ)、顯示,或?qū)崿F(xiàn)對(duì)外部環(huán)境的控制輸出,在這些進(jìn)程中,還可能有人工的外界干預(yù)等。因此,一個(gè)實(shí)時(shí)的嵌入式應(yīng)用系統(tǒng),應(yīng)該在所有的過程中都能滿足T≈ts≤ta要求。由于系統(tǒng)中每個(gè)過程所要求的響應(yīng)時(shí)間ta不同,例如,對(duì)對(duì)象系統(tǒng)環(huán)境參數(shù)采集時(shí),時(shí)間響應(yīng)要求決定于被采集參數(shù)的動(dòng)態(tài)特性;控制輸出時(shí)則取決了被控對(duì)象的控制品質(zhì)要求;信號(hào)數(shù)據(jù)處理、存儲(chǔ),雖然表現(xiàn)為快速響應(yīng)的期望要求,但占用了從激勵(lì)輸入到響應(yīng)輸出的中間環(huán)節(jié)。對(duì)這些環(huán)節(jié)的響應(yīng)時(shí)間要求,必須納入相關(guān)的任務(wù)中考慮。
因此,系統(tǒng)的實(shí)時(shí)性設(shè)計(jì)首先體現(xiàn)在應(yīng)用系統(tǒng)總體設(shè)計(jì)中,要在總體設(shè)計(jì)中列出有實(shí)時(shí)性要求的任務(wù),以及這些任務(wù)所要求的響應(yīng)時(shí)間ta(如果所有任務(wù)的響應(yīng)時(shí)間要求都是期望要求,則該應(yīng)用系統(tǒng)不是一個(gè)實(shí)時(shí)的應(yīng)用系統(tǒng)),然后考慮應(yīng)用系統(tǒng)在實(shí)現(xiàn)這些任務(wù)時(shí),必須耗費(fèi)的時(shí)間ts。如果應(yīng)用系統(tǒng)中所有的任務(wù)過程都能滿足ts≤ta,則該應(yīng)用系統(tǒng)是一個(gè)本質(zhì)性實(shí)時(shí)系統(tǒng)。由于在考慮每個(gè)任務(wù)所必須耗費(fèi)的時(shí)間ts時(shí),與使用的程序設(shè)計(jì)語言(是匯編還是高級(jí)語言)、程序應(yīng)用環(huán)境(是否使用操作系統(tǒng))、硬件環(huán)境(時(shí)鐘系統(tǒng)、指令系統(tǒng)、CPU時(shí)序等)有關(guān),因此本質(zhì)性實(shí)時(shí)系統(tǒng)的實(shí)時(shí)性與所系統(tǒng)使用的軟硬件平臺(tái)有關(guān)。
評(píng)論