用Stood進(jìn)行架構(gòu)設(shè)計_第1頁
用Stood進(jìn)行架構(gòu)設(shè)計_第2頁
用Stood進(jìn)行架構(gòu)設(shè)計_第3頁
用Stood進(jìn)行架構(gòu)設(shè)計_第4頁
用Stood進(jìn)行架構(gòu)設(shè)計_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

使用Stood對安全關(guān)鍵系統(tǒng)進(jìn)行架構(gòu)設(shè)計和分析北京旋極信息技術(shù)股份有限公司《旋極視界》編輯部摘要:近年來,隨著硬件設(shè)備計算能力的提高,性能關(guān)鍵實時系統(tǒng)的規(guī)模和復(fù)雜性急劇增加,導(dǎo)致其對開發(fā)成本和非功能屬性的要求也越來越高,這對其開發(fā)中的設(shè)計合理性,驗證完備性以及開發(fā)效率等方面都帶來了挑戰(zhàn)。由 SAE等組織提出的系統(tǒng)架構(gòu)設(shè)計分析語言(ArchitectureAnalysisandDesignLanguage,AADL)是一種基于MDA方法的建模語言,可以用來設(shè)計和分析性能關(guān)鍵實時系統(tǒng)的軟硬件體系結(jié)構(gòu)。在本文中,我們通過使用Stood工具,對自動飛行系統(tǒng)進(jìn)行架構(gòu)設(shè)計,并對模型進(jìn)行可調(diào)度分析,最后對全文做了總結(jié),指出全文的優(yōu)點和不足,以及下一步研究的目標(biāo)和方向。關(guān)鍵字:性能關(guān)鍵實時系統(tǒng)MDAAADLSTOOD模型驗證可靠性分析1.引言在傳統(tǒng)的性能關(guān)鍵實時系統(tǒng)開發(fā)過程中,開發(fā)人員需要等到實際產(chǎn)品或產(chǎn)品原型,嵌入式目標(biāo)機(jī)生產(chǎn)出來之后,才能夠?qū)π阅荜P(guān)鍵實時系統(tǒng)的軟件進(jìn)行測試和驗證,在集成階段才能暴露和修復(fù)軟件和系統(tǒng)的缺陷,造成時間上的浪費和費用的增加。另外,由于缺乏對整個系統(tǒng)的體系結(jié)構(gòu)的精確預(yù)算,雖然單個功能模塊的非功能屬性相對容易實現(xiàn),但是在系統(tǒng)集成后如何滿足整個系統(tǒng)的非功能屬性對開發(fā)人員也是一個巨大的挑戰(zhàn)。要解決這些問題,可以采用MDA方法在系統(tǒng)實現(xiàn)前建立模型,在模型級對整個系統(tǒng)進(jìn)行非功能屬性的規(guī)約和驗證,消除可能的問題,降低開發(fā)成本,提高開發(fā)效率。系統(tǒng)結(jié)構(gòu)分析與設(shè)計語言(AADL)正是一種基于MDA方法的體系結(jié)構(gòu)建模語言,可應(yīng)用在監(jiān)控、航天、飛行管理、引擎和傳動系統(tǒng)控制、醫(yī)療設(shè)備、工業(yè)工藝控制設(shè)備和航空領(lǐng)域等。AADL模型并不關(guān)心具體的功能實現(xiàn),描述的僅僅是系統(tǒng)架構(gòu),從而在體系結(jié)構(gòu)級對系統(tǒng)的非功能屬性進(jìn)行規(guī)約,這樣系統(tǒng)設(shè)計者可以使用分析工具對系統(tǒng)模型的可調(diào)度性,可靠性,安全性進(jìn)行分析,通過分析,可以評估體系結(jié)構(gòu)的平衡和變化,最后將AADL模型轉(zhuǎn)換為針對特定操作系統(tǒng)的可執(zhí)行語言框架代碼,再與實現(xiàn)具體功能的功能函數(shù)相集成就可以形成符合性能關(guān)鍵屬性的可執(zhí)行代碼。通過這樣一種開發(fā)方式,整個系統(tǒng)的體系結(jié)構(gòu)由模型規(guī)約,而由于大部分代碼都是自動生成的,因此,代碼的錯誤較少,節(jié)省了大量的人力物力成本。本文給出了基于Stood的飛行控制系統(tǒng)架構(gòu)建模過程,重點介紹了自動飛行控制系統(tǒng)的模型,最后使用Stood的AADLInspector工具對模型的可調(diào)度性進(jìn)行分析。2.AADL和飛行控制系統(tǒng)概述體系結(jié)構(gòu)分析與建模語言AADL(ArchitectureAnalysisandDesignLanguage)是一種用來對性能關(guān)鍵實時嵌入式系統(tǒng)軟硬件體系結(jié)構(gòu)進(jìn)行設(shè)計與分析的文本和圖形語言,不僅能夠描述系統(tǒng)功能特征,也能描述非功能特征,甚至系統(tǒng)的動態(tài)特征。AADL能夠提供處理器、存儲器、總線以及設(shè)備等的硬件平臺建模,進(jìn)程、線程、子程序、參數(shù)、數(shù)據(jù)以及調(diào)用序列、模式轉(zhuǎn)換等的軟件平臺建模,以及軟硬件綜合建模與分析,如系統(tǒng)可調(diào)度性分析、端到端延遲分析、功耗分析、總線負(fù)載分析、資源分配分析以及優(yōu)先級反轉(zhuǎn)分析等。此外,AADL還支持對ARINC653分區(qū)、錯誤模型、多余度體系等的建模,這些面向領(lǐng)域的功能擴(kuò)展非常適合航空電子系統(tǒng)的建模。AADL的以上優(yōu)越特征使得我們選用其對飛行控制系統(tǒng)進(jìn)行了建模,并基于模型對系統(tǒng)進(jìn)行了分析。飛行控制系統(tǒng)是飛機(jī)重要的子系統(tǒng),能夠協(xié)助飛行員完成從起飛到著陸的各項任務(wù),管理,監(jiān)視和自動操縱飛機(jī)實現(xiàn)全航程的自動飛行。飛行控制集導(dǎo)航、制導(dǎo)、控制及座艙顯示于一體,其主要功能可分為飛行規(guī)劃,導(dǎo)航,性能優(yōu)化,制導(dǎo)及信息顯示。飛行控制系統(tǒng)流程如圖2所示:圖1飛行控制系統(tǒng)流程圖3.Stood對飛行控制系統(tǒng)進(jìn)行架構(gòu)設(shè)計STOOD是一種基于構(gòu)件的軟件建模工具。它涵蓋了軟件開發(fā)的各個階段,且符合DO-178B要求,支持已有C、Ada、C++等代碼的自動產(chǎn)生和重用,并支持系統(tǒng)的早期性能分析,為獲得更高的軟件質(zhì)量和軟件生產(chǎn)效率提供工具支持。STOOD提供了一個AADL圖形編輯器,可以導(dǎo)入和導(dǎo)出AADL文本模型,并且支持AADL2.0、UML2.0、HOOD三種模型的等價轉(zhuǎn)換。它不僅具有AADL解析和產(chǎn)生功能,還具有AADL模型轉(zhuǎn)換的功能,對于重用已有的STOOD技術(shù),更好地發(fā)揮AADL在開發(fā)過程中的作用具有重大意義。使用Stood對飛行控制系統(tǒng)建模過程如下:1)對公共基礎(chǔ)數(shù)據(jù)建模對基礎(chǔ)數(shù)據(jù)類型和系統(tǒng)架構(gòu)需要如飛控系統(tǒng)的數(shù)據(jù)類型,空速,位置,GPS數(shù)據(jù),INS數(shù)據(jù)等數(shù)據(jù)類型建模。Stood提供Data_Model,Base_Type,Behavior_ProPerties等通用公共數(shù)據(jù)模型文件,使用時可以直接導(dǎo)入到工程中即可,不需要再重新設(shè)計,當(dāng)然可以在已有的模型基礎(chǔ)上添加更為詳細(xì)的設(shè)計。通用數(shù)據(jù)建模示意圖如圖2所示:孔商二廿色|LD*tKjfedjd&臧卜卜 圖2通用數(shù)據(jù)建模示意圖對于飛控系統(tǒng),需要對所使用的數(shù)據(jù)類型建模,如圖3所示:白-(design)Data_Model1- Datajlodel白-(design)Data_Model1- DatajlodelEh(desigri)Hav_Typ突—Float— Integer—Lat_Long— Fosition.CommonPosition.GPS-Position.INS」CourseNavTyp^)FloaTEnteqer_at_LonqDosiTion.coFnmonCoursePosition.GPSDosition.INSIrrTeqer Pos計ion.TNSLQ~l~LonqPosiTion.CommonCourse圖3飛控系統(tǒng)數(shù)據(jù)類型示意圖圖3對應(yīng)的AADL代碼部分如下:DATALat_LongENDLat_Long;DATAIMPLEMENTATIONLat_Long.othersSUBCOMPONENTSHours:DATANav_Types::Float.others;Mins:DATANav_Types::Float.others;Secs:DATANav_Types::Float.others;ENDLat_Long.others;2)對執(zhí)行平臺建模根據(jù)業(yè)務(wù)需求對系統(tǒng)建模。把飛控系統(tǒng)劃分為界面數(shù)據(jù)輸入和顯示系統(tǒng)以及導(dǎo)航和自動駕駛系統(tǒng)。飛行員拉下手剎,飛機(jī)由手控模式轉(zhuǎn)為自動飛行模式。通過AADL系統(tǒng)構(gòu)建建立兩個子系統(tǒng),再通過構(gòu)建的特征描述設(shè)備的輸入,輸出數(shù)據(jù),事件或數(shù)據(jù)事件端口,要求的總線訪問等。Stood使用分層設(shè)計方式,第一層設(shè)計如下所示:第一層設(shè)計主要是建立系統(tǒng)的整體,使用system構(gòu)件表示,同時因為使用了基礎(chǔ)數(shù)據(jù)包,所以需要添加數(shù)據(jù)包構(gòu)件。flightfliqht_system:Fliqht_System.6enericfliqht_system:Fliqht_System.6eneric圖4系統(tǒng)頂層設(shè)計示意圖把FlightSystem分為兩個子系統(tǒng)S_HCI和S_NAP,對應(yīng)stood的system構(gòu)件,子系統(tǒng)之間通過數(shù)據(jù)端口和事件端口通信,通過總線傳輸數(shù)據(jù)。其中使用事件Auto_Pilot_Toggle實現(xiàn)子系統(tǒng)的切換。圖形顯示如下:圖5子系統(tǒng)設(shè)計示意圖顯示子系統(tǒng)S_HCI主要負(fù)責(zé)設(shè)置自動導(dǎo)航需要的數(shù)據(jù),如空速,高度,目的地,飛機(jī)當(dāng)前位置,接收自動導(dǎo)航子系統(tǒng)發(fā)送的飛機(jī)當(dāng)前數(shù)據(jù),并進(jìn)行處理,在顯示器上顯示出來。請注意,因為在實際工作中接收數(shù)據(jù),把接收到的數(shù)據(jù)按照一定的處理程序處理后在顯示器上顯示都是任務(wù),根據(jù)AADL語言的約定,我們使用線程來代表任務(wù)。根據(jù)操作系統(tǒng)的操作原理,線程是由調(diào)度器安排,執(zhí)行代碼存儲在存儲器之中,所以我們在該子系統(tǒng)中添加了處理器和存儲器構(gòu)件,并設(shè)定處理器的調(diào)度屬性,如RM,即速率優(yōu)先調(diào)度。圖6S_HCI設(shè)計示意圖導(dǎo)航和自動航行子系統(tǒng)S_NAP主要模擬飛機(jī)在自動飛行模式下動作。S_NAP根據(jù)S_HCI發(fā)送的數(shù)據(jù),根據(jù)飛機(jī)接收的傳感器數(shù)據(jù)以及GPS和INS數(shù)據(jù),來糾正飛行的航向,并根據(jù)計算的數(shù)據(jù)向制動器發(fā)送數(shù)據(jù),制動器根據(jù)接收的數(shù)據(jù)操縱飛機(jī),實現(xiàn)飛行速度,高度,航姿的改變。子系統(tǒng)設(shè)計圖如下:.NovAndAuroPilol^eneric,Sus607:/Proc_W4:PoINSLoc:INSProc;NovK,,業(yè),ItimeterAltimeter.女呼,F(xiàn)C_Proc:Fusion_And_Co<iTrol_'i沖的。\3回t>-EngineIRPMI―>MbutSensor(AitoUtlA./fiyroJTitch■_ ?1.NovAndAuroPilol^eneric,Sus607:/Proc_W4:PoINSLoc:INSProc;NovK,,業(yè),ItimeterAltimeter.女呼,F(xiàn)C_Proc:Fusion_And_Co<iTrol_'i沖的。\3回t>-EngineIRPMI―>MbutSensor(AitoUtlA./fiyroJTitch■_ ?16vroYawAileronCoMroll€f;Acfuaior.—*j?iput?P?UcTuarorAuTo_PiloTTogglePositionOuipufAirspeeaOutixjtAlntude_OufpuiRollZOutputPitch-OutputYawOutpututo_Pilot_PositionuroPilotAltirudeiTo_PiloT_Air?peed[Airspeed_Ind[Sersor.Airspeed.>tnsor_uuTpQf?-曰evaiorConiroHer!udderController.—>InpulPirch_<ly<jw_ir>dSeixsor^3<nsorOutputActuator.6S_Proc.6yro_§enor_Process£AlTiTudeTnktuator.-tiRoll_Ind■5ensor.6y,'Jdtpitr?—iAutoPilor_ToggleNOV_FQ$itfQilNav~AlTiTude—>iNavAirspeedf/Nay-RolI?iv-pitchL>eJtobelraVAutoPilotAltffucAuto_Pilot_Pi>sitioriAuTo_Pilor_AirspeeideOulf?—圖7S_NAV設(shè)計示意圖3)對子任務(wù)建模以上主要設(shè)計了飛控系統(tǒng)的基本框架,劃分了子系統(tǒng),建立了各個構(gòu)件之間的關(guān)聯(lián)和通信關(guān)系,但是對于飛控系統(tǒng)最重要的子任務(wù)還沒有進(jìn)行分析和設(shè)計。根據(jù)飛控系統(tǒng)的基本原理,對飛控任務(wù)進(jìn)行劃分。顯示處理控制分為自動駕駛輸入任務(wù)和顯示器控制顯示任務(wù)。自動駕駛輸入任務(wù)主要功能是輸入飛機(jī)航跡和操縱桿狀態(tài)。GPS和INS數(shù)據(jù)合并取舍控制分為讀取GPS傳感器數(shù)據(jù)任務(wù)T1,讀取INS傳感器數(shù)據(jù)任務(wù)T2和處理數(shù)據(jù)來自T1和T2數(shù)據(jù)任務(wù)T3。其中讀取GPS傳感器數(shù)據(jù)任務(wù)T1主要功能是從GPS傳感器中獲取數(shù)據(jù),讀取INS傳感器數(shù)據(jù)任務(wù)T2主要功能為從INS傳感器中獲取數(shù)據(jù),處理數(shù)據(jù)來自T1和T2數(shù)據(jù)任務(wù)T3主要功能為根據(jù)從INS傳感器和GPS傳感器中獲取的數(shù)據(jù),進(jìn)行取舍分析,并把數(shù)據(jù)輸出。空速管,高度表,陀螺傳感器數(shù)據(jù)處理控制分為空速管,高度表,陀螺傳感器數(shù)據(jù)讀取和處理任務(wù)其中空速管,高度表,陀螺傳感器數(shù)據(jù)讀取和處理任務(wù)主要功能是讀取傳感器數(shù)據(jù)。航姿傳感器數(shù)據(jù)處理控制劃分為自動駕駛數(shù)據(jù)讀取任務(wù)、數(shù)據(jù)合并任務(wù)和航向修正任務(wù)。自動駕駛數(shù)據(jù)讀取任務(wù)主要功能是讀取自動駕駛數(shù)據(jù),數(shù)據(jù)合并任務(wù)主要功能是根據(jù)導(dǎo)航傳感器的數(shù)據(jù)和陀螺,空速管,高度儀傳感器的數(shù)據(jù),合并處理,得到飛機(jī)的高度,位置,和速度數(shù)據(jù),航向修正任務(wù)的主要功能為根據(jù)得到的高度,位置,和速度數(shù)據(jù),向引擎和舵機(jī)傳感器傳輸數(shù)據(jù),影響飛機(jī)的航向。根據(jù)AADL的特性,我們用線程對應(yīng)任務(wù)。設(shè)計如下:AuToPilotTo<AutoPilotPosr ,Auto_FiAuToPilotTo<AutoPilotPosr ,Auto_Fi1ot_Air5peedf4

Auto_Pilot_Altitudd/

Auto_PilotPosition;'J<

十osi=

Alth,

Airspeed'/?

Roll.'/?PositionOuf/4AltitudeOutf?Airspeed。同1RollOuljJ4PitchOuu4YawOur/4PI^Thread;Pilot^Input^Thread.GenericfAuTo_PiloT_Toggle ::AutoPilot_PosiTion rY:Auto"PiIot_Airspeed :■AutopilotAlTiTude ;W:AutoZPilotZPosition :SD_Thread:Scraen_Displfly_Thracid.Generic—>:AutoPilot_Toqqle—?:Position—>Mltitude—?-Airspeed?.-Rollr—?;Pitch-?:YawT:Po5ition_out=4MltitudaoutMirspeecToutout- ;-PitclCoLrlr :4-yaw_out j; AutoPilotPosition;I AuTo_PiIoT_Airspeed:: Auto_PiIot_AItitud圖8自動駕駛輸入任務(wù)和顯示器控制顯示任務(wù)設(shè)計示意圖GPSError:/>INS-Error,/>Position_Output|4 Roll_Output/GPSError:/>INS-Error,/>Position_Output|4 Roll_Output/4 Pitch_OutDufjV YawOutput/4 IMSDaroJ? Airspeed_Output/4 AltitudeOutputf4GPS_D(itq/?Fusion_Thread_304:Nav_Sensor_Fus|dr 4/PositionOutput:_?;INS_Po5itiorCln /: 6PS_Position_In-<—INS^Thread:INS^SensoiPosition_Output??—■*/RollOutputi,-PiTchOutput -“宓豪r /'_Sampling_Thread.6eneric(^PS^Thread:GPS^.Sensor^SampIing^Thread.GenericY:AirspeedOutput~4fAlritudeJOutput>fGPS_bataPosition_Output;?圖9GPS和INS數(shù)據(jù)合并取舍控制所含任務(wù)設(shè)計示意圖;66二Proc AlTifudeIr)7;66二Proc AlTifudeIr)7?Airspeed"InJARollZIn.'/kYawririJ?Altitude: :Airspeed_T)ut/?Yaw_OuT/4PiTch_Ouf/?Roll_Ou1-/4Sensor_Thread:6yro_Sensor_Sampling_Thread.6eneric—??AltitudeIn /—?:AirspeecTIn ?—?fPitch_In -f:RollIn if:Vawlln -;AltitudeOut ::AirspeecTOut :fYawOut f-PitcFCOut :4:Roll_Out ;圖10空速管,高度表,陀螺傳感器數(shù)據(jù)讀取和處理任務(wù)設(shè)計示意圖n?ric盡5兇.妃1**次7-倒:Fu$i?n_Auto.Nav_Altitud<Nav_^irsp?<JTiraden?ric盡5兇.妃1**次7-倒:Fu$i?n_Auto.Nav_Altitud<Nav_^irsp?<JTiradeAufo_AlTrtudjg部PitchOeltQ_PiRN,MutoPilotAltitude?AutoFlot二Posmon:AutoRIo匚Airspeed.Data;Auto_Pilot_C)ata_Input_Threod£enericAuto-Pilot-PositAufo_Pilot_^irspeed/Gxrse^CorrecTion:Cours?_(7orrecT?on_CofnpuToTion_71ireod^eiPo$if?onf4 ,圖11自動駕駛數(shù)據(jù)讀取任務(wù)、數(shù)據(jù)合并任務(wù)和航向修正任務(wù)設(shè)計示意圖4.對飛行控制系統(tǒng)模型的驗證分析對于安全關(guān)鍵的嵌入式系統(tǒng),為了支持系統(tǒng)的實時性和確定性,需要在系統(tǒng)設(shè)計階段對實時系統(tǒng)進(jìn)行可調(diào)度分析,并結(jié)合實際運行平臺進(jìn)行驗證。由于本飛行管理系統(tǒng)中任務(wù)主要為周期性任務(wù),該部分主要使用AADLInspector工具進(jìn)行可調(diào)度分析。什么是可調(diào)度呢?在實時系統(tǒng)設(shè)計中,系統(tǒng)的正確性不僅依賴于它的結(jié)果,還依賴于產(chǎn)生結(jié)果的時間。一個系統(tǒng)能夠在規(guī)定的截止時間之前完成所有的調(diào)度工作,則被稱為可調(diào)度。AADLInspector是基于AADL代碼進(jìn)行分析,那么首先把stood的模型轉(zhuǎn)換為AADL代碼,再導(dǎo)入工具中進(jìn)行分析。Stood提供把架構(gòu)模型轉(zhuǎn)換為AADL代碼的功能。

GiesigrjEase_Typestdesign)Behavior_Properties(design)flightsystemHequiiementsjGraphicDesign|DetailedDesignjCheckersCode|DocumentationjDeployment|^■§111^1?SavetextIFrevi1!?>=-?:GiesigrjEase_Typestdesign)Behavior_Properties(design)flightsystemHequiiementsjGraphicDesign|DetailedDesignjCheckersCode|DocumentationjDeployment|^■§111^1?SavetextIFrevi1!?>=-?:tl.aadlSYSTEMElight_SysteniENDFlightSystem;SYSTEMIMFLEKENTATIONSUBCOMPONENTSFlijht_System.GenericS_HCI:SYSTEMHCI.Genetie;S_NAF:SYSTEMNav_And_AutoPilot.Generic;LAN:BUSLAN_Bus.others;CONNECTIONS一od$]ada]c|eppaadltest|checks]FPCOMFONEHT*TYPELIMPLEIilENTATION—tripragmas—cocodefileheaderEAADLCOBE—B3extract!onmessagesmreversemessages^■makefileMprologdescription.PROPERTIESEVENTPORTS_HCI.Auto_Pilor_Tojgle->S_NAP.Auto_Pilor_TojgleEVENTDATAPORTS_HCI.Auto_Pllot_Po31tlon->S_NfiP.Auro_PilotEVENTDATAFORIS_HCI.Auto_Pilot_airirude->S_NaP.Auto_PilotEVENTDATAPORTS_HCI.Auto_Pilot_Airspeed->S_NAP.Auto_PilotDATAPORTS_NAP.Position_OutpuC->S_HCI.Posit;ion_Input;DMAPORTS_NAP.Sirspeed_Output->S_HCI.Airspeed_Input;D&TAPORTSNAP.titude_Output->SHCI.Altitude_Input;DMAPORTS_NAP.Roll_Output->S_HCI.Roll_Input;DATAPORTS_NAP.Pitch_Output->S_HCI.Pitch_Input;DATAPORTS_NAP.Yaw_Output->SJiCI.Yaw_Input;Actual_Connection_Binding=>REFERENCEunnaiued_C12.LAM;StoDd:7Bcx_Position=>"366261938699"; -ENDFlightSyarem.Generic;SYSTEMHCIFEATURESAuto_Pi1ot_Toggle:OUTEVENTPORT{£1lowed_Connection_Binding=>;ftctual_Connection_Binding'=>;};Poairion_Input:INDATAPORTCcanmon(actual_Connection_Binding=>referenceLSN;};Airspeed_Input:INDATAPORTNav_Tvpes::Integer{Actual_Connection_Bindinj=>referenceLSN;]:Altitude_Input:INDATAPORTNav_Types::Integer;Roll_Input:INDATAPORTNav_Types::Integer;Pitch_Input:INDATAPORTNav_Types::Integer;Yaw_Input:INDATAPORTNav_Type3::Integer;AutoPilotPosition:OUTEVENTDATAPORTComnon;Poaltion;_Altitude;Airspeed;圖12STOOD把模型生成AADL代碼示意圖本文中僅使用AADLInspector對代碼進(jìn)行可調(diào)度分析。首先對代碼進(jìn)行理論性可調(diào)度測試,分析結(jié)果如下:baseperiodall100.00000processorutilizationfactorwithdeaillirall1.80000processorutilizationfactorwithperiodall1.80000worstcasetaskresponsetimeroot.Froc_7'Ebaseperiodall100.00000processorutilizationfactorwithdeaillirall1.80000processorutilizationfactorwithperiodall1.80000worstcasetaskresponsetimeroot.Froc_7'EProcessorutilizationesceeded:c:annotcomputebcniXLilonresponsetimewiththistaskset.ScheduleTableStaticAnalysisSchediiLability1Mesmtest日 procesEorutilizationfactorentity reziiltroot.Fkoc_7'eWec:arinotprovethatthetaskseti三schedillablebecausetheprocessorutilisationfactor1.80000i:圖13理論性可調(diào)性測試結(jié)果示意圖由圖13可以看出,當(dāng)線程Pilot_Input_Thread的計算執(zhí)行時間為30ms時,處理器的利用率為1.80000,遠(yuǎn)遠(yuǎn)大于處理器利用率可調(diào)度的極限值0.8284,該組線程不能調(diào)度,建議改進(jìn)線程算法,降低執(zhí)行事件。當(dāng)把計算執(zhí)行時間改為10ms時,處理器利用率為0.80000,線程組可調(diào)度。如圖14所示。testentityresult3(§)processorutilizatioilfactori■■:-ot.Proc_792ThetasksetisschedixLablebecausethepi'ocessoi-utilizationfactoi-0.80000iseqbaseperiodall100.i:ii:ii:ii:ii:iprocessorutilizatioilfactorwithdeaidlirall0.80000processorutilizatioilfactorwithpei_iodall0.800003 warstcasetaskresponEetimeroot.Proc_792AlltaskdeaiilineEwillbemet:thetasksetieschedialable.i"esponsetimeroot.Proc_792.MCI_Proc.SIi_Ttires35.00000I'esponsetimeroot.Froc_792.HCI_Proc.PI_Ttire::10.00000圖14理論性可調(diào)性測試結(jié)果示意圖再進(jìn)行仿真可調(diào)性測試,結(jié)果如下:

£1ight_sjrstemflightsystemFEATUREgAuto_Pilot_Toggle:OUTEVENTPosition_Input:INDATAPOF1TAirspeed_Input:INDATAPORTAltitude_Input£1ight_sjrstemflightsystemFEATUREgAuto_Pilot_Toggle:OUTEVENTPosition_Input:INDATAPOF1TAirspeed_Input:INDATAPORTAltitude_Input:INDATAFORTPORT:Nav_Tjqjes::Position.Coirunon:Nav_T],T3es::Integer:NaV-Tj^es::Integer:Ro11_Input:INDATAPORTNav_T^ies::Integer:Pitch_Input:INDATAPORTNav_Types::Integer;Yaw_Input:INDATAPORTNav_Types::Integer:Auto_Pilot_Position:OUTAuto_Pi1ot_Altitude:OUTAuto_Pi1ot_Airspeed:OUTLAN7RE如亍RE£BUSACCESSENDHCI:EVENTDATAFORTNav_TjT3es::Position.EVENTDATAPORTNav_Types::Integer;EVENTDATAPORTNav_Typss::Integer:LAN_Bus:SYSTEMIMPLEMEMTMTIONHCI.GenericSUEiCOlff'OI'IENTSProc_792:PROCESSORPowerPC.G4{Scheduling_Protoco1=>MI;Stood:iBcOosition=>,V11UU29813UU398,v;]?;MejTL_793:JffiMORYFAILGeneric{V^ord-Sise=>8bits;Stood::Boi<_Position=>"636279836379":]■:Dbv_Bus_794:BUSDevice_Bus{Stood::Boz_Position=>,v12115531411653,v;Mem_Bus_795:BUSMemory_Bus{Stood::Boz_Position=>'''626552826652'v;HCI_Proc:PROCESSHCI_Process.Generic:Screen:DEVICEScreen;CONNECTIONPORTHCI_Proc.Auto_Pilot_Toggle->Auto_Pilot_Toggle:PORTPosition_Input->HCI_Proc.Position:PORTAltitude_Input->HCI_Proc.Altitude:PORTAirspeed_Input->HCI_Proc.Airspeed;PORTRo11_Inp

溫馨提示

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

評論

0/150

提交評論