王永剛,應(yīng)站煌,陳玉峰
(許繼電氣股份有限公司,河南 許昌 461000)
基于ARM-Core4x 嵌入式軟件平臺的實現(xiàn)方法
王永剛,應(yīng)站煌,陳玉峰
(許繼電氣股份有限公司,河南 許昌 461000)
針對基于ARM-Core4x微處理器的管腳功能可配置的特點,降低應(yīng)用業(yè)務(wù)模塊對硬件驅(qū)動層關(guān)注度及業(yè)務(wù)代碼與驅(qū)動代碼耦合性,提出了一種基于ARM-Core4x微處理器的嵌入式軟件開發(fā)平臺設(shè)計方法,該平臺可提供了基于POSIX標準的硬件操作接口和操作系統(tǒng)及網(wǎng)絡(luò)協(xié)議基本應(yīng)用的接口,并通過子模塊間邏輯調(diào)用機制的合理設(shè)計,實現(xiàn)了平臺核心模塊和應(yīng)用模塊獨立編譯且運行期間相互調(diào)用功能模塊,實現(xiàn)開發(fā)平臺的整體功能;通過對該平臺軟件的應(yīng)用模塊二次開發(fā),減少用戶應(yīng)用開發(fā)對ARM微處理器硬件的關(guān)注度,使用戶開發(fā)重點聚焦在應(yīng)用及業(yè)務(wù)的實現(xiàn)上;實踐證明,該軟件平臺可方便應(yīng)用在低壓繼電保護裝置以及智能化設(shè)備產(chǎn)品的開發(fā),提高了用戶應(yīng)用開發(fā)效率和降低開發(fā)難度。
ARM-Core4x;嵌入式系統(tǒng);可視化開發(fā);中間層
近年來,嵌入式應(yīng)用領(lǐng)域中以ARM處理器發(fā)展最為突出,ARM被公認為業(yè)界領(lǐng)先、優(yōu)秀的32位嵌入式處理器結(jié)構(gòu)[1]。ARM系列處理器憑借高性能、低成本和低功耗等特點,在嵌入式應(yīng)用領(lǐng)域中占據(jù)了絕對的市場份額,在建筑安全系統(tǒng)、工廠自動化、家庭娛樂、太陽能面板、測試與計量得到廣泛的應(yīng)用[2-4]。隨著業(yè)務(wù)應(yīng)用領(lǐng)域的擴展,在產(chǎn)品開發(fā)時面臨業(yè)務(wù)多樣化,業(yè)務(wù)功能實現(xiàn)代碼與底層驅(qū)動代碼耦合性高,不利于公共業(yè)務(wù)功能的代碼的重用和迭代,對其產(chǎn)品質(zhì)量產(chǎn)生不利影響。
本文提出了一種基于ARM-M4處理器的軟件開發(fā)平臺設(shè)計方法,通過將ARM硬件及通用功能開發(fā)和應(yīng)用業(yè)務(wù)開發(fā)分離,提供一種易用、通用的開發(fā)平臺,使產(chǎn)品開發(fā)者關(guān)注業(yè)務(wù)的實現(xiàn),而平臺開發(fā)者注重于硬件驅(qū)動及平臺的開發(fā),兩者協(xié)作一致完成產(chǎn)品的開發(fā),有效縮短產(chǎn)品開發(fā)周期,并有利于開發(fā)平臺復用性。
1.1 設(shè)計要求
為解決業(yè)務(wù)模塊代碼與硬件驅(qū)動層代碼的耦合性,業(yè)務(wù)代碼模塊中不應(yīng)含有驅(qū)動層代碼,硬件驅(qū)動層代碼由平臺模塊實現(xiàn),并其功能函數(shù)以指針方式集中存放可查找到數(shù)據(jù)特殊區(qū)域,以便應(yīng)用業(yè)務(wù)模塊所調(diào)用。因此,需要平臺模塊和應(yīng)用模塊相互獨立,可單獨編譯和升級,以達到降低應(yīng)用業(yè)務(wù)代碼與驅(qū)動代碼耦合性。
為實現(xiàn)平臺模塊和應(yīng)用模塊升級或更新,需要獨立升級模塊,升級模塊獨立平臺和應(yīng)用模塊之外,以便其實現(xiàn)升級功能。
為了使整個開發(fā)平臺框架能夠盡可能滿足不同產(chǎn)品硬件配置要求,平臺模塊中驅(qū)動設(shè)計時應(yīng)將驅(qū)動有關(guān)功能函數(shù)和硬件配置進行必要分離,以便于不同應(yīng)用背景下對硬件進行選擇性配置功能的實現(xiàn),提高開發(fā)平臺應(yīng)用范圍。
1.2 總體框架
基于以上設(shè)計原則的考慮,軟件框架設(shè)計如圖1所示,整個軟件框架包括4個部分:驅(qū)動庫、引導模塊、平臺模塊和應(yīng)用模塊。
圖1 總體框架結(jié)構(gòu)示意圖
1)驅(qū)動庫模塊。驅(qū)動模塊是以庫文件方式,提供給引導模塊、平臺模塊所使用。
2)引導模塊。引導模塊負責平臺模塊、應(yīng)用模塊的下載。
3)平臺模塊。平臺模塊是該軟件平臺的核心模塊,也是應(yīng)用模塊工作環(huán)境和資源,能夠提供給用戶足夠多的接口,以便用戶開發(fā)業(yè)務(wù)應(yīng)用。
4)應(yīng)用模塊。 應(yīng)用模塊是用戶主要業(yè)務(wù)功能開發(fā)模塊,但由于要調(diào)用平臺庫所提供的資源以及系統(tǒng)正常工作的需要,必須滿足一些設(shè)計框架的要求,否則應(yīng)用模塊無法正常的工作。
從邏輯結(jié)構(gòu)來說,引導模塊可以視為一個單獨應(yīng)用。在引導模塊中,可實現(xiàn)程序下載和授權(quán)管理以及引導模塊向平臺模塊的切換。鑒于開發(fā)的分層設(shè)計的考慮,平臺模塊和應(yīng)用模塊,雖以獨立的應(yīng)用程序而存在,但在邏輯上平臺模塊是應(yīng)用模塊實現(xiàn)業(yè)務(wù)功能基礎(chǔ)模塊。
2.1 驅(qū)庫設(shè)計
驅(qū)動庫主要提供給引導模塊和平臺模塊進行有關(guān)硬件操作的驅(qū)動接口。從引導模塊的通用性和平臺模塊的可移植性考慮,驅(qū)動庫提供對外硬件接口在接口定義要統(tǒng)一性,即不同ARM-Core4x處理器,對外提供相同的接口驅(qū)動庫,驅(qū)動接口的差異性僅在驅(qū)動庫執(zhí)行體不同。驅(qū)動接口的統(tǒng)一化可有效簡化不同ARM-Core4x處理器的引導模塊和平臺模塊的生成過程,有利于各子模塊的通用性和可移植性設(shè)計目標的實現(xiàn)。
ARM-Core4x 微處理器的管腳功能具備可配置性,即同一管腳可配置模擬量采樣開入,亦可配置成開出管腳。而管腳的可配置性決定于產(chǎn)品業(yè)務(wù)的硬件要求,因此基于業(yè)務(wù)應(yīng)用的硬件驅(qū)動只能在平臺模塊,故驅(qū)動庫接口僅限于單個類型硬件驅(qū)動的實現(xiàn),而板卡類的驅(qū)動只能在驅(qū)動庫接口基礎(chǔ)之上實現(xiàn)。
在硬件驅(qū)動庫內(nèi)容上,包括ARM-Core4x處理器支持所有的硬件驅(qū)動,即按照可允許最大化配置的硬件類型進行硬件驅(qū)動的設(shè)計,即支持所有可能配置方式。
在ARM-Core4x生產(chǎn)廠商中,大部分已經(jīng)提供了基于微處理器硬件驅(qū)動庫或者提供基于這些硬件各個操作接口,這些接口需要通過適當二次封裝,形成統(tǒng)一、規(guī)范對外驅(qū)動接口,其開發(fā)工作量相對較小。
2.2 引導模塊設(shè)計
為了軟件平臺的通用化和兼容性目標的實現(xiàn),引導模塊的設(shè)計必須保證其通用化和可移植性??紤]到ARM-Core4x微處理器硬件的差異性,尤其是各廠商生產(chǎn)基于ARM-Core4x標準的微處理器,但其硬件配置和硬件控制寄存器地址,均存在一定差異性[5-6]。因此,引導業(yè)務(wù)代碼中不應(yīng)含有硬件的任何信息,否則,無法保證引導業(yè)務(wù)代碼的通用性。
為了實現(xiàn)引導業(yè)務(wù)代碼通用性,將其引導業(yè)務(wù)代碼中硬件操作接口進行抽象化,且在初始化時將硬件抽象化接口進行實例化。抽象化處理硬件操作接口,僅能保證引導代碼的通用性,并不能保證編譯后的引導程序可以適用任何硬件環(huán)境下引導功能,但可以簡單通過替換不同ARM-Core4x處理器的驅(qū)動庫,可以方便生成適用不同ARM-Core4x處理器的引導模塊。
硬件操作接口抽象化對象范圍需要充分考慮引導模塊需要的實現(xiàn)功能以及與功能相關(guān)的硬件對象。引導模塊的基本功能是下載功能和引導功能。上電后需要從引導模塊運行,并在許可協(xié)議合法和平臺模塊滿足安全運行的條件下,切換到平臺模塊運行進行用戶應(yīng)用業(yè)務(wù)的處理。因此,與引導業(yè)務(wù)模塊相關(guān)的硬件包括:①以太網(wǎng)或者UART,下載功能所必須通信硬件;②FLASH模塊,平臺和應(yīng)用程序保存介質(zhì);③其他模塊,如時鐘模塊、中斷控制模塊、網(wǎng)絡(luò)協(xié)議模塊,處理器運行所必需基本模塊。
從實現(xiàn)業(yè)務(wù)需要考慮,引導模塊還包括下載通信協(xié)議等其他中間層模塊,通信協(xié)議中涉及到通信硬件驅(qū)動也采用抽象化硬件操作接口,并在通信協(xié)議初始時對抽象化硬件操作接口進行實例化,保證下載通信協(xié)議通用性。在面臨不同的微處理器硬件的引導模塊的移植時,可以替換硬件驅(qū)動庫,可簡單快捷生成基于新的硬件引導模塊。
2.3 平臺模塊的設(shè)計
為了實現(xiàn)用戶業(yè)務(wù)的實現(xiàn),作為資源庫和應(yīng)用環(huán)境的平臺模塊包含以下幾部分功能:
(1)標準的硬件操作接口。硬件的操作是應(yīng)用模塊實現(xiàn)其業(yè)務(wù)最基本的硬件操作要求,也是平臺模塊必須提供基本功能之一。為了減少用戶模塊開發(fā)時對硬件操作難度,平臺模塊在驅(qū)動庫的基礎(chǔ)上,并結(jié)合硬件設(shè)計要求,提供基于POSIX標準的硬件操作接口。為了實現(xiàn)硬件驅(qū)動庫的標準化操作,所有的硬件均支持open、close、read、write和iocrl五種類型接口,各個接口的真正的實現(xiàn)與否視具體的硬件類型而定。
(2)操作系統(tǒng)接口。操作系統(tǒng)接口提供有關(guān)任務(wù)管理、信號量、互斥量、郵箱、事件組等系統(tǒng)級接口。考慮到成本問題,本平臺操作系統(tǒng)選擇FreeRTOS。鑒于內(nèi)存動態(tài)申請不利于平臺編譯期間發(fā)現(xiàn)內(nèi)存溢出問題[7],移植FreeRTOS操作系統(tǒng)時,對任務(wù)內(nèi)存管理進行適當?shù)恼{(diào)整,所有內(nèi)存申請的由動態(tài)申請修改為靜態(tài)申請,并規(guī)定任務(wù)創(chuàng)建個數(shù)限制,以免出現(xiàn)程序在編譯期和運行期出現(xiàn)內(nèi)存使用不一致性,保證系統(tǒng)的可靠性。
(3)網(wǎng)絡(luò)協(xié)議解析接口。為了控制平臺程序大小,網(wǎng)絡(luò)協(xié)議層選用UIP協(xié)議代碼,UIP具備代碼量少、占用內(nèi)存少有利于在資源稀少的ARM處理器中使用[8-10]。為了進一步控制協(xié)議層內(nèi)存使用,對TCP協(xié)議所中由內(nèi)置基于連接個數(shù)的數(shù)據(jù)緩存內(nèi)存申請,改由外部用戶使用自己申請,增強UIP對用戶要求連接個數(shù)的適應(yīng)性。
(4)數(shù)據(jù)表操作接口。數(shù)據(jù)表操作接口提供基于數(shù)據(jù)庫方式的數(shù)據(jù)訪問方式,并針對不同任務(wù)訪問數(shù)據(jù)表采取安全措施,提高數(shù)據(jù)表訪問的安全性。
(5)其他功能模塊。如遠程調(diào)試功能模塊支持、自我發(fā)現(xiàn)協(xié)議實現(xiàn)。
2.4 應(yīng)用模塊的設(shè)計
應(yīng)用模塊是對用戶開放模塊,其功能是在遵循基本應(yīng)用框架之上,實現(xiàn)用戶業(yè)務(wù)及應(yīng)用需要。應(yīng)用模塊框架包括3個主要功能模塊:
(1)用戶初始化模塊。
用戶初始化模塊主要為用戶提供一些初始化操作,如初始化應(yīng)用需要內(nèi)存以及應(yīng)用任務(wù)的創(chuàng)建。基于業(yè)務(wù)創(chuàng)建的任務(wù)處理時,需要統(tǒng)籌考慮各任務(wù)的優(yōu)先級別,以便在整體上保持較高運行效率。
(2)用戶層驅(qū)動加載模塊。
用戶層驅(qū)動加載模塊,提供用戶設(shè)計驅(qū)動模塊在符合一些特殊要求情況下,可以被被平臺庫模塊所加載,用戶模塊以標準設(shè)備操作的方式去控制設(shè)備,從而保證用戶操作硬件設(shè)備標準化。
(3)用戶業(yè)務(wù)循環(huán)處理模塊。
用戶業(yè)務(wù)循環(huán)處理模塊,用于非任務(wù)模式下常規(guī)事務(wù)處理與調(diào)用,循環(huán)模塊會被平臺模塊相應(yīng)部分執(zhí)行。在操作系統(tǒng)運行的條件下,本循環(huán)模塊沒有被調(diào)用的可能,其原因在于操作系統(tǒng)的任務(wù)調(diào)度是通過中斷調(diào)用和任務(wù)調(diào)度策略相結(jié)合運行模式下,平臺的循環(huán)模塊體幾乎沒有時間被調(diào)用可能,從而導致本模塊被調(diào)用機會很少。
3.1 平臺模塊業(yè)務(wù)流程的設(shè)計
開發(fā)平臺是一個完整業(yè)務(wù)處理的平臺,其子模塊承擔各自功能,并通過業(yè)務(wù)流程來規(guī)定各子模塊主要業(yè)務(wù)實現(xiàn)流程,以其整體上實現(xiàn)整個開發(fā)平臺設(shè)計目標。
開發(fā)平臺的業(yè)務(wù)流程圖如圖2所示,其中引導模塊和平臺模塊進行存在切換控制功能,而平臺模塊和應(yīng)用模塊關(guān)系相對復雜,這種復雜性主要體現(xiàn):應(yīng)用模塊中主要功能模塊被平臺模塊所調(diào)用而運行,而應(yīng)用模塊中任何功能模塊都可隨時調(diào)用平臺模塊資源庫接口函數(shù),以便應(yīng)用業(yè)務(wù)功能的實現(xiàn),因此需要對平臺和應(yīng)用模塊之間調(diào)用控制邏輯進行合理規(guī)劃和設(shè)計。
圖2 開發(fā)平臺業(yè)務(wù)流程圖
3.2 子模塊間邏輯調(diào)用的實現(xiàn)
1)平臺模塊與引導模塊。
引導模塊與平臺模塊兩者處理關(guān)系為切換功能和引導功能,引導模塊在啟動以后,在滿足一定的條件下,可直接切換到平臺模塊運行,而平臺模塊在外部某種干預下,可以切換到引導模塊。前一種是整個軟件正常運行的模式,而后一種模式是進行平臺模塊或應(yīng)用模塊進行升級程序模式。切換方式采用直接跳轉(zhuǎn)相應(yīng)模塊入口地址實現(xiàn)。
2)平臺模塊與應(yīng)用模塊。
平臺模塊與應(yīng)用模塊邏輯關(guān)系為接口函數(shù)相互調(diào)用,即相互獨立模塊接口函數(shù)相互調(diào)用的實現(xiàn)。平臺模塊和應(yīng)用模塊關(guān)系復雜性是由平臺與應(yīng)用模塊獨立設(shè)計以及應(yīng)用與平臺模塊相互調(diào)用功能要求所決定的,因此需要對平臺和應(yīng)用模塊進行嚴謹?shù)脑O(shè)計,保證相互調(diào)用功能的實現(xiàn)。
圖3說明模塊間調(diào)用功能實現(xiàn)邏輯方法,應(yīng)用模塊和平臺模塊相互調(diào)用邏輯的實現(xiàn)步驟如下:
A)在平臺模塊內(nèi)部,聲明一數(shù)據(jù)結(jié)構(gòu),其成員為開發(fā)接口函數(shù)的類型。定義該數(shù)據(jù)結(jié)構(gòu)的常量,其成員為開發(fā)接口函數(shù)的指針,并將該常量數(shù)據(jù)結(jié)構(gòu)的地址存放到平臺模塊中斷向量表一個固定位置中。
圖3 應(yīng)用模塊調(diào)用平臺實現(xiàn)圖
B)應(yīng)用模塊調(diào)用平臺模塊接口函數(shù)時,通過以下幾個步驟:首先,獲取平臺模塊的存放接口函數(shù)的數(shù)據(jù)結(jié)構(gòu)地址的中斷向量表,通過其內(nèi)容獲得接口函數(shù)數(shù)據(jù)結(jié)構(gòu)所在的位置;其次,通過聲明獲取平臺模塊接口函數(shù)在數(shù)據(jù)結(jié)構(gòu)中偏移位置,進而獲取到平臺模塊中被調(diào)用接口函數(shù)地址,被調(diào)用函數(shù)執(zhí)行完畢,繼續(xù)處理應(yīng)用模塊其他相關(guān)業(yè)務(wù)。
通過以上步驟,調(diào)用模塊可方便調(diào)用到被調(diào)用模塊提供的接口函數(shù),進一步為實現(xiàn)用戶業(yè)務(wù)創(chuàng)建提供必要資源和驅(qū)動支持。
平臺模塊調(diào)用應(yīng)用模塊實現(xiàn)機制和應(yīng)用模塊調(diào)用平臺模塊實現(xiàn)機制相似,差別僅在于調(diào)用函數(shù)接口對象的數(shù)據(jù)結(jié)構(gòu)成員定義、數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu)地址存放的中斷向量表的位置不同。為了避免平臺模塊和應(yīng)用模塊相互調(diào)用而導致模塊內(nèi)存數(shù)據(jù)被改寫,平臺模塊和應(yīng)用模塊分配獨立內(nèi)存模塊,確保平臺模塊和應(yīng)用模塊各自內(nèi)存數(shù)據(jù)不會被對方修改,從而保證平臺模塊和應(yīng)用模塊相互調(diào)用功能的實現(xiàn)。
3.3 可視化開發(fā)模式的實現(xiàn)
可視化開發(fā)模式是指用戶將平臺模塊提供的各類接口作為資源,加載到可視化開發(fā)工具中,并在可被調(diào)用。為了保證可視化開發(fā)工具生成的代碼能有效運行,并具備調(diào)用平臺模塊提供各類資源接口函數(shù)處理應(yīng)用業(yè)務(wù),可視化開發(fā)工具生成的代碼必須是在一定應(yīng)用模塊框架基礎(chǔ)進行操作。
圖4 平臺軟件與可視化工具邏輯
圖4為可視化開發(fā)工具與平臺軟件邏輯生成示意圖。平臺軟件提供基本接口資源,而可視化工具將接口作為資源加載到工具中,開發(fā)時可通過拖入功能函數(shù)到目標視圖區(qū),并對函數(shù)輸入輸出進行適當圖形連接,同時生成與此圖形邏輯對應(yīng)的C代碼,寫入到相應(yīng)的用戶業(yè)務(wù)開發(fā)模塊框架中,調(diào)用相應(yīng)編譯器最終完成由圖形到代碼、代碼到機器碼生成的任務(wù)。
通過應(yīng)用軟件平臺設(shè)計開發(fā)方法,較方便實現(xiàn)基于TI和Freescale廠商不同硬件的軟件開發(fā)平臺,實現(xiàn)平臺模塊和應(yīng)用模塊獨立編譯和單獨升級,降低應(yīng)用業(yè)務(wù)代碼和底層驅(qū)動代碼耦合性,加快產(chǎn)品開發(fā)進度和提高開發(fā)質(zhì)量。
實踐證明,通過分層分模塊設(shè)計,軟件平臺實現(xiàn)系統(tǒng)預期設(shè)計目標。通過配置信息的調(diào)整,可以滿足基于同一ARM-Core4x 微處理器而不同配置板卡產(chǎn)品開發(fā)的需要。平臺軟件分模塊設(shè)計,可引導產(chǎn)品開發(fā)進行分層開發(fā),平臺人員側(cè)重平臺的開發(fā),而產(chǎn)品應(yīng)用人員開發(fā)注重業(yè)務(wù)的實現(xiàn),整體提高產(chǎn)品開發(fā)效率。
[1] 竇曉波,徐 科,胡敏強,等.基于 ARM 處理器的低壓微機保護裝置[J].電力系統(tǒng)自動化, 2005,29(20): 93-96,99.
[2] 孟艷清,趙宏偉,鄒育霖.基于ARM的開關(guān)柜智能監(jiān)控裝置研究[J].高壓電器,2014,50(3):29-35.
[3] 孫延嶺,趙雪飛,張紅芳,等.基于ARM嵌入式系統(tǒng)的微型智能可編程控制器[J].電力系統(tǒng)自動化,2010,34(10):101-103.
[4] 舒雙寶,羅家融,王勤湧,等. 基于DSP和ARM便攜式電能質(zhì)量監(jiān)測系統(tǒng)的設(shè)計與實現(xiàn)[J]. 電力系統(tǒng)保護與控制,2010,38(24):185-189.
[5] 范蟠果,邢保毫,米曉亮,等. 基于嵌入式S3C2440系統(tǒng)Bootloader設(shè)計與實現(xiàn)[J] 計算機測量和控制,2016,24(9):12-14.
[6] 呂 敏,沙 莎.可視化編程數(shù)字圖像處理平臺的界面設(shè)計與實現(xiàn)[J].計算機系統(tǒng)應(yīng)用,2010,19(9): 211-213.
[7] 郭開榮,溫渤嬰. FreeRTOS在微機繼電保護實驗裝置中的應(yīng)用[J].繼電器,2006,34(19):4-6.
[8] 伊文斌,周賢娟,鄢化彪,等.Uip TCP/IP 協(xié)議分析及其在嵌入式系統(tǒng)中的應(yīng)用[J].計算機技術(shù)與發(fā)展,2007,17(9):240-243.
[9] 周邵文.一種基于UIP協(xié)議棧的多應(yīng)用層協(xié)議支持方案的設(shè)計[J]. 電力系統(tǒng)保護與控制,2010,38(9):109-112.
[10] 徐林峰,李 星. 基于ARM Cortex-M3微控制器與QDUC的嵌入式激勵器設(shè)計[J]. 計算機測量和控制,2016,24(2):182-185.
Implementation Method of Embedded Software Platform Based on ARM-Core4x
Wang Yonggang, Ying Zhanhuang,Chen Yufeng
(XJ Electric Co., Ltd.Automatic Protection Corporation,Xuchang 461000,China)
According to the characteristics of the pin configuration function based on ARM-Core4x microprocessor can be reduced, application service module of hardware driver layer attention and business code and driver code coupling, proposes a design method of embedded software development platform based on ARM-Core4x microprocessor, the platform can provide a standard POSIX hardware interface and operating system and network protocol the basic application interface based on reasonable design and the sub module between logical call mechanism, the platform to achieve the core module and Application module independently compile and run the mutual call function module, the realization of the overall function of development platform. Through the application of the platform software module two development, reduce the user application development of ARM microprocessor hardware attention, the user development focus on the application and implementation of the business. Practice has proved that the software platform can be used in low voltage relay protection devices and intelligent equipment product development, improve the user application development efficiency and reduce the difficulty of development.
ARM-Core4x; embedded system; visualization development; middle layer
2016-11-03;
2017-01-05。
王永剛(1969-)男,上海人,博士,高級工程師,主要從事嵌入式系統(tǒng)微處理器方向的研究。
1671-4598(2017)05-0143-04
10.16526/j.cnki.11-4762/tp.2017.05.040
TP3
A