摘 要 本文結(jié)合機(jī)載可編程邏輯器件軟件研制管理過(guò)程特點(diǎn),對(duì)其生存周期過(guò)程進(jìn)行了研究,給出了機(jī)載可編程邏輯器件軟件研制階段的劃分方法,各階段的輸入、輸出要求,轉(zhuǎn)段準(zhǔn)則等,該研究為后續(xù)推進(jìn)機(jī)載可編程邏輯器件軟件工程化的實(shí)施奠定了基礎(chǔ)。
【關(guān)鍵詞】軟件工程 PLD軟件 生存周期
1 引言
目前機(jī)載可編程邏輯器件(Programmable Logic Device,PLD)軟件尚未按照軟件工程的方法開展研制和管理工作,這將導(dǎo)致設(shè)計(jì)數(shù)據(jù)不完整或缺失,并給裝備質(zhì)量帶來(lái)巨大風(fēng)險(xiǎn)。為了降低這種風(fēng)險(xiǎn),應(yīng)參考軟件工程領(lǐng)域內(nèi)的相關(guān)做法及標(biāo)準(zhǔn),在PLD軟件研制過(guò)程中引入軟件工程的思想,而引入軟件工程思想最重要的一步即是開展PLD軟件的生存周期過(guò)程研究,通過(guò)明確研制階段劃分方法、各階段的輸入輸出要求等來(lái)規(guī)范PLD軟件研制過(guò)程。
2 PLD軟件生存周期過(guò)程研究
2.1 過(guò)程劃分
由于PLD軟件的設(shè)計(jì)依附于其所隸屬的機(jī)載設(shè)備,在對(duì)其生存周期過(guò)程進(jìn)行劃分時(shí),應(yīng)考慮設(shè)備研制的生存周期。在系統(tǒng)過(guò)程中,需要將設(shè)備/系統(tǒng)的需求分配給軟件和硬件,該過(guò)程確定系統(tǒng)分配給PLD軟件的系統(tǒng)需求,作為PLD軟件需求的直接輸入,因此,系統(tǒng)過(guò)程應(yīng)引入PLD軟件生存周期過(guò)程。PLD軟件生存周期過(guò)程劃分為五大過(guò)程,主要包括:
(1)系統(tǒng)過(guò)程:用于明確系統(tǒng)/設(shè)備分配給PLD軟件的系統(tǒng)需求。
(2)計(jì)劃過(guò)程:用于定義和協(xié)調(diào)PLD軟件開發(fā)、維護(hù)和支持過(guò)程的工作。
(3)開發(fā)過(guò)程:產(chǎn)生設(shè)計(jì)數(shù)據(jù)和PLD軟件產(chǎn)品。
(4)維護(hù)過(guò)程:產(chǎn)生設(shè)備定型/鑒定后PLD軟件的維護(hù)數(shù)據(jù)。
(5)支持過(guò)程:貫穿系統(tǒng)過(guò)程、計(jì)劃過(guò)程、開發(fā)過(guò)程和維護(hù)過(guò)程,確保各個(gè)過(guò)程輸出的生存周期數(shù)據(jù)的正確性、可控性。這個(gè)過(guò)程包括質(zhì)量保證、配置管理、驗(yàn)證和確認(rèn)等活動(dòng)。
2.2 階段劃分
根據(jù)PLD軟件生存周期過(guò)程劃分結(jié)果,對(duì)各個(gè)過(guò)程進(jìn)行細(xì)化,結(jié)合PLD軟件研制流程,將PLD全生存周期劃分為如下十個(gè)階段:系統(tǒng)分析與設(shè)計(jì)階段、計(jì)劃階段、需求階段、設(shè)計(jì)階段、實(shí)現(xiàn)階段、板級(jí)驗(yàn)證階段、驗(yàn)收交付階段、系統(tǒng)集成階段、定型/鑒定階段、使用維護(hù)階段。實(shí)現(xiàn)階段又進(jìn)一步細(xì)化為四個(gè)子階段,即編碼階段、功能仿真、綜合布局布線階段、時(shí)序驗(yàn)證階段。各個(gè)過(guò)程和階段的對(duì)應(yīng)關(guān)系及每個(gè)階段的輸入輸出要求見(jiàn)圖1。
在圖中的實(shí)現(xiàn)階段中,是不斷反饋迭代、優(yōu)化的過(guò)程,即在功能仿真,綜合、布局布線,時(shí)序驗(yàn)證過(guò)程中發(fā)現(xiàn)的問(wèn)題都會(huì)反饋至編碼或更上級(jí)階段,在進(jìn)行HDL代碼糾正優(yōu)化或設(shè)計(jì)完善后重新驗(yàn)證再進(jìn)入后續(xù)階段。本文描述的是研制過(guò)程全生存周期階段的全集,根據(jù)不同的PLD軟件類型及等級(jí)、軟件需求的穩(wěn)定性以及復(fù)用模塊使用情況等,可對(duì)本文生存周期的相關(guān)階段進(jìn)行剪裁。同時(shí),由于增量開發(fā)或各個(gè)過(guò)程之間的反饋等原因會(huì)導(dǎo)致某個(gè)階段被進(jìn)入、重復(fù)進(jìn)入或修改。
2.3 轉(zhuǎn)段準(zhǔn)則
基于上述生存周期過(guò)程,對(duì)于采用瀑布模型開發(fā)的項(xiàng)目,其各階段的轉(zhuǎn)段準(zhǔn)則為本階段的轉(zhuǎn)出準(zhǔn)則和下階段的進(jìn)入準(zhǔn)則,二者通常一致,轉(zhuǎn)段準(zhǔn)則為本階段的工作產(chǎn)品已固化并通過(guò)評(píng)審,生存周期資料納入配置管理。而在實(shí)際項(xiàng)目中,通常并非采用嚴(yán)格意義上的瀑布模型,某個(gè)階段的轉(zhuǎn)入準(zhǔn)則與其上階段的轉(zhuǎn)出準(zhǔn)則可以不一致,相關(guān)的轉(zhuǎn)入和轉(zhuǎn)出準(zhǔn)則需要在計(jì)劃類文件中定義清楚。某個(gè)階段可以基于部分輸入開始進(jìn)入,只要確保本階段的輸入滿足本階段的轉(zhuǎn)入準(zhǔn)則即可。
3 總結(jié)
本文的研究明確了PLD軟件生存周期階段劃分及轉(zhuǎn)段準(zhǔn)則,對(duì)每個(gè)階段的輸入輸出要求進(jìn)行了定義。本文的研究成果,為推進(jìn)PLD軟件工程化提供了保證。
參考文獻(xiàn)
[1]RTCA DO-254,Design Assurance Guidance For Airborne Electronic Hardware[S].
[2]GB/T 33781-2017可編程邏輯器件軟件開發(fā)通用要求[S].
[3]劉桂華.基于FPGA的現(xiàn)代數(shù)字系統(tǒng)設(shè)計(jì)[M].西安電子科技大學(xué)出版社,2012.
[4]胡小婷,田澤.基于DO-254的航空集成電路設(shè)計(jì)保障研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2012,22(08):189-191.
作者簡(jiǎn)介
邢薇薇(1986-),女,陜西省西安市人。碩士學(xué)位。工程師。主要研究方向?yàn)闄C(jī)載軟件工程化。
作者單位
中國(guó)航空工業(yè)集團(tuán)公司第一飛機(jī)設(shè)計(jì)研究院 陜西省西安市 710089