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

        ?

        高性能嵌入式并行計(jì)算架構(gòu)的研究

        2018-05-04 03:35:40孟振華仲雪潔張宏波
        自動(dòng)化與儀表 2018年4期
        關(guān)鍵詞:嵌入式優(yōu)化模型

        孟振華 ,柳 柱 ,仲雪潔 ,張宏波 ,楊 誠(chéng)

        (1.北京航天自動(dòng)控制研究所,北京 100854;2.宇航智能控制技術(shù)國(guó)家級(jí)重點(diǎn)實(shí)驗(yàn)室,北京 100854)

        高性能計(jì)算作為一種國(guó)之重器,為解決經(jīng)濟(jì)發(fā)展、科學(xué)研究、社會(huì)進(jìn)步和國(guó)防建設(shè)等過程中遇到的問題發(fā)揮了巨大的作用。長(zhǎng)久以來,對(duì)高性能計(jì)算的研究,各國(guó)都從未停止過。然而,高性能計(jì)算中心由于計(jì)算單元規(guī)模龐大,系統(tǒng)復(fù)雜,體積、功耗巨大等,在嵌入式領(lǐng)域很難發(fā)力。

        在互聯(lián)網(wǎng)信息時(shí)代,飛行器導(dǎo)航系統(tǒng)、綜合電子系統(tǒng)、圖像處理系統(tǒng)、衛(wèi)星數(shù)據(jù)處理、微型大數(shù)據(jù)系統(tǒng)等領(lǐng)域,對(duì)嵌入式系統(tǒng)的超實(shí)時(shí)特性、信息綜合處理、超高速運(yùn)算的需求持續(xù)增長(zhǎng)。既要滿足對(duì)高速信息的實(shí)時(shí)交互能力,對(duì)大數(shù)據(jù)量、大計(jì)算量的高速處理能力,還需要具有對(duì)針對(duì)應(yīng)用變化的自適應(yīng)能力,在實(shí)際應(yīng)用中對(duì)系統(tǒng)所面臨的體積和功耗也急需解決。

        受傳統(tǒng)高性能計(jì)算領(lǐng)域中多核架構(gòu)技術(shù)思想的啟發(fā),嵌入式處理器上的多核技術(shù)也取得長(zhǎng)足發(fā)展,目前已經(jīng)有了常見的多核DSP和ARM處理器芯片。在國(guó)外谷歌推出的MapReduce編程模型,加州伯克利大學(xué)AMP實(shí)驗(yàn)室的Spark MapReduce模型,Nokia研究中心開發(fā)的Disco模型等均已獲得良好的并行加速效果。在國(guó)內(nèi)陳天洲等人研發(fā)的多核平臺(tái)可以很好地支持多核間的任務(wù)調(diào)度;林明亮和祝永新在多核仿真器方面,研發(fā)出具有評(píng)估多核處理器性能的仿真驗(yàn)證器;國(guó)防科學(xué)技術(shù)大學(xué)的學(xué)者們開發(fā)出在多核平臺(tái)上運(yùn)行的操作系統(tǒng),并實(shí)現(xiàn)主、輔核的地位對(duì)等[1]。

        目前對(duì)多核系統(tǒng)的研究大多通過增加處理器核數(shù)來增加系統(tǒng)性能,或基于某一具體問題加以解決,通用性差,功耗墻、存儲(chǔ)墻、編程墻、通信墻、架構(gòu)墻、可靠性墻[2]這六大挑戰(zhàn)依然是高性能嵌入式領(lǐng)域的難題。對(duì)此,文中分析當(dāng)前國(guó)內(nèi)外研究現(xiàn)狀,針對(duì)高性能嵌入式計(jì)算領(lǐng)域的關(guān)鍵難題,進(jìn)行FPGA+DSP的多核并行計(jì)算架構(gòu)研究。

        1 高性能嵌入式并行計(jì)算架構(gòu)

        當(dāng)前,對(duì)大數(shù)據(jù)量信息的快速處理能力,已成為評(píng)測(cè)嵌入式系統(tǒng)性能的一個(gè)重要指標(biāo),實(shí)時(shí)性、多信息融合、低功耗、小型化等同樣,已成為嵌入式處理器設(shè)計(jì)過程中普遍需要解決的問題。

        面對(duì)這些問題,可采取的解決辦法有2種,一種是采用更先進(jìn)的處理器,另一種是采用多處理器協(xié)同工作。然而,這2種辦法只能在一定時(shí)期內(nèi)解決問題,隨著需求的進(jìn)一步增加,設(shè)計(jì)者要選用更加先進(jìn)的處理器或者更多的處理器。處理器的開發(fā)速度遠(yuǎn)不如信息量增加速度快,單核處理器已經(jīng)很難滿足當(dāng)前系統(tǒng)對(duì)各項(xiàng)指標(biāo)的要求。而多個(gè)處理器共同工作的模式,會(huì)因?yàn)樘幚砥鲾?shù)量增多而增大對(duì)系統(tǒng)體積的占用,功耗增多,同時(shí)多處理器協(xié)同工作還會(huì)帶來處理器之間通信、調(diào)度等諸多問題。

        多核處理器的出現(xiàn),在很大程度上滿足了系統(tǒng)目前對(duì)高速性、實(shí)時(shí)性、多信息融合、低功耗、小型化等要求。然而,多核嵌入式處理器更多地應(yīng)用于實(shí)際工程項(xiàng)目,依然是沿用傳統(tǒng)的設(shè)計(jì)思路,多采用類似于傳統(tǒng)的多處理器架構(gòu)。如何更好地挖掘多核處理器潛在的處理能力,是設(shè)計(jì)者所需要考慮的。在系統(tǒng)架構(gòu)設(shè)計(jì)中,如果能夠揚(yáng)長(zhǎng)避短,結(jié)合不同的處理器,構(gòu)建新型并行處理架構(gòu),勢(shì)必大大增強(qiáng)系統(tǒng)的整體性能。

        在此,采用DSP+FPGA架構(gòu),結(jié)合FPGA和DSP的優(yōu)點(diǎn),兼顧速度和靈活性;FPGA與DSP相比,前者具有良好的硬件化并行優(yōu)勢(shì),可在數(shù)據(jù)前期的預(yù)處理過程中發(fā)揮其優(yōu)勢(shì),后期復(fù)雜算法的執(zhí)行由數(shù)字信號(hào)處理能力較強(qiáng)的DSP來完成。就DSP而言,雖然目前集成度越來越高,處理頻率也越來越高,已突破1 GHz,但在數(shù)據(jù)傳輸過程中,由于DSP的接口集成特性,使得數(shù)據(jù)的傳輸能力大大降低,從而整體上影響了處理效率。與此同時(shí),F(xiàn)PGA擁有豐富的I/O口資源可供配置,與各種功能內(nèi)核相配合,能夠非常便利地完成數(shù)據(jù)的快速傳輸,相比之下FPGA對(duì)復(fù)雜算法的處理能力遜色很多。因此,最好的組合方式是FPGA+DSP,使DSP的高速數(shù)據(jù)處理能力與FPGA的高速以及組合、時(shí)序邏輯控制能力融合在一起,綜合兩者的優(yōu)勢(shì),達(dá)到高速高性能信號(hào)處理系統(tǒng)的目的;整個(gè)系統(tǒng)結(jié)構(gòu)靈活可變,又兼具通用性,在提高算法執(zhí)行效率的同時(shí)也縮短了設(shè)計(jì)周期。系統(tǒng)的整體架構(gòu)如圖1所示。

        圖1 基于FPGA+DSP的系統(tǒng)整體架構(gòu)Fig.1 Overall architecture of the system based on FPGA+DSP

        該設(shè)計(jì)的處理核心是DSP,因?yàn)镈SP的強(qiáng)大處理能力可方便地完成算法的快速運(yùn)算,而在控制方面FPGA可以發(fā)揮靈活以及擁有多種輸入輸出引腳的特點(diǎn)。這種組合式設(shè)計(jì)加上大容量外設(shè)存儲(chǔ)器而成的高性能信息處理系統(tǒng),是當(dāng)前高性能信號(hào)處理的主流設(shè)計(jì)理念。

        2 FPGA內(nèi)部架構(gòu)設(shè)計(jì)

        FPGA模塊主要完成信號(hào)采集、時(shí)序控制、大容量存儲(chǔ)和讀取以及外圍電路管理等。其中,重點(diǎn)在于實(shí)現(xiàn)對(duì)采集到的信息進(jìn)行大容量快速、同步存/讀取,F(xiàn)PGA內(nèi)部并行架構(gòu)設(shè)計(jì),其次還有接口模塊設(shè)計(jì)、通信模塊等。利用FPGA可重構(gòu)特性,進(jìn)行可重構(gòu)設(shè)計(jì),大大增加了設(shè)計(jì)的靈活性。

        FPGA內(nèi)的并行架構(gòu)由FPGA內(nèi)部固有的硬核和通過設(shè)計(jì)構(gòu)建的軟核組成,可重配置區(qū)域作為預(yù)留資源。硬核與軟核一起構(gòu)成主從架構(gòu)的處理模式。根據(jù)任務(wù)的不同,軟核處理器的功能也不同,其中軟核負(fù)責(zé)進(jìn)行單元計(jì)算和相關(guān)模塊的控制總體??芍嘏渲脜^(qū)域作為補(bǔ)充部分,根據(jù)軟核處理器功能的需要,適當(dāng)?shù)卦鰷p資源,甚至重構(gòu)軟核處理器。

        以簡(jiǎn)單的圖像處理為例,可以構(gòu)建一個(gè)兩級(jí)流水,硬核負(fù)責(zé)圖像采集、預(yù)處理及任務(wù)分配,軟核執(zhí)行具體的任務(wù)并給出處理結(jié)果。FPGA內(nèi)的并行架構(gòu)如圖2所示。

        圖2 FPGA內(nèi)的并行架構(gòu)Fig.2 Parallel architecture within FPGA

        2.1 MicroBlaze軟核處理器

        MicroBlaze軟核處理器是一個(gè)可配置的、靈活的處理器。它根據(jù)具體任務(wù)的需要,利用FPGA內(nèi)部豐富的通用資源和IP核去配置。根據(jù)系統(tǒng)需求,可適當(dāng)增減MicroBlaze核數(shù)量。對(duì)MicroBlaze的硬件設(shè)計(jì)以及XMK操作系統(tǒng)的配置在EDK中進(jìn)行,對(duì)軟件的設(shè)計(jì)和調(diào)試主要在SDK中進(jìn)行,主要設(shè)計(jì)流程如圖3所示。

        圖3 MicroBlaze軟核的設(shè)計(jì)和調(diào)試Fig.3 Design and debuge the MicroBlaze soft core

        2.2 大容量數(shù)據(jù)存讀取設(shè)計(jì)

        在大容量數(shù)據(jù)存讀去過程中,采用乒乓緩沖設(shè)計(jì),設(shè)計(jì)FPGA+DDR2 SDRAM的高速接口,以保證數(shù)據(jù)可以實(shí)現(xiàn)同時(shí)存讀取。這樣設(shè)計(jì)的好處就是,在滿足大容量存儲(chǔ)的同時(shí)還可以進(jìn)行數(shù)據(jù)的同步存儲(chǔ)和讀取,相對(duì)于以往的DDR2緩存完一幀的數(shù)據(jù),F(xiàn)PGA才可以進(jìn)行讀取,避免了等待讀取的時(shí)間。

        同時(shí),在FPGA內(nèi)部構(gòu)建了2塊雙口RAM,再利用EMIF總線將DSP和雙口RAM互聯(lián)。采用乒乓緩沖的方式,把經(jīng)FPGA處理后的數(shù)據(jù)再交替寫入雙口RAM,每個(gè)DSP從對(duì)應(yīng)的RAM讀取數(shù)據(jù)[3]。在設(shè)計(jì)過程中,只要保證FPGA存入雙口RAM數(shù)據(jù)的速度大于DSP一次讀取與處理數(shù)據(jù)的速度之和即可。其設(shè)計(jì)流程如圖4所示。

        圖4 大容量快速存/讀取系統(tǒng)模型Fig.4 Large capacity fast memory/read system model

        3 多核DSP并行架構(gòu)設(shè)計(jì)

        多核并行架構(gòu)的設(shè)計(jì),可以極大地發(fā)揮DSP的潛在性能,提高效率。多核DSP的出現(xiàn)為并行性設(shè)計(jì)帶來無限可能,采用了TI公司的嵌入式處理器TMS320C6678進(jìn)行架構(gòu)設(shè)計(jì)與實(shí)現(xiàn),并分析其多核之間并行編程方式。

        3.1 多核并行編程技術(shù)

        多核并行編程模型,是在多核處理器中,用于編寫適合多核架構(gòu)的可編譯執(zhí)行的架構(gòu)模型。目前常用的主要有過程交互方式。

        3.1.1 過程交互方式

        由于處理器之間的通信機(jī)制不同,可將過程交互方式劃分為共享存儲(chǔ)編程[4](如圖5所示)、消息傳遞編程[4](如圖6所示)。

        圖5 共享模型Fig.5 Sharing model

        圖6 消息傳遞模型Fig.6 Messaging transfer model

        在基于共享存儲(chǔ)(shared memory)的編程模型中,全部的處理器都享有同時(shí)對(duì)內(nèi)存同一區(qū)域的訪問權(quán)限。

        消息傳遞(message passing)模型中,各處理器間的消息通信由一個(gè)互連的網(wǎng)絡(luò)提供。進(jìn)程進(jìn)行消息傳遞的一個(gè)主要目的是實(shí)現(xiàn)進(jìn)程間的相互通信和同步。

        3.1.2 基于共享內(nèi)存的并行架構(gòu)

        通過對(duì)基于過程交互的2種并行編程技術(shù)的分析,并結(jié)合本設(shè)計(jì)的數(shù)據(jù)交互過程中模型的需求,擬采用共享存儲(chǔ)模型,通過對(duì)全局地址空間內(nèi)存共享,極大地提高了處理器之間數(shù)據(jù)共享和交互,負(fù)載均衡得以方便實(shí)現(xiàn)。分析2種并行編程架構(gòu),共享內(nèi)存模型適合單核多處理器,而消息傳遞并行編程模型適合多處理器架構(gòu)。故在此選用了基于共享內(nèi)存的并行編程模型。

        基于共享的內(nèi)存的并行方式,目前主要有主從模型、數(shù)據(jù)流模型、OpenMP模型三大主要并行程序處理模型。

        比較這3種方式,主從模型、數(shù)據(jù)流模型較為復(fù)雜,且為了負(fù)載的平衡,需要考慮算法處理時(shí)間的協(xié)調(diào)、任務(wù)的合理分割以及映射核的處理,而OpenMP的使用就相對(duì)簡(jiǎn)單一些,大多只需要考慮該循環(huán)數(shù)據(jù)上的相關(guān)性,然后在其循環(huán)前面加上OpenMP的相關(guān)指令,就可以實(shí)現(xiàn)并行,這就降低了并行編程的難度和復(fù)雜度[5]。

        3.2 OpenMP編程模型

        OpenMP的編程模型以線程為基礎(chǔ),通過編譯指導(dǎo)語句和運(yùn)行時(shí)并行函數(shù)庫來顯性地指導(dǎo)程序并行化。OpenMP的執(zhí)行模型如圖7所示,即Fork-Join 執(zhí)行模型[4],當(dāng)一個(gè)主線程(master thread)執(zhí)行到Fork處時(shí),則創(chuàng)建新的線程或者喚醒已有的并行線程;在Fork-Join之間的區(qū)域?yàn)椴⑿袇^(qū)域也是程序執(zhí)行效率是否能提高的關(guān)鍵區(qū)域;當(dāng)程序執(zhí)行到Join處時(shí),并行區(qū)域的線程重新匯合成一個(gè)“主線程(master thread)”[6]。

        圖7 Fork-Join的編程模型Fig.7 Fork-Join programming model

        Fork-Join的執(zhí)行流程如下:程序開始時(shí)只有1個(gè)程序入口,程序也只有1個(gè)主線程;隨著程序的執(zhí)行,創(chuàng)建或者喚醒已有的并行線程;當(dāng)執(zhí)行完成并行區(qū)域的程序后,程序的控制權(quán)又回到主線程的手中。

        4 并行架構(gòu)性能測(cè)試

        通過算法改進(jìn),在以共享內(nèi)存的OpenMP編程模型框架下進(jìn)行算法設(shè)計(jì)和優(yōu)化,最后對(duì)應(yīng)用程序的性能加速比進(jìn)行實(shí)際性能測(cè)試。試驗(yàn)平臺(tái)在TMS320C6678 DSP上實(shí)現(xiàn)。

        4.1 測(cè)試結(jié)果及分析

        文中對(duì)常用的圖像處理算法——邊緣檢測(cè)算法進(jìn)行分析優(yōu)化。通過OpenMP的parallel sections指令,把將2個(gè)方向上的梯度計(jì)算進(jìn)行并行化處理[5]。分別利用CPU的單核、雙核、三核和四核進(jìn)行測(cè)試,部分測(cè)試代碼如圖8所示。

        經(jīng)過算法分析,并優(yōu)化可并行部分,再分別設(shè)置用單核、雙核、三核和四核去執(zhí)行優(yōu)化后的算法,最后測(cè)試優(yōu)化之后算法的運(yùn)行時(shí)間,優(yōu)化前后的并行計(jì)算時(shí)間見表1。再根據(jù)優(yōu)化前后的時(shí)間,計(jì)算出并行加速比,其優(yōu)化前后的對(duì)比見表1。

        圖8 部分OpenMP編程示例Fig.8 Part of the OpenMP programming examples

        表1 OpenMP并行優(yōu)化前后時(shí)間對(duì)比和加速比對(duì)比Tab.1 Comparison of time and speedup ratio before and after optimization OpenMP parallel

        根據(jù)表1數(shù)據(jù)得到優(yōu)化前后的并行加速比曲線如圖9所示。

        圖9 OpenMP優(yōu)化前后的加速比Fig.9 Speedup ratio of OpenMP before and after optimization

        4.2 結(jié)果分析

        由試驗(yàn)結(jié)果可知,在采用相同處理器的前提下,通過傳統(tǒng)架構(gòu)運(yùn)行邊緣檢測(cè)算法,速度較慢,而采用基于共享內(nèi)存模式的OpenMP并行編程模型,可以極大地提高算法的執(zhí)行速度,且大大降低系統(tǒng)的資源消耗。尤其對(duì)于具有較多循環(huán)的算法,加速效果更加明顯。

        5 結(jié)語

        隨著當(dāng)前對(duì)嵌入式系統(tǒng)快速、實(shí)時(shí)、低功耗等性能的迫切需求,高性能嵌入式并行計(jì)算是當(dāng)前的研究熱點(diǎn)之一?;贔PGA+DSP的多核并行計(jì)算架構(gòu),采用連接個(gè)體局部信息交互的處理器A+處理器B的系統(tǒng)多處理器自適應(yīng)架構(gòu)。該架構(gòu)既可以滿足任務(wù)對(duì)于快速、實(shí)時(shí)的要求,也可以滿足當(dāng)任務(wù)變化時(shí)及時(shí)的適應(yīng)能力,在滿足同等性能的同時(shí)又極大地減少處理器的數(shù)量,降低對(duì)系統(tǒng)空間的占有量和功耗的消耗,從而整體上極大地提高了資源利用率。在當(dāng)前嵌入式領(lǐng)域——工業(yè)生產(chǎn)領(lǐng)域、衛(wèi)星導(dǎo)航和遙測(cè)領(lǐng)域、圖像處理領(lǐng)域、飛行器導(dǎo)航領(lǐng)域等需要對(duì)大量數(shù)據(jù)快速、實(shí)時(shí)處理的前提下,設(shè)計(jì)高性能的嵌入式處理系統(tǒng),對(duì)解決當(dāng)前難題具有重大意義。在當(dāng)前軍民融合的背景下,在其他領(lǐng)域也都有廣闊的應(yīng)用前景。

        參考文獻(xiàn):

        [1] 張琪,王正勇,余艷梅.基于多核DSP的OpenMP研究與實(shí)現(xiàn)[J].圖像與信號(hào)處理,2016,5(4):147-154.

        [2] 王慶,季振洲,朱素霞.高性能嵌入式計(jì)算幾個(gè)關(guān)鍵問題及其研究進(jìn)展[J].智能計(jì)算機(jī)與應(yīng)用,2013,3(4):71-75.

        [3]郭富民.基于FPGA和多核DSP的高速圖像傳輸與處理系統(tǒng)的設(shè)計(jì)[D].武漢:華中科技大學(xué),2012.

        [4] 吳保東.眾核處理器的并行編程模型性能分析與優(yōu)化[D].鄭州:鄭州大學(xué),2015.

        [5] 王子聰.基于OpenMP的多核DSP并行優(yōu)化方法的研究及應(yīng)用[D].長(zhǎng)沙:國(guó)防科學(xué)技術(shù)大學(xué),2017.

        [6] 江德.并行計(jì)算系統(tǒng)中任務(wù)分配問題算法研究[D].大連:大連理工大學(xué),2010.

        猜你喜歡
        嵌入式優(yōu)化模型
        一半模型
        超限高層建筑結(jié)構(gòu)設(shè)計(jì)與優(yōu)化思考
        民用建筑防煙排煙設(shè)計(jì)優(yōu)化探討
        關(guān)于優(yōu)化消防安全告知承諾的一些思考
        一道優(yōu)化題的幾何解法
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
        搭建基于Qt的嵌入式開發(fā)平臺(tái)
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        3D打印中的模型分割與打包
        无码人妻丰满熟妇啪啪网站| 久久露脸国产精品WWW| 国产精品一区二区三级| 青青草免费高清视频在线观看| 五十路一区二区中文字幕| 国产黄色三级一区二区三区四区| 在线观看一级黄片天堂| 亚洲第一最快av网站| 极品粉嫩小泬无遮挡20p| www插插插无码免费视频网站| 一区二区三区日韩亚洲中文视频| 国产一区二区欧美丝袜| 手机在线免费看av网站| 大香蕉青青草视频在线| 成人影院在线观看视频免费| 国产大屁股视频免费区| 毛片无码国产| 福利网址在线观看| 美女露屁股无内裤视频| 久久国产精品色av免费看| 日韩中文字幕版区一区二区三区| 一本一道人人妻人人妻αv| 亚洲av无码不卡久久| 国产真人无遮挡作爱免费视频 | 白白白色视频在线观看播放| 国产精品大片一区二区三区四区| 国产性感丝袜美女av| 亚洲性av少妇中文字幕| av网站在线观看入口| 欧美video性欧美熟妇| 女人夜夜春高潮爽a∨片传媒| 一本大道久久精品 东京热| 国产精品女同一区二区久| 日本视频一区二区三区在线| 男女18禁啪啪无遮挡激烈网站 | 爽妇网国产精品| 久久这里只有精品黄色| 一区二区三区蜜桃av| 天堂中文а√在线| 亚洲欧美国产双大乳头| 久久99久久99精品免观看不卡|