亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種多核處理器芯片設(shè)計與實現(xiàn)關(guān)鍵技術(shù)研究

        2021-07-06 02:10:18何嘉文王宣明蔡葉芳
        計算機技術(shù)與發(fā)展 2021年6期
        關(guān)鍵詞:嵌入式功能

        杜 斐,何嘉文,王宣明,蔡葉芳,田 澤

        (航空工業(yè)西安航空計算技術(shù)研究所,陜西 西安 710068)

        0 引 言

        隨著嵌入式技術(shù)的不斷發(fā)展,HMPU逐漸廣泛應(yīng)用于高性能計算領(lǐng)域。異構(gòu)多核處理器,即具有兩個或以上處理器內(nèi)核的處理器,因其計算效率高,且可針對不同應(yīng)用調(diào)整結(jié)構(gòu),其應(yīng)用相當(dāng)廣泛。在具體應(yīng)用中,多核處理器的不同處理器核之間需要進行大量的、頻繁的數(shù)據(jù)交換,因此,處理器核間的通信效率嚴(yán)重影響處理器的性能[1]。

        目前通過調(diào)查研究,異構(gòu)多核處理器芯片核間通信領(lǐng)域在國內(nèi)外已經(jīng)取得了一些顯著研究成果。例如,Mittal等提出了一種適應(yīng)于多核處理器CPU-GPU核間通信機制,通過不同的通信通道合理地遷移任務(wù)來提高核間協(xié)作以及核間通信的效率;馮強等基于ARM與DSP雙核架構(gòu)嵌入式數(shù)控系統(tǒng),設(shè)計并實現(xiàn)了一種基于共享內(nèi)存的核間通信機制,該通信機制優(yōu)化了雙核間的數(shù)據(jù)傳輸延遲和數(shù)據(jù)傳輸量[1]。馮瑞青等[2]著重研究分析了ARM+DSP片上基于共享總線的Mailbox異構(gòu)多核間通信機制,實現(xiàn)了ARM核上Linux與DSP核上Reworks之間的多核通信組件、DSP核的動態(tài)加載程序、協(xié)同計算等功能。國常義等針對目前通用的達(dá)芬奇異構(gòu)多核處理器[3],研究了ARM核、DSP核以及視頻協(xié)作處理器之間的通信與協(xié)作機制,詳細(xì)闡述了核間互連結(jié)構(gòu)與核間互連軟件的實現(xiàn)[4-6]。

        基于上述研究,根據(jù)信息融合處理系統(tǒng)的發(fā)展需求,以先進SoC為技術(shù)手段,基于國內(nèi)現(xiàn)有IP和自主工藝平臺,在單芯片上實現(xiàn)數(shù)據(jù)處理及信號處理、多數(shù)據(jù)接口、高精度采集以及異構(gòu)多核可定制信息處理為目的,提出一種基于“CPU+DSP+FPGA+IO”結(jié)構(gòu)的異構(gòu)多核處理器芯片(heterogeneous multi-processor unit,HMPU)的設(shè)計方案。采用共享總線的Mailbox異構(gòu)多核間通信機制,以滿足信號采樣處理、總線協(xié)議處理、數(shù)據(jù)處理及控制功能。

        1 片上總線概述

        PLB總線是一種適用于處理器的高性能指令和數(shù)據(jù)總線,其功能為在主設(shè)備和從設(shè)備之間交換指令和數(shù)據(jù)。PLB總線的地址線為32位(支持?jǐn)U展到64位總線),數(shù)據(jù)線為128位,每個PLB的主設(shè)備,其地址線、寫數(shù)據(jù)線、讀數(shù)據(jù)線、控制通路均獨立連接到PLB總線上,PLB總線通過PLB仲裁器根據(jù)設(shè)置的優(yōu)先級進行不同主設(shè)備的仲裁[7-8]。

        OPB總線用于連接低性能的設(shè)備,包括IIC、UART、GPIO等,其工作頻率、總線地址和數(shù)據(jù)寬度均低于PLB總線。DCR總線為直接訪問總線,其優(yōu)先級高于PLB和OPB總線,用于關(guān)鍵外設(shè)的寄存器配置。數(shù)字信號處理IP核采用AXI master 兼容的接口作為數(shù)字信號處理器與片上其它設(shè)備交互的核心接口,AXI支持讀寫、請求地址和數(shù)據(jù)的完全獨立處理[9-10]。

        2 異構(gòu)多核處理器設(shè)計與實現(xiàn)關(guān)鍵技術(shù)

        2.1 芯片體系架構(gòu)

        異構(gòu)多核處理器(以下簡稱HMPU)內(nèi)部集成了嵌入式處理器、數(shù)字信號處理器以及多種常用接口,同時集成了現(xiàn)場可編程邏輯,可以完成信號采樣處理、總線協(xié)議處理、數(shù)據(jù)處理及控制功能,是一款具有豐富外設(shè)接口的高性能、低功耗異構(gòu)多核處理器。

        異構(gòu)多核處理器體系架構(gòu)框圖如圖1所示。其中嵌入式處理器負(fù)責(zé)I/O處理與管理,數(shù)據(jù)信號處理器負(fù)責(zé)數(shù)據(jù)解算處理,F(xiàn)PGA供用戶定制所需邏輯功能[11-12]。

        圖1 異構(gòu)多核處理器體系架構(gòu)框圖

        數(shù)字信號處理器主要負(fù)責(zé)計算功能,且僅能控制DPRAM與FPGA,數(shù)字信號處理器通過EMIF訪問SDRAM等外部存儲器,而嵌入式處理器負(fù)責(zé)設(shè)備管理。兩個處理器處于對等位置,數(shù)字信號處理器在嵌入式處理器不工作時可以控制所有設(shè)備,同時工作時需要預(yù)先設(shè)定設(shè)備分配以維護數(shù)據(jù)一致性。

        此體系架構(gòu)具有如下優(yōu)點:

        (a)地位對等的雙核。

        除數(shù)字信號處理器IP內(nèi)部集成的設(shè)備外,所有片上設(shè)備嵌入式處理器和數(shù)字信號處理器均可以訪問;

        嵌入式處理器和數(shù)字信號處理器可以在對方關(guān)閉情況下獨立工作;

        靈活性高,可以自由分配設(shè)備所有權(quán)。

        (b)分工確定的主從式。

        嵌入式處理器作為IO處理機管理CoreConnect設(shè)備,數(shù)字信號處理器主要負(fù)責(zé)運算;

        數(shù)字信號處理器獨立工作時無法訪問CoreConnect設(shè)備;

        保留了數(shù)字信號處理器到PLB通路,提供一定程度的靈活性。

        2.2 芯片詳細(xì)設(shè)計與實現(xiàn)關(guān)鍵技術(shù)

        2.2.1 郵箱中斷控制器(MailBox)

        為解決多核處理器工作同步與容錯處理問題,引入互中斷、互復(fù)位、互調(diào)試機制。數(shù)字信號處理器與嵌入式處理器可以通過MailBox方式發(fā)起中斷對方操作,用于關(guān)鍵消息同步。數(shù)字信號處理器與嵌入式處理器周期喂狗,可檢測軟件運行情況,如軟件異常不能周期喂狗,則產(chǎn)生WDT中斷上報對方處理器。在某方處理器異常時,另一方處理器可對其復(fù)位。

        MailBox模塊具有標(biāo)準(zhǔn)DCR總線從設(shè)備接口和AXI總線接口,可連接嵌入式處理器和數(shù)字信號處理器。該模塊的功能框圖如圖2所示。

        圖2 Mailbox系統(tǒng)應(yīng)用框圖

        2.2.1.1 讀寫數(shù)據(jù)傳輸

        各處理器核的通信使用MailBox,分為發(fā)送級MailBox和接收級MailBox,發(fā)送級MailBox可供發(fā)送主設(shè)備發(fā)送數(shù)據(jù)以便傳遞消息,而接收級MailBox則設(shè)計為方便接收主設(shè)備讀MailBox的相關(guān)寄存器來獲取數(shù)據(jù)。無論是寫操作還是讀操作,MailBox內(nèi)部均有特定的讀寫數(shù)據(jù)控制模塊,控制內(nèi)部發(fā)送寫操作還是讀操作。讀寫控制單元受FIFO當(dāng)前數(shù)據(jù)空滿的影響。若此時FIFO為空,只能發(fā)出寫操作,不能發(fā)出讀操作,若此時FIFO為滿,只能發(fā)出讀操作,不能發(fā)出寫操作,否則均會導(dǎo)致錯誤并使主機暫停,等待處理此錯誤。

        2.2.1.2 MailBox狀態(tài)功能

        為獲取當(dāng)前MailBox的運行狀態(tài),設(shè)計者設(shè)計了一個查詢MailBox的機制,即設(shè)計一個寄存器,其包含了MailBox的接收和發(fā)送方向的FIFO狀態(tài)以及當(dāng)前是否正在進行接收和發(fā)送操作。MailBox的接收和發(fā)送方向的FIFO狀態(tài)表明當(dāng)前門限是否超出標(biāo)準(zhǔn),當(dāng)前是否正在進行接收和發(fā)送操作表明當(dāng)前FIFO的空滿,以避免寫錯誤和讀錯誤。

        2.2.1.3 發(fā)送與接收中斷門限功能設(shè)定

        為避免MailBox超出門限,設(shè)計者設(shè)計了一套機制,即通過中斷將FIFO的內(nèi)部信息反饋到使用者,并將FIFO信息加入MailBox特定信號。例如,當(dāng)前發(fā)送操作時,F(xiàn)IFO之間的數(shù)據(jù)總數(shù)多余門限的要求,系統(tǒng)將發(fā)送門限中斷提醒使用者以避免錯誤。

        2.2.1.4 中斷狀態(tài)功能

        MailBox具有中斷請求功能,此設(shè)計包括兩類,即容錯中斷和郵箱中斷,其中容錯中斷包括看門狗中斷和錯誤狀態(tài)中斷,兩郵箱中斷包括發(fā)送和接收門限中斷。前兩種中斷是一種容錯機制,需對處理器進行相關(guān)矯正,而后兩種中斷則是郵箱中斷,表明FIFO的狀態(tài)。

        2.2.1.5 中斷使能方式

        MailBox對中斷請求的控制也有獨立的控制電路,該部分需要上層主設(shè)備根據(jù)具體使用情況配置中斷使能位,若使能位為開,則當(dāng)滿足觸發(fā)條件時,會產(chǎn)生中斷請求,提醒上層主設(shè)備處理相關(guān)情況。

        2.2.1.6 看門狗定時功能設(shè)定

        為防止軟件鎖死情況的發(fā)生,MailBox設(shè)計了看門狗中斷,即檢測處理器是否長時間處于等待響應(yīng)的狀態(tài),若等待時間超過主設(shè)備設(shè)置的時間,即會產(chǎn)生看門狗中斷,此時主機端必須復(fù)位處理器方可使處理器恢復(fù)正常工作。

        2.2.1.7 復(fù)位控制功能

        MailBox設(shè)有通信時的容錯機制。該機制由看門狗定時器觸發(fā)對方主機中斷,對方主機會采取相應(yīng)措施來恢復(fù)該錯誤,這種恢復(fù)機制主要是通過對方主機配置軟件向MailBox發(fā)出控制指令,而MailBox中設(shè)有對主機核復(fù)位的功能,該功能可以復(fù)位軟件執(zhí)行過程以達(dá)到糾正異常的情況。

        2.2.2 數(shù)據(jù)共享區(qū)(DPRAM)

        數(shù)據(jù)共享區(qū)采用雙端口靜態(tài)隨機存儲器(DPRAM)實現(xiàn),作為嵌入式處理器和數(shù)字信號處理器直接共享資源。DPRAM還提供了信號量機制來支持對共享資源的仲裁。

        從整體架構(gòu)分析,DPRAM的接口一般為mem讀寫接口,而不是處理器需要的PLB總線接口和AXI總線接口,因此必須在DPRAM的兩個讀寫接口外分別添加時序轉(zhuǎn)換接口(可根據(jù)實際應(yīng)用在以下接口中選擇兩個),包括PLB-DPRAM接口、AXI-DPRAM接口、DCR-DPRAM接口、硬線接口、低功耗接口申請接口。其中,PLB-DPRAM接口、AXI-DPRAM接口用于處理器核間的數(shù)據(jù)交互,而DCR-DPRAM接口、AXI-DPRAM接口用于處理器間的控制流交互。

        為降低功耗,需要給控制邏輯增加相應(yīng)的低功耗申請接口。上層設(shè)備可根據(jù)需要選擇是否在處理器空閑時進行休眠狀態(tài),以減小功耗。

        硬線接口的作用是通過外部接口設(shè)置重要寄存器的復(fù)位值,使用者可根據(jù)芯片的使用場景通過硬線對寄存器復(fù)位值進行重置。

        DPRAM控制器是PLB和AXI總線的從設(shè)備,因此能夠接收PLB和AXI接口的各種類型的訪問操作。為增加通信效率,DPRAM應(yīng)支持單拍、line和Burst操作,且應(yīng)能夠響應(yīng)PLB一側(cè)的非法操作。

        2.2.3 FPGA可編程邏輯(FPGA)

        FPGA為內(nèi)嵌在異構(gòu)多核處理器中的現(xiàn)場可編程邏輯門陣列,可以支持用戶根據(jù)設(shè)計需求對其進行編程從而實現(xiàn)所需求的電路功能,可支持嵌入式處理器和數(shù)字信號處理器對其內(nèi)部資源訪問,支持PROM和軟件兩種方式進行FPGA的配置。FPGA包含F(xiàn)PGA處理器接口電路、FPGA配置電路及IP核。

        其中FPGA處理器接口模塊主要提供嵌入式處理器和數(shù)字信號處理器訪問FPGA內(nèi)部資源的接口,功能框圖如圖3所示。嵌入式處理器或數(shù)字信號處理器如需訪問FPGA內(nèi)部資源,需首先向PLB/AXI仲裁邏輯發(fā)起訪問請求,等待授權(quán)后方能通過PLB/AXI到FPGA接口邏輯訪問到FPGA內(nèi)部資源,訪問完成后需通知PLB/AXI仲裁邏輯解除占用[13-15]。

        圖3 FPGA處理器接口模塊框圖

        FPGA配置電路實現(xiàn)PROM和軟件方式來進行IP的配置,通過將應(yīng)用指定的配置數(shù)據(jù)下載入內(nèi)部配置存儲器的方法完成配置下載操作。

        3 仿真驗證

        3.1 模塊級驗證

        模塊級驗證是在計算機仿真環(huán)境中,借助于仿真工具,運行模塊級測試平臺和測試用例,向被測試模塊/IP注入測試激勵,以模擬模塊/IP的各種應(yīng)用場景,達(dá)到預(yù)期的代碼覆蓋率和功能覆蓋率。

        模塊級驗證的對象是異構(gòu)多核處理器設(shè)計中用到的模塊/IP。在各模塊代碼設(shè)計完成后,首先是在計算機上進行基于各模塊功能的獨立虛擬驗證。參照各模塊的功能規(guī)范,根據(jù)對模塊功能的理解和可能的各種應(yīng)用環(huán)境,編寫測試平臺和測試用例代碼來產(chǎn)生激勵,模擬各種應(yīng)用環(huán)境來測試驗證各模塊的功能,確保各模塊功能的正確性。模塊級驗證,可檢查各個模塊在系統(tǒng)集成之前的功能是否正確,性能是否滿足設(shè)計的要求。根據(jù)各模塊特點,部分模塊無法在IP級進行仿真,需在系統(tǒng)集成后才能進行仿真驗證[16]。模塊/IP級仿真驗證平臺如圖4所示。

        圖4 模塊/IP級仿真驗證平臺

        3.2 虛擬仿真驗證

        異構(gòu)多核處理器芯片虛擬仿真驗證平臺如圖5所示。虛擬原型驗證平臺的工作流程為,分別編寫嵌入式處理器平臺測試軟件與數(shù)字信號處理器平臺測試軟件,分別經(jīng)過編譯連接后,生成存儲器映像文件到存儲器模型中,系統(tǒng)復(fù)位撤消后,處理器和DSP(數(shù)字信號處理器)分別從外部FLASH模型中讀取指令,之后控制整個虛擬驗證平臺。另外使用外部邏輯監(jiān)控處理器的工作,或使用程序讀寫處理器的相關(guān)存儲,以判斷處理器的工作狀態(tài)正確與否。

        圖5 異構(gòu)多核處理器芯片虛擬仿真驗證平臺框圖

        3.3 FPGA原型驗證

        FPGA原型驗證,通過開發(fā)異構(gòu)多核處理器的FPGA原型驗證板,將HMP的RTL級電路設(shè)計經(jīng)EDA工具綜合、實現(xiàn)后下載到FPGA芯片中,測試程序準(zhǔn)備好后,使用專用編程電纜將程序燒寫到FPGA驗證板上的FLASH器件上,之后上電后將復(fù)位信號設(shè)置足夠長復(fù)位時間后置為不復(fù)位,此時處理器將自動從FLASH地址32’hFFFFFFFC取出第一條指令,之后按照指令跳轉(zhuǎn),直到測試完成。

        FPGA驗證和虛擬平臺驗證兩者是相輔相成的,虛擬驗證是進行精細(xì)的驗證,F(xiàn)PGA則可模擬芯片實際使用環(huán)境,對芯片進行大數(shù)據(jù)量長時間的測試,兩者配合能夠盡可能地提高芯片驗證的覆蓋率,并且FPGA驗證平臺稍加改進,即可改為芯片應(yīng)用驗證平臺,還能夠驗證配套軟件驅(qū)動的正確性[17-18]。

        4 結(jié)束語

        介紹了一種基于“CPU+DSP+FPGA+IO”結(jié)構(gòu)的異構(gòu)多核處理器芯片的設(shè)計方案,實現(xiàn)了信號采樣處理、總線協(xié)議處理、數(shù)據(jù)處理及控制功能。目前此芯片一次流片成功,通過對芯片的功能、性能測試以及系統(tǒng)應(yīng)用驗證結(jié)果表明,該款芯片可以在單片SoC上實現(xiàn)多個系統(tǒng)的主要功能,且通過多數(shù)據(jù)接口、高精度采集以及異構(gòu)多核可定制SoC靈活實現(xiàn)了新一代信息融合處理系統(tǒng)小型化、低功耗、高可靠性及國產(chǎn)化水平,進一步提高了對于環(huán)境適應(yīng)性的要求,并可以廣泛推廣到其他新一代信息處理系統(tǒng)中。

        猜你喜歡
        嵌入式功能
        也談詩的“功能”
        中華詩詞(2022年6期)2022-12-31 06:41:24
        TS系列紅外傳感器在嵌入式控制系統(tǒng)中的應(yīng)用
        電子制作(2019年7期)2019-04-25 13:17:14
        嵌入式系統(tǒng)通信技術(shù)的應(yīng)用
        電子制作(2018年18期)2018-11-14 01:48:16
        搭建基于Qt的嵌入式開發(fā)平臺
        關(guān)于非首都功能疏解的幾點思考
        懷孕了,凝血功能怎么變?
        媽媽寶寶(2017年2期)2017-02-21 01:21:24
        “簡直”和“幾乎”的表達(dá)功能
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        Altera加入嵌入式視覺聯(lián)盟
        中西醫(yī)結(jié)合治療甲狀腺功能亢進癥31例
        亚洲爆乳大丰满无码专区| 蜜臀av无码人妻精品| 天堂а√在线中文在线新版| 国产91福利在线精品剧情尤物| 蜜桃视频在线免费观看完整版| 亚洲中文字幕乱码第一页| 极品少妇小泬50pthepon| 亚洲av无码成人精品区天堂 | 国语对白免费观看123| 毛片无码国产| 亚洲欧美另类自拍| 精品亚洲视频免费观看网站| 亚洲麻豆视频免费观看| 尤物网址在线观看| 国产97色在线 | 免| 在线观看播放免费视频| 日本中文字幕一区二区有码在线| 久久夜色精品国产噜噜av| 亚洲国产精品午夜电影| 久久国产精品色av免费看| 亚洲av首页在线| 7878成人国产在线观看| 被驯服人妻中文字幕日本| 国产日产久久高清ww| 人人摸人人操| 国产乱子伦精品免费女| 成人影院视频在线播放| 久久国产成人精品国产成人亚洲| 亚洲av无码片一区二区三区| 搡老女人老妇女老熟妇69| 国内精品少妇高潮视频| 免费人成在线观看视频播放| 国产亚洲欧洲AⅤ综合一区| 男人天堂插插综合搜索| 性做久久久久久久| 1769国产精品短视频| 国产网红一区二区三区| 伊人久久大香线蕉av波多野结衣| 亚洲最大av资源站无码av网址| 亚洲无码毛片免费视频在线观看| 亚洲av高清天堂网站在线观看|