實(shí)時(shí)系統(tǒng)
博學(xué)公司承擔(dān)了一項(xiàng)嵌入式系統(tǒng)軟件開發(fā)項(xiàng)目。該項(xiàng)目主要用于車載電子系統(tǒng)中監(jiān)視發(fā)動(dòng)機(jī)及燃油系統(tǒng)等系統(tǒng)工作狀況,并通過綜合儀表顯示給駕駛員。經(jīng)過多次與用戶溝通,形成以下技術(shù)要求:
(1)本項(xiàng)目的硬件平臺(tái)由主處理機(jī)模塊和多種接口模塊組成,底板采用標(biāo)準(zhǔn)VME總線(硬件結(jié)構(gòu)圖見圖12-8),具體硬件模塊配置如下:
①主處理機(jī)模塊(CPM)采用PowerPC755,主頻266MHz,配有SDRAM存儲(chǔ)器和FLASH存儲(chǔ)器;提供一個(gè)定時(shí)/計(jì)數(shù)器;支持16級(jí)中斷和二級(jí)Cache。
②輸入輸出模塊(IOC)支持16路RS422接口信號(hào),傳輸速率不低于115.2kbps,IOC模塊與CPM模塊的數(shù)據(jù)交換采用64KB雙端口存儲(chǔ)器。
③離散量接口模塊(DAM)支持64路開關(guān)型離散量輸入輸出接口;2路頻率量輸入;12位A/D轉(zhuǎn)換器和12位D/A轉(zhuǎn)換器。
④圖形處理模塊(GPM)用于顯示圖形,支持OpenGL標(biāo)準(zhǔn)接口軟件。
⑤MBI模塊主要提供1553B外總線接口,PSM為電源支持模塊。
(2)本項(xiàng)目軟件主要工作在CPM模塊中,完成對(duì)外部設(shè)備的數(shù)據(jù)采集、分析和相應(yīng)的控制,將監(jiān)視結(jié)果以圖形方式顯示給駕駛員。該系統(tǒng)的軟件主要包括外部接口驅(qū)動(dòng)軟件、VME數(shù)據(jù)傳輸軟件、處理軟件、圖形顯示和外總線(1553B)數(shù)據(jù)交換軟件。要求數(shù)據(jù)的采集必須確保每幀數(shù)據(jù)無丟失,并在本幀內(nèi)完成數(shù)據(jù)的處理工作,本幀信息顯示給駕駛員的時(shí)刻最晚不能超過下一幀。詳細(xì)的技術(shù)要求如下:
①16路RS422接口主要完成對(duì)汽車燃油系統(tǒng)、動(dòng)力系統(tǒng)和駕駛員命令的數(shù)據(jù)采集與控制。RS422數(shù)據(jù)傳輸格式將以32B為基本數(shù)據(jù)塊,分別以20ms、40ms、60ms、1s這4個(gè)不同周期交換數(shù)據(jù)。
②64路離散量數(shù)據(jù)主要監(jiān)控發(fā)動(dòng)機(jī)工作狀態(tài),要求每10ms采集一次,并在下一個(gè)10ms周期內(nèi)將發(fā)動(dòng)機(jī)狀況顯示到駕駛員座艙。
③多路模擬量數(shù)據(jù)主要采集發(fā)動(dòng)機(jī)轉(zhuǎn)速、油量及汽車的其他數(shù)據(jù),為駕駛員監(jiān)控汽車狀態(tài)提供必要的量化數(shù)據(jù)。模擬量數(shù)據(jù)的刷新頻率為1s。
④外總線(1553B)主要完成該系統(tǒng)與汽車其他電子系統(tǒng)的數(shù)據(jù)交換。
公司將本項(xiàng)目交給項(xiàng)目主管李工實(shí)施,要求李工按技術(shù)要求完成本項(xiàng)目的軟件設(shè)計(jì)工作,公司根據(jù)合同關(guān)于"數(shù)據(jù)的采集必須確保每幀數(shù)據(jù)無丟失,并在本幀內(nèi)完成數(shù)據(jù)的處理工作,本幀信息顯示給駕駛員的時(shí)刻最晚不能超過下一幀"的要求,提醒李工設(shè)計(jì)中重點(diǎn)考慮整個(gè)系統(tǒng)的實(shí)時(shí)性問題。李工完成設(shè)計(jì)后,提交公司評(píng)審,會(huì)上就李工設(shè)計(jì)中存在的缺陷展開了激烈討論,最終達(dá)成一致。
嵌入式軟件體系架構(gòu)
博學(xué)公司承擔(dān)了一項(xiàng)宇航嵌入式設(shè)備的研制任務(wù)。本項(xiàng)目除對(duì)硬件設(shè)備環(huán)境有很高的要求外,還要求支持以下功能:
①設(shè)備由多個(gè)處理機(jī)模塊組成,需要時(shí)外場可快速更換(即LRM結(jié)構(gòu))。
②應(yīng)用軟件應(yīng)與硬件無關(guān),便于軟硬件的升級(jí)。
⑨由于宇航嵌入式設(shè)備中要支持不同功能,系統(tǒng)應(yīng)支持完成不同功能任務(wù)間的數(shù)據(jù)隔離。
④宇航設(shè)備可靠性要求高,系統(tǒng)要有故障處理能力。
公司在接到此項(xiàng)任務(wù)后,進(jìn)行了反復(fù)論證,提出三層棧(TLS)軟件總體架構(gòu),如圖12-7所示,并將軟件設(shè)計(jì)工作交給了李工,要求其在3周內(nèi)完成軟件總體設(shè)計(jì)工作,給出總體設(shè)計(jì)方案。