aaa视频网站,国产最新进精品视频,国产主播一区二区,999热精品视频,а√天堂资源8在线官网在线,国产免费不卡av,麻豆国产视频

一種可擴(kuò)展智能圖形圖像處理的加速裝置和方法

文檔序號:10570640閱讀:561來源:國知局
一種可擴(kuò)展智能圖形圖像處理的加速裝置和方法
【專利摘要】本發(fā)明公開了一種可擴(kuò)展智能圖像處理加速裝置和加速方法,所述加速裝置包括智能圖像處理單元和智能圖像處理驅(qū)動單元,其中,所述智能圖像處理驅(qū)動單元,用于對智能圖像處理單元進(jìn)行配置,包括根據(jù)原始數(shù)據(jù)、需執(zhí)行的任務(wù)以及所采用的圖像處理算法生成具體配置信息,并將所述配置信息傳送給智能圖像處理單元;所述智能圖像處理單元,用于加載圖像處理算法,并根據(jù)所述配置信息執(zhí)行智能圖像處理,并對其進(jìn)行加速。
【專利說明】
一種可擴(kuò)展智能圖形圖像處理的加速裝置和方法
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及圖形圖像處理的技術(shù)領(lǐng)域,具體涉及一種可擴(kuò)展智能圖形圖像處理的加速裝置和加速方法。
【背景技術(shù)】
[0002]目前圖像信息的處理已經(jīng)越來越成為與人們生活緊密相關(guān)的基礎(chǔ)技術(shù),圖像中所包含的巨大信息量也成為人工智能技術(shù)領(lǐng)域的研究重點(diǎn)。從手機(jī)中的圖像增強(qiáng)、美顏功能,到基于PC的圖像內(nèi)容的分類與理解,都離不開針對圖像的密集運(yùn)算。但目前的計算方案在硬件成本及功耗需求上都非常高。
[0003]目前的圖像信息處理計算方案主要基于CPU,GPU,或DSP處理器來實(shí)現(xiàn),單純的CPU已經(jīng)無法滿足復(fù)雜的圖像處理及人工智能算法處理性能要求,而像GPU,DSP這樣的處理器單元都是從傳統(tǒng)的計算平臺演進(jìn)而來,并且在設(shè)計中需要考慮一定的通用性,這就使它們無法成為一個專注于人工智能的圖像處理算法的最優(yōu)加速方案。同時,人工智能分析算法又有其自身的特點(diǎn)并不斷發(fā)展,無論從計算的要求本身,到對原始數(shù)據(jù)與中間結(jié)果的存取與讀寫,都會導(dǎo)致不同于傳統(tǒng)平臺的計算性能與帶寬瓶頸,并且所需的功耗也會很高,這都要求專注于視覺計算的新方法與新裝置。視覺計算的核心是圖像的處理與其中信息的提取,針對視覺計算核心需求而設(shè)計的方法與裝置有非常大的價值。
[0004]此外,在進(jìn)行智能圖形圖像處理時,例如神經(jīng)網(wǎng)絡(luò)運(yùn)算,運(yùn)算處理速度與數(shù)據(jù)的內(nèi)存讀寫效率直接反應(yīng)出整個系統(tǒng)的實(shí)際算法處理能力,二者的匹配程度會直接影響到系統(tǒng)的性能與功耗。在不同算法的數(shù)據(jù)運(yùn)算與讀寫要求下,如
[0005]何確保數(shù)據(jù)的吞吐不會形成瓶頸,以實(shí)現(xiàn)系統(tǒng)運(yùn)算處理能力的完全發(fā)揮并確保系統(tǒng)整體能效的最大化,一直是系統(tǒng)設(shè)計的核心技術(shù)難題。

【發(fā)明內(nèi)容】

[0006]鑒于上述問題,提出了本發(fā)明實(shí)施例以便提供一種克服上述問題或者至少部分地解決上述問題的一種可擴(kuò)展的智能圖形圖像處理的加速裝置和方法。
[0007]為了解決上述問題,本發(fā)明公開了一種可擴(kuò)展智能圖像處理加速裝置,其特征在于:包括智能圖像處理單元和智能圖像處理驅(qū)動單元。所述智能圖像處理驅(qū)動單元,用于對智能圖像處理單元進(jìn)行配置,包括根據(jù)原始數(shù)據(jù)、需執(zhí)行的任務(wù)以及所采用的圖像處理算法生成具體配置信息,并將所述配置信息傳送給智能圖像處理單元;所述智能圖像處理單元,用于加載圖像處理算法,并根據(jù)所述配置信息執(zhí)行智能圖像處理,并對其進(jìn)行加速。
[0008]本發(fā)明還公開了一種基于可擴(kuò)展智能圖像處理加速裝置的加速方法,其特征在于:所述可擴(kuò)展智能圖像處理加速裝置包括智能圖像處理單元和智能圖像處理驅(qū)動單元,所述加速方法具體包括如下步驟:步驟101,所述智能圖像處理驅(qū)動單元根據(jù)原始數(shù)據(jù)、需執(zhí)行的圖像處理任務(wù)以及所采用的圖像處理算法生成具體配置信息;步驟102,所述智能圖像處理單元加載圖像處理算法,并根據(jù)所述具體配置信息設(shè)置加速處理過程;步驟103,向所述智能圖像處理單元輸入所述原始數(shù)據(jù),并執(zhí)行智能圖像的加速處理;步驟104,輸出加速處理后的結(jié)果。
[0009]其中,所述原始數(shù)據(jù)包括圖像數(shù)據(jù)、圖像處理算法的參數(shù)數(shù)據(jù)以及算法代碼描述數(shù)據(jù)。
[0010]本發(fā)明包括以下優(yōu)點(diǎn):
[0011]本發(fā)明通過采用智能圖像處理驅(qū)動單元對智能圖像處理單元進(jìn)行具體配置的方法,能夠低成本、低功耗、高效率的實(shí)現(xiàn)對智能圖形圖像處理的加速。
[0012]本發(fā)明通過統(tǒng)一運(yùn)算核心子模塊的多核可擴(kuò)展設(shè)計,能夠更好的滿足不同計算密度下的性能升級。
[0013 ]本發(fā)明通過引入自適應(yīng)幀內(nèi)存壓縮子模塊和自適應(yīng)統(tǒng)一行緩存子模塊,在適配各種圖像塊壓縮算法的同時,極大的減少了運(yùn)算過程中對內(nèi)存訪問的帶寬需求與延遲,在提升性能的同時降低了功耗。
【附圖說明】
[0014]圖1是本發(fā)明實(shí)施例中一種可擴(kuò)展智能圖形圖像處理加速裝置的結(jié)構(gòu)示意圖;
[0015]圖2是本發(fā)明實(shí)施例中一種基于可擴(kuò)展智能圖形圖像處理加速裝置的加速方法的流程圖;
[0016]圖3是本發(fā)明另一實(shí)施例中加速處理過程的流程圖。
【具體實(shí)施方式】
[0017]為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和【具體實(shí)施方式】對本發(fā)明作進(jìn)一步詳細(xì)的說明。
[0018]參照圖1,示出了本發(fā)明的一種可擴(kuò)展的智能圖像處理加速裝置的結(jié)構(gòu)示意圖,該加速裝置包括智能圖像處理單元I和智能圖像處理驅(qū)動單元2。智能圖像處理單元I,用于執(zhí)行智能圖形圖像的處理,并對其進(jìn)行加速。智能圖像處理驅(qū)動單元2,用于對智能圖像處理單元I進(jìn)行配置,包括根據(jù)原始數(shù)據(jù)、需執(zhí)行的任務(wù)以及所采用的圖像處理算法生成具體配置信息,并將該配置信息傳送給智能圖像處理單元I。
[0019]其中,該原始數(shù)據(jù)為當(dāng)前圖形圖像處理操作過程中的操作對象,包括圖像信息、格式與尺寸等原始圖像數(shù)據(jù)以及圖像處理算法的參數(shù)數(shù)據(jù)(例如神經(jīng)網(wǎng)絡(luò)參數(shù)等),還可以進(jìn)一步包括算法代碼描述數(shù)據(jù),其可通過圖像采集設(shè)備采集、網(wǎng)絡(luò)傳輸、本地存儲、本地運(yùn)算等方式獲取,加速系統(tǒng)對原始數(shù)據(jù)的來源并無特殊要求。
[0020]該智能圖像處理單元I接收從智能圖像處理驅(qū)動單元2傳送的具體配置信息,然后加載圖像處理算法,并根據(jù)該具體配置信息設(shè)定原始數(shù)據(jù)的讀取操作、數(shù)據(jù)的壓縮/解壓縮操作、具體的緩存操作、內(nèi)部行緩存數(shù)據(jù)的更新操作、數(shù)據(jù)的運(yùn)算操作以及數(shù)據(jù)流的傳送等。更進(jìn)一步地,該智能圖像處理單元I包括控制邏輯子模塊101,自適應(yīng)幀內(nèi)存壓縮子模塊102,自適應(yīng)統(tǒng)一行緩存子模塊303,以及一個或多個統(tǒng)一運(yùn)算核心子模塊104。
[0021]控制邏輯子模塊101,被設(shè)置為依據(jù)智能圖像處理驅(qū)動單元2生成的具體配置信息,控制自適應(yīng)幀內(nèi)存壓縮子模塊102對原始數(shù)據(jù)進(jìn)行讀取與壓縮/解壓縮操作,控制自適應(yīng)統(tǒng)一行緩存子模塊103按照預(yù)定模式組織內(nèi)部緩存數(shù)據(jù)以供統(tǒng)一運(yùn)算核心子模塊104操作處理,并控制各統(tǒng)一運(yùn)算核心子模塊104按照預(yù)定的邏輯或邏輯組合對內(nèi)部緩存數(shù)據(jù)進(jìn)行運(yùn)算。同時,控制邏輯子模塊101還可以進(jìn)一步地控制智能圖像處理單元與外部的數(shù)據(jù)交換。
[0022]自適應(yīng)幀內(nèi)存壓縮子模塊102,被設(shè)置為接收該原始數(shù)據(jù),并根據(jù)控制邏輯子模塊101發(fā)送的控制信號對該原始數(shù)據(jù)進(jìn)行解壓縮后填入自適應(yīng)統(tǒng)一行緩存子模塊103的行緩存中。
[0023]自適應(yīng)統(tǒng)一行緩存子模塊103,被設(shè)置為根據(jù)控制邏輯子模塊101發(fā)送的控制信號緩存自適應(yīng)幀內(nèi)存壓縮子模塊102解壓縮后的數(shù)據(jù)或者由統(tǒng)一運(yùn)算核心子模塊104返回的中間結(jié)果,并生成操作數(shù)據(jù),以求最大限度的減少智能圖像處理單元的外部讀寫行為,減少帶寬需求與延遲。
[0024]一個或多個統(tǒng)一運(yùn)算核心子模塊104,被設(shè)置為加載圖像處理算法,并根據(jù)控制邏輯子模塊101發(fā)送的控制信號執(zhí)行對自適應(yīng)統(tǒng)一行緩存子模塊103中操作數(shù)據(jù)的邏輯或邏輯組合運(yùn)算,將運(yùn)算結(jié)果作為中間結(jié)果寫回到自適應(yīng)統(tǒng)一行緩存子模塊103中,或經(jīng)由自適應(yīng)幀內(nèi)存壓縮子模塊102將運(yùn)算結(jié)果輸出智能圖像處理單元。其中,統(tǒng)一運(yùn)算核心子模塊104為多核可擴(kuò)展結(jié)構(gòu),能夠根據(jù)運(yùn)算需要增加該子模塊的數(shù)量以進(jìn)一步提升數(shù)據(jù)處理能力。
[0025]當(dāng)執(zhí)行任務(wù)無法一次被執(zhí)行完畢時,智能圖像處理驅(qū)動單元2將該執(zhí)行任務(wù)劃分為一個或多個子任務(wù),并生成各子任務(wù)的具體配置信息,控制邏輯子模塊101接收配置信息后,生成控制信號并發(fā)送至自適應(yīng)幀內(nèi)存壓縮子模塊102和自適應(yīng)統(tǒng)一行緩存子模塊103。例如,在圖像識別處理中,如果圖像數(shù)據(jù)過大,可以將一個圖像劃分為多個圖像塊,然后依次對各個圖像塊進(jìn)行識別處理。再例如,在神經(jīng)網(wǎng)絡(luò)算法中,也可以根據(jù)神經(jīng)網(wǎng)絡(luò)層數(shù)的數(shù)量,依次對各層或者多層進(jìn)行處理。此時統(tǒng)一運(yùn)算核心子模塊104生成的運(yùn)算結(jié)果被寫回到自適應(yīng)統(tǒng)一行緩存子模塊103中時,該運(yùn)算結(jié)果作為中間結(jié)果,并依次執(zhí)行下一個子任務(wù)。當(dāng)執(zhí)行任務(wù)可以一次被執(zhí)行完畢時,統(tǒng)一運(yùn)算核心子模塊104生成的運(yùn)算結(jié)果經(jīng)由自適應(yīng)幀內(nèi)存壓縮子模塊102被輸出智能圖像處理單元I。
[0026]作為一優(yōu)選實(shí)施例,在自適應(yīng)統(tǒng)一行緩存子模塊103的存儲空間滿足待處理圖像和某特定算法參數(shù)的緩存要求時,通過只讀取待處理圖像一次來保證最佳的數(shù)據(jù)存取效能;而當(dāng)自適應(yīng)統(tǒng)一行緩存子模塊103的存儲空間無法滿足待處理圖像和某特定算法參數(shù)的緩存要求時,可根據(jù)算法特點(diǎn)調(diào)節(jié)是否需要多次讀取待處理圖像,以實(shí)現(xiàn)在系統(tǒng)資源有限的情況下數(shù)據(jù)處理性能的完全發(fā)揮,保證系統(tǒng)的整體效能最優(yōu)。
[0027]以下,以執(zhí)行任務(wù)為神經(jīng)網(wǎng)絡(luò)算法為例做進(jìn)一步說明。
[0028]假設(shè)某一神經(jīng)網(wǎng)絡(luò)算法定義的網(wǎng)絡(luò)結(jié)構(gòu)中,某一中間層共有N個AXA大小的待處理圖像單元作為輸入智能圖像處理單元I的圖像數(shù)據(jù),其中每個圖像單元數(shù)據(jù)為M Bytes,則該層待處理圖像的總大小為M X NX A XA Bytes。對應(yīng)的參數(shù)矩陣為X個,作為輸入智能圖像處理單元I的參數(shù)數(shù)據(jù),其中每個參數(shù)矩陣的大小為B X B,并且每個參數(shù)的大小為YBytes,則該層參數(shù)矩陣的大小為X XYXBXB Bytes。自適應(yīng)統(tǒng)一行緩存子模塊103可根據(jù)四種不同的狀態(tài)來決定行緩存策略,以實(shí)現(xiàn)系統(tǒng)性能的最大化:
[0029]狀態(tài)一:當(dāng)自適應(yīng)統(tǒng)一行緩存子模塊103的存儲空間大于圖像數(shù)據(jù)與參數(shù)數(shù)據(jù)的總大小MX NXA XA+X X Y X B X B Bytes時,所有待處理的圖像數(shù)據(jù)與對應(yīng)的參數(shù)矩陣數(shù)據(jù)可完全被緩存在自適應(yīng)統(tǒng)一行緩存子模塊103內(nèi),此時所有待處理圖像與對應(yīng)的參數(shù)矩陣數(shù)據(jù)運(yùn)算后的結(jié)果將作為統(tǒng)一運(yùn)算核心子模塊的最終運(yùn)算結(jié)果輸出。
[0030]狀態(tài)二:當(dāng)自適應(yīng)統(tǒng)一行緩存子模塊103的存儲空間大于圖像數(shù)據(jù)的大小MXNXAXA Bytes而小于參數(shù)數(shù)據(jù)的大小XXYXBXB Bytes時,可以將所有待處理圖像數(shù)據(jù)和部分參數(shù)矩陣數(shù)據(jù)緩存在自適應(yīng)統(tǒng)一行緩存子模塊103中,此時所有待處理圖像與已緩存的參數(shù)矩陣運(yùn)算并輸出該部分結(jié)果,同時自適應(yīng)統(tǒng)一行緩存子模塊103中已緩存的已使用完的參數(shù)矩陣不斷被未緩存的參數(shù)矩陣替換,并繼續(xù)同樣的運(yùn)算處理,以保證處理流程不被打斷。當(dāng)所有待處理圖像數(shù)據(jù)與各部分參數(shù)矩陣數(shù)據(jù)均運(yùn)算完畢后,各部分結(jié)果一起作為統(tǒng)一運(yùn)算核心子模塊的最終運(yùn)算結(jié)果輸出。
[0031]狀態(tài)三,當(dāng)自適應(yīng)統(tǒng)一行緩存子模塊的存儲空間小于圖像數(shù)據(jù)的大小MXNXAXABytes而大于參數(shù)數(shù)據(jù)的大小XXYXBXB Bytes時,可以將部分待處理圖像數(shù)據(jù)和全部參數(shù)矩陣數(shù)據(jù)緩存在自適應(yīng)統(tǒng)一行緩存子模塊103中,此時被緩存的部分待處理圖像數(shù)據(jù)與全部參數(shù)矩陣運(yùn)算并輸出該部分運(yùn)算的中間結(jié)果,同時自適應(yīng)統(tǒng)一行緩存子模塊103中緩存的已完成運(yùn)算的待處理圖像數(shù)據(jù)不斷被未緩存的待處理圖像數(shù)據(jù)替換,并繼續(xù)同樣的運(yùn)算處理,以保證處理流程不被打斷,新的運(yùn)算結(jié)果與之前輸出的中間結(jié)果再進(jìn)行累加,直至所有待處理圖像數(shù)據(jù)全部完成運(yùn)算,最后得到的累加結(jié)果將作為統(tǒng)一運(yùn)算核心子模塊的最終運(yùn)算結(jié)果輸出。
[0032]狀態(tài)四:當(dāng)自適應(yīng)統(tǒng)一行緩存子模塊103的存儲空間小于圖像數(shù)據(jù)的大小MXNXAXA Bytes,并且也小于參數(shù)數(shù)據(jù)的大小XXYXBXB Bytes時,可以將部分待處理圖像和部分參數(shù)矩陣數(shù)據(jù)緩存在自適應(yīng)統(tǒng)一行緩存子模塊103中,此時被緩存的部分待處理圖像先與已緩存的參數(shù)矩陣運(yùn)算并輸出該部分的中間結(jié)果,同時自適應(yīng)統(tǒng)一行緩存子模塊103中緩存的已完成運(yùn)算的待處理圖像數(shù)據(jù)不斷被未緩存的待處理圖像數(shù)據(jù)替換,以保證處理流程不被打斷,新的運(yùn)算結(jié)果與之前輸出的中間結(jié)果進(jìn)行累加,直至所有待處理圖像全部完成運(yùn)算,最后得到的累加結(jié)果就是該部分緩存參數(shù)矩陣對應(yīng)的運(yùn)算結(jié)果。此后繼續(xù)緩存新的參數(shù)矩陣數(shù)據(jù)以替換已使用的參數(shù)矩陣數(shù)據(jù),再重復(fù)前述過程直至所有參數(shù)矩陣數(shù)據(jù)完成全部運(yùn)算,此時獲取全部最終結(jié)果。需要注意的是,由于每一個參數(shù)矩陣需要與所有待處理圖像進(jìn)行運(yùn)算,上述過程如果改為先替換自適應(yīng)統(tǒng)一行緩存子模塊103中未被緩存的參數(shù)矩陣數(shù)據(jù),再替換自適應(yīng)統(tǒng)一行緩存子模塊103中未被緩存的圖像數(shù)據(jù)也可實(shí)現(xiàn),只是此時中間結(jié)果需要長時間被存放在自適應(yīng)統(tǒng)一行緩存子模塊103的外部,會消耗額外的存儲空間。
[0033]參照圖2,示出了本發(fā)明實(shí)施例中一種基于可擴(kuò)展智能圖像處理加速裝置的加速方法的流程圖,該可擴(kuò)展智能圖像處理加速裝置包括智能圖像處理單元I和智能圖像處理驅(qū)動單元2,該加速方法具體包括如下步驟:
[0034]步驟101,智能圖像處理驅(qū)動單元2根據(jù)原始數(shù)據(jù)、需執(zhí)行的圖像處理任務(wù)以及所采用的圖像處理算法生成具體配置信息。其中原始數(shù)據(jù)包括圖像數(shù)據(jù)和參數(shù)數(shù)據(jù)。
[0035]步驟102,智能圖像處理單元I加載圖像處理算法,并根據(jù)具體配置信息設(shè)置加速處理過程。
[0036]更進(jìn)一步的,通過控制邏輯子模塊根據(jù)所述具體配置信息生成控制信號,該控制信號用于設(shè)置原始數(shù)據(jù)的讀取操作、數(shù)據(jù)的壓縮/解壓縮操作、具體的緩存操作、內(nèi)部行緩存數(shù)據(jù)的更新操作、數(shù)據(jù)的運(yùn)算操作以及數(shù)據(jù)流的傳送。
[0037]步驟103,向所述智能圖像處理單元輸入所述原始數(shù)據(jù),并執(zhí)行智能圖像的加速處理。
[0038]步驟104,輸出加速處理后的結(jié)果。
[0039]如圖3所示,作為一優(yōu)選實(shí)施例,上述步驟103中的該加速處理進(jìn)一步包括:
[0040]子步驟1031:通過自適應(yīng)幀內(nèi)存壓縮子模塊對原始數(shù)據(jù)進(jìn)行解壓縮操作,并將解壓縮后的數(shù)據(jù)填入到填入自適應(yīng)統(tǒng)一行緩存子模塊103中,進(jìn)行行緩存。
[0041 ]子步驟1032:通過自適應(yīng)統(tǒng)一行緩存子模塊按照預(yù)定模式組織內(nèi)部緩存數(shù)據(jù),生成操作數(shù)據(jù)。
[0042]子步驟1033:通過一個或多個統(tǒng)一運(yùn)算核心子模塊104執(zhí)行對操作數(shù)據(jù)的邏輯運(yùn)算或邏輯組合運(yùn)算,并將運(yùn)算結(jié)果作為中間結(jié)果寫回到自適應(yīng)統(tǒng)一行緩存子模塊103中,或經(jīng)由自適應(yīng)幀內(nèi)存壓縮子模塊102輸出該運(yùn)算結(jié)果。
[0043]其中,統(tǒng)一運(yùn)算核心子模塊104為多核可擴(kuò)展結(jié)構(gòu),能夠根據(jù)運(yùn)算需要增加該子模塊的數(shù)量以進(jìn)一步提升數(shù)據(jù)處理能力。因此,智能圖像處理單元支持多核心可擴(kuò)展,通過改變其運(yùn)算核心的數(shù)目與相關(guān)配置可以實(shí)現(xiàn)處理性能的提升。
[0044]此外,數(shù)據(jù)的輸出不一定在所有操作執(zhí)行完畢后,一般情況下,對于數(shù)據(jù)吞吐量大的算法操作,處理完成一部分則輸出該部分。但本發(fā)明的該方法會盡可能利用緩存中的數(shù)據(jù)以避免中間結(jié)果的重復(fù)讀寫。
[0045]輸出的加速處理后的數(shù)據(jù)可作為完整算法的處理結(jié)果,也可作為后續(xù)算法部分的原始數(shù)據(jù)繼續(xù)參與運(yùn)算。
[0046]在本發(fā)明中,該裝置和方法不但可以對傳統(tǒng)的圖像處理算法進(jìn)行加速,也可以對智能圖像處理算法、如神經(jīng)網(wǎng)絡(luò)算法進(jìn)行加速,尤其是針對深度神經(jīng)網(wǎng)絡(luò)算法,具有明顯的加速處理效果;在算法及性能要求不斷發(fā)展變化的過程中,通過對緩存處理的配置以及運(yùn)算單元的多核可擴(kuò)展設(shè)計,可以靈活的適應(yīng)各種復(fù)雜算法的變化,大大提升處理性能。
[0047]并且,本發(fā)明的該加速裝置和加速方法不僅可以實(shí)現(xiàn)包括圖像美容、圖像合成、圖像檢測等圖像處理任務(wù),還可以對視頻、音頻進(jìn)行加速處理。
[0048]作為一優(yōu)選實(shí)施例,如果設(shè)備中已經(jīng)包含了GPU或DSP等協(xié)處理器,對圖像處理算法,尤其是神經(jīng)網(wǎng)絡(luò)算法進(jìn)行加速的方法可以與GPU,DSP等通用協(xié)處理器配合實(shí)現(xiàn)。可以將原始算法中的部分操作步驟交給協(xié)處理器執(zhí)行,而智能圖像處理單元I僅負(fù)責(zé)處理由驅(qū)動單元2指派的加速任務(wù),在分配合理的情況下可以發(fā)揮出設(shè)備針對某一特定算法的最大效會K。
[0049]作為一優(yōu)選實(shí)施例,所述智能圖像處理單元可以為一個獨(dú)立的硬件加速實(shí)體,也可以為一個抽象的硬件集合,所述各個子模塊可分別、或組合為相關(guān)的子硬件加速實(shí)體,并協(xié)同實(shí)現(xiàn)智能圖像處理單元的全部或部分功能。所述智能圖像處理驅(qū)動單元2可以運(yùn)行在主處理器上,實(shí)現(xiàn)對加速過程的配置。
[0050]以上對本發(fā)明所提供的一種可擴(kuò)展智能圖像處理加速裝置和加速方法進(jìn)行了詳細(xì)介紹,上述記載中應(yīng)用了具體示例對本發(fā)明的原理及實(shí)施方式進(jìn)行了闡述,以上實(shí)施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在【具體實(shí)施方式】及應(yīng)用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應(yīng)理解為對本發(fā)明的限制。
【主權(quán)項(xiàng)】
1.一種可擴(kuò)展智能圖像處理加速裝置,其特征在于:包括智能圖像處理單元和智能圖像處理驅(qū)動單元, 所述智能圖像處理驅(qū)動單元,用于對智能圖像處理單元進(jìn)行配置,包括根據(jù)原始數(shù)據(jù)、需執(zhí)行的任務(wù)以及所采用的圖像處理算法生成具體配置信息,并將所述配置信息傳送給智能圖像處理單元; 所述智能圖像處理單元,用于加載圖像處理算法,并根據(jù)所述配置信息執(zhí)行智能圖像處理,并對其進(jìn)行加速; 所述原始數(shù)據(jù)包括圖像數(shù)據(jù)、圖像處理算法的參數(shù)數(shù)據(jù)。2.根據(jù)權(quán)利要求1所述的裝置,其特征在于:所述智能圖像處理單元進(jìn)一步包括控制邏輯子模塊,自適應(yīng)幀內(nèi)存壓縮子模塊,自適應(yīng)統(tǒng)一行緩存子模塊,以及一個或多個統(tǒng)一運(yùn)算核心子模塊, 所述控制邏輯子模塊,被設(shè)置為依據(jù)所述具體配置信息生成控制信號傳送至自適應(yīng)幀內(nèi)存壓縮子模塊、自適應(yīng)統(tǒng)一行緩存子模塊,以及一個或多個統(tǒng)一運(yùn)算核心子模塊; 所述自適應(yīng)幀內(nèi)存壓縮子模塊,被設(shè)置為接收所述原始數(shù)據(jù),并根據(jù)所述控制信號對所述原始數(shù)據(jù)進(jìn)行解壓縮操作,并將所述解壓縮操作的結(jié)果輸出至自適應(yīng)統(tǒng)一行緩存子模塊; 所述自適應(yīng)統(tǒng)一行緩存子模塊,被設(shè)置為接收所述解壓縮操作的結(jié)果,根據(jù)所述控制信號按照預(yù)定模式組織內(nèi)部緩存數(shù)據(jù),并生成操作數(shù)據(jù); 所述一個或多個統(tǒng)一運(yùn)算核心子模塊,被設(shè)置為加載圖像處理算法,并根據(jù)所述控制信號執(zhí)行對自適應(yīng)統(tǒng)一行緩存子模塊中操作數(shù)據(jù)的邏輯或邏輯組合運(yùn)算,并將運(yùn)算結(jié)果作為中間結(jié)果寫回到自適應(yīng)統(tǒng)一行緩存子模塊中,或經(jīng)由自適應(yīng)幀內(nèi)存壓縮子模塊輸出所述運(yùn)算結(jié)果。3.根據(jù)權(quán)利要求2所述的裝置,其特征在于:所述一個或多個統(tǒng)一運(yùn)算核心子模塊為多核可擴(kuò)展結(jié)構(gòu)。4.根據(jù)權(quán)利要求2所述的裝置,其特征在于:所述自適應(yīng)統(tǒng)一行緩存子模塊根據(jù)其存儲空間與原始數(shù)據(jù)中圖像數(shù)據(jù)和參數(shù)數(shù)據(jù)之間的大小關(guān)系來決定行緩存策略。5.根據(jù)權(quán)利要求4所述的裝置,其特征在于,所述決定行緩存策略具體包括: 當(dāng)自適應(yīng)統(tǒng)一行緩存子模塊的存儲空間大于圖像數(shù)據(jù)與參數(shù)數(shù)據(jù)的總大小時,所有待處理的圖像數(shù)據(jù)與對應(yīng)的參數(shù)矩陣數(shù)據(jù)完全被緩存在自適應(yīng)統(tǒng)一行緩存子模塊內(nèi); 當(dāng)自適應(yīng)統(tǒng)一行緩存子模塊的存儲空間大于圖像數(shù)據(jù)的大小而小于參數(shù)數(shù)據(jù)的大小時,將所有待處理圖像數(shù)據(jù)和部分參數(shù)矩陣數(shù)據(jù)緩存在自適應(yīng)統(tǒng)一行緩存子模塊中,此時所有待處理圖像與已緩存的參數(shù)矩陣執(zhí)行運(yùn)算,同時自適應(yīng)統(tǒng)一行緩存子模塊中已緩存的已使用完的參數(shù)矩陣不斷被未緩存的參數(shù)矩陣替換,并依次執(zhí)行運(yùn)算; 當(dāng)自適應(yīng)統(tǒng)一行緩存子模塊的存儲空間小于圖像數(shù)據(jù)的大小而大于參數(shù)數(shù)據(jù)的大小時,將部分待處理圖像數(shù)據(jù)和全部參數(shù)矩陣數(shù)據(jù)完全緩存在自適應(yīng)統(tǒng)一行緩存子模塊中,此時各部分被緩存的待處理圖像數(shù)據(jù)依次與全部參數(shù)矩陣運(yùn)算并輸出該部分運(yùn)算的中間結(jié)果,同時自適應(yīng)統(tǒng)一行緩存子模塊中緩存的已完成運(yùn)算的待處理圖像數(shù)據(jù)不斷被未緩存的待處理圖像數(shù)據(jù)替換,并繼續(xù)同樣的運(yùn)算處理,新的運(yùn)算結(jié)果與之前輸出的中間結(jié)果再進(jìn)行累加,直到所有待處理圖像數(shù)據(jù)全部完成運(yùn)算; 當(dāng)自適應(yīng)統(tǒng)一行緩存子模塊的存儲空間小于圖像數(shù)據(jù)的大小,并且也小于參數(shù)數(shù)據(jù)的大小時,將部分待處理圖像和部分參數(shù)矩陣數(shù)據(jù)緩存在自適應(yīng)統(tǒng)一行緩存子模塊中,此時被緩存的部分待處理圖像先依次與已緩存的部分參數(shù)矩陣運(yùn)算并輸出該部分的中間結(jié)果,同時自適應(yīng)統(tǒng)一行緩存子模塊中緩存的已完成運(yùn)算的待處理圖像數(shù)據(jù)不斷被未緩存的待處理圖像數(shù)據(jù)替換,新的運(yùn)算結(jié)果與之前輸出的中間結(jié)果進(jìn)行累加,直至所有待處理圖像全部完成運(yùn)算,此后,繼續(xù)緩存新的參數(shù)矩陣數(shù)據(jù)以替換已使用的參數(shù)矩陣數(shù)據(jù),再重復(fù)前述過程直至所有參數(shù)矩陣數(shù)據(jù)全部完成運(yùn)算。6.—種基于可擴(kuò)展智能圖像處理加速裝置的加速方法,其特征在于:所述可擴(kuò)展智能圖像處理加速裝置包括智能圖像處理單元和智能圖像處理驅(qū)動單元,所述加速方法具體包括如下步驟: 步驟101,所述智能圖像處理驅(qū)動單元根據(jù)原始數(shù)據(jù)、需執(zhí)行的圖像處理任務(wù)以及所采用的圖像處理算法生成具體配置信息; 步驟102,所述智能圖像處理單元加載圖像處理算法,并根據(jù)所述具體配置信息設(shè)置加速處理過程; 步驟103,向所述智能圖像處理單元輸入所述原始數(shù)據(jù),并執(zhí)行智能圖像的加速處理; 步驟104,輸出加速處理后的結(jié)果; 其中,所述原始數(shù)據(jù)包括圖像數(shù)據(jù)、圖像處理算法的參數(shù)數(shù)據(jù)。7.根據(jù)權(quán)利要求6所述的方法,其特征在于:步驟102中的根據(jù)所述具體配置信息設(shè)置加速處理過程具體為,通過控制邏輯子模塊依據(jù)所述具體配置信息生成控制信號, 其中所述控制信號用于設(shè)置原始數(shù)據(jù)的讀取操作、數(shù)據(jù)的壓縮/解壓縮操作、具體的緩存操作、內(nèi)部行緩存數(shù)據(jù)的更新操作、數(shù)據(jù)的運(yùn)算操作以及數(shù)據(jù)流的傳送。8.根據(jù)權(quán)利要求6所述的方法,其特征在于:步驟103中的所述加速處理進(jìn)一步包括: 子步驟1031:通過自適應(yīng)幀內(nèi)存壓縮子模塊對所述原始數(shù)據(jù)進(jìn)行解壓縮操作,并將解壓縮后的數(shù)據(jù)填入到填入自適應(yīng)統(tǒng)一行緩存子模塊中進(jìn)行行緩存; 子步驟1032:通過自適應(yīng)統(tǒng)一行緩存子模塊按照預(yù)定模式組織內(nèi)部緩存數(shù)據(jù),并生成操作數(shù)據(jù); 子步驟1033:通過一個或多個統(tǒng)一運(yùn)算核心子模塊執(zhí)行對操作數(shù)據(jù)的邏輯運(yùn)算或邏輯組合運(yùn)算,并將運(yùn)算結(jié)果寫回到自適應(yīng)統(tǒng)一行緩存子模塊中,或經(jīng)由自適應(yīng)幀內(nèi)存壓縮子模塊向外輸出所述運(yùn)算結(jié)果; 其中,所述統(tǒng)一運(yùn)算核心子模塊為多核可擴(kuò)展結(jié)構(gòu)。9.根據(jù)權(quán)利要求8所述的方法,其特征在于:所述自適應(yīng)統(tǒng)一行緩存子模塊根據(jù)其存儲空間與原始數(shù)據(jù)中圖像數(shù)據(jù)和參數(shù)數(shù)據(jù)之間的大小關(guān)系來決定行緩存策略。10.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述決定行緩存策略具體包括: 當(dāng)自適應(yīng)統(tǒng)一行緩存子模塊的存儲空間大于圖像數(shù)據(jù)與參數(shù)數(shù)據(jù)的總大小時,所有待處理的圖像數(shù)據(jù)與對應(yīng)的參數(shù)矩陣數(shù)據(jù)完全被緩存在自適應(yīng)統(tǒng)一行緩存子模塊內(nèi); 當(dāng)自適應(yīng)統(tǒng)一行緩存子模塊的存儲空間大于圖像數(shù)據(jù)的大小而小于參數(shù)數(shù)據(jù)的大小時,將所有待處理圖像數(shù)據(jù)和部分參數(shù)矩陣數(shù)據(jù)緩存在自適應(yīng)統(tǒng)一行緩存子模塊中,此時所有待處理圖像與已緩存的參數(shù)矩陣執(zhí)行運(yùn)算,同時自適應(yīng)統(tǒng)一行緩存子模塊中已緩存的已使用完的參數(shù)矩陣不斷被未緩存的參數(shù)矩陣替換,并依次執(zhí)行運(yùn)算; 當(dāng)自適應(yīng)統(tǒng)一行緩存子模塊的存儲空間小于圖像數(shù)據(jù)的大小而大于參數(shù)數(shù)據(jù)的大小時,將部分待處理圖像數(shù)據(jù)和全部參數(shù)矩陣數(shù)據(jù)完全緩存在自適應(yīng)統(tǒng)一行緩存子模塊中,此時各部分被緩存的待處理圖像數(shù)據(jù)依次與全部參數(shù)矩陣運(yùn)算并輸出該部分運(yùn)算的中間結(jié)果,同時自適應(yīng)統(tǒng)一行緩存子模塊中緩存的已完成運(yùn)算的待處理圖像數(shù)據(jù)不斷被未緩存的待處理圖像數(shù)據(jù)替換,并繼續(xù)同樣的運(yùn)算處理,新的運(yùn)算結(jié)果與之前輸出的中間結(jié)果再進(jìn)行累加,直到所有待處理圖像數(shù)據(jù)全部完成運(yùn)算; 當(dāng)自適應(yīng)統(tǒng)一行緩存子模塊的存儲空間小于圖像數(shù)據(jù)的大小,并且也小于參數(shù)數(shù)據(jù)的大小時,將部分待處理圖像和部分參數(shù)矩陣數(shù)據(jù)緩存在自適應(yīng)統(tǒng)一行緩存子模塊中,此時被緩存的部分待處理圖像先依次與已緩存的部分參數(shù)矩陣運(yùn)算并輸出該部分的中間結(jié)果,同時自適應(yīng)統(tǒng)一行緩存子模塊中緩存的已完成運(yùn)算的待處理圖像數(shù)據(jù)不斷被未緩存的待處理圖像數(shù)據(jù)替換,新的運(yùn)算結(jié)果與之前輸出的中間結(jié)果進(jìn)行累加,直至所有待處理圖像全部完成運(yùn)算,此后,繼續(xù)緩存新的參數(shù)矩陣數(shù)據(jù)以替換已使用的參數(shù)矩陣數(shù)據(jù),再重復(fù)前述過程直至所有參數(shù)矩陣數(shù)據(jù)全部完成運(yùn)算。
【文檔編號】G06T1/20GK105931176SQ201610188551
【公開日】2016年9月7日
【申請日】2016年3月30日
【發(fā)明人】楊樺
【申請人】楊樺
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1