• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      一種靈活可配置的JPEG編解碼器軟硬件架構(gòu)

      2014-06-07 05:53:26李瑞珍張曉旭嚴(yán)曉浪
      計(jì)算機(jī)工程 2014年11期
      關(guān)鍵詞:編解碼色度加速器

      李瑞珍,張曉旭,馬 德,黃 凱,嚴(yán)曉浪

      (1.浙江大學(xué)超大規(guī)模集成電路設(shè)計(jì)研究所,杭州310027;2.杭州電子科技大學(xué)微電子CAD所,杭州310018)

      一種靈活可配置的JPEG編解碼器軟硬件架構(gòu)

      李瑞珍1,張曉旭1,馬 德2,黃 凱1,嚴(yán)曉浪1

      (1.浙江大學(xué)超大規(guī)模集成電路設(shè)計(jì)研究所,杭州310027;2.杭州電子科技大學(xué)微電子CAD所,杭州310018)

      JPEG壓縮標(biāo)準(zhǔn)由于其壓縮比高和實(shí)用性強(qiáng)已被廣泛應(yīng)用于靜態(tài)圖像編解碼中。為滿足更高的實(shí)時性與高速率需求,根據(jù)JPEG算法抽象出的基本運(yùn)算,提出一種靈活可配置的JPEG編解碼加速器結(jié)構(gòu),實(shí)現(xiàn)向量加法、向量乘法、向量點(diǎn)乘和移位飽和等基本運(yùn)算操作,并驅(qū)動此加速器完成JPEG解碼的反向離散余弦變換、反量化和色度空間轉(zhuǎn)換過程,配合軟件代碼處理解碼的其他部分,實(shí)現(xiàn)JPEG解碼的軟硬件協(xié)同工作。實(shí)驗(yàn)結(jié)果表明,在增加0.229 mm2面積的前提下,硬件實(shí)現(xiàn)的部分耗時只為優(yōu)化前的35%左右,JPEG解碼過程總耗時為優(yōu)化前的60%左右。該方法提高了JPEG編解碼速度,并且加速器的軟件和硬件靈活可配性決定了其適用范圍的廣泛性。

      聯(lián)合圖像壓縮標(biāo)準(zhǔn);加速器;離散余弦變換;色度空間轉(zhuǎn)換;量化;軟硬件協(xié)同設(shè)計(jì)

      1 概述

      JPEG是聯(lián)合圖像專家組(Joint Picture Experts Group)于1991年發(fā)布的第一代國際靜態(tài)圖像壓縮標(biāo)準(zhǔn)[1],由于其壓縮率高、失真小和實(shí)現(xiàn)復(fù)雜度低等特點(diǎn),被公認(rèn)為是靜態(tài)圖像編解碼方面最有效實(shí)用的壓縮算法,在數(shù)字圖像、數(shù)碼相機(jī)、網(wǎng)頁圖像等領(lǐng)域均有廣泛應(yīng)用,特別在嵌入式應(yīng)用中,要對高質(zhì)量的圖像進(jìn)行實(shí)時采集、壓縮、存儲和回放,需同時支持JPEG編解碼功能。隨著嵌入式系統(tǒng)實(shí)時性、高性能和可擴(kuò)展性要求的進(jìn)一步提高,設(shè)計(jì)出一個高速高效可擴(kuò)展的JPEG編解碼器已成為重要的研究方向。

      目前,JPEG編解碼器在嵌入式領(lǐng)域中的實(shí)現(xiàn)方式可分為3種:ASIC圖像專用編解碼芯片[2-3],FPGA實(shí)現(xiàn)[4-5]以及基于處理器[6]或 DSP的軟件實(shí)現(xiàn)[7]。采用ASIC JPEG圖像專用編解碼芯片的優(yōu)點(diǎn)是速度快,一旦專用芯片設(shè)計(jì)成功,其生產(chǎn)成本相對較低,而且方便集成,功耗低,適合大規(guī)模生產(chǎn)。然而ASIC編解碼芯片的缺點(diǎn)是可配置擴(kuò)展性差,一旦設(shè)計(jì)完成就只能以固定模式進(jìn)行編解或解碼,而JPEG算法為滿足不同應(yīng)用領(lǐng)域的需求,提出了3種不同的系統(tǒng):基本系統(tǒng),擴(kuò)展系統(tǒng)和專用無失真功能系統(tǒng)[1]。在ASIC芯片中同時實(shí)現(xiàn)3種系統(tǒng)的編解碼會顯著提高芯片面積和功耗,文獻(xiàn)[2]中提出的JPEG解碼IP模塊就需消耗206 000門硬件資源,而只支持一個系統(tǒng)的編碼或者解碼的ASIC芯片應(yīng)用范圍又受到限制。文獻(xiàn)[6-7]分別提出了一種JPEG解碼算法在多核架構(gòu)和DSP上的實(shí)現(xiàn)方法,這種方式的好處是靈活性高、可擴(kuò)展性好。但為了實(shí)現(xiàn)實(shí)時編解碼,需要占用較多的計(jì)算資源,必須采用較高性能的DSP和處理器,顯著增加了嵌入式系統(tǒng)的成本和功耗,不適合低端系統(tǒng)的應(yīng)用。FPGA具有較高的性能和靈活性,升級方便[4-5],但其成本較高,不適合大規(guī)模生產(chǎn)。

      針對以上3種實(shí)現(xiàn)方式的缺陷,本文提出一種靈活可配置的JPEG編解碼器的軟硬件協(xié)同工作架構(gòu)。通過對JPEG軟件算法的分析研究,評估算法中各主要任務(wù)的復(fù)雜性,采用自頂向下的設(shè)計(jì)方法,將JPEG編解碼算法中色度空間轉(zhuǎn)換、離散余弦變換(Discrete Cosine Transform,DCT)、量化等復(fù)雜性高的任務(wù)劃分為基本向量操作,設(shè)計(jì)相應(yīng)的硬件加速單元。根據(jù)JPEG算法應(yīng)用的特點(diǎn),由處理器對硬件加速單元進(jìn)行靈活配置,由此構(gòu)建由RISC處理器和細(xì)粒度硬件加速單元組成的靈活可配JPEG編解碼系統(tǒng)。

      2 JPEG編解碼原理與性能分析

      2.1 JPEG編解碼原理

      JPEG算法利用人的視覺系統(tǒng)特性,使用量化和無損壓縮編碼相結(jié)合的方式去掉視覺和圖像本身的冗余信息來達(dá)到壓縮的目的。它可以分為基本模式和擴(kuò)展模式。其中基本模式應(yīng)用尤為廣泛。本文以基于DCT的基本模式為討論對象進(jìn)行JPEG性能分析和軟硬件劃分。JPEG的編碼器和解碼器的組成分別如圖1和圖2所示。當(dāng)JPEG編碼時,圖像數(shù)據(jù)需先從原來的RGB色度空間轉(zhuǎn)換到Y(jié)CrCb色度空間,然后將二維圖像分成 8×8的最小編碼單元(Minimum Code Unit,MCU),各MCU按從左到右、從上到下的順序?qū)τ谏群土炼确至恳来芜M(jìn)行正向離散余弦變換(Forward DCT,FDCT)和量化,得到的結(jié)果按照“之”字重新排序后進(jìn)行熵編碼,即可得到壓縮后的數(shù)據(jù)。JPEG解碼是相反的過程,包括熵解碼、反zig-zag排序、反量化、反向離散余弦變換(Inverse DCT,IDCT)和YCrCb到RGB的色度空間轉(zhuǎn)換[8]。

      圖1 JPEG壓縮過程

      圖2 JPEG解碼過程

      2.2 JPEG編解碼復(fù)雜度分析

      為了對JPEG算法進(jìn)行軟硬件劃分,本文選用了獨(dú)立JPEG小組發(fā)布的第9版JPEG自由軟件作為參考模型[1],通 過采用 GNU GCC的 Profiling工具[9]對軟件代碼各函數(shù)的執(zhí)行時間進(jìn)行統(tǒng)計(jì),從而分析JPEG算法中各模塊的復(fù)雜度。對多個 JPEG圖像編解碼的各函數(shù)性能評估如圖3所示。

      圖3 JPEG編解碼函數(shù)性能評估

      通過圖3的統(tǒng)計(jì)數(shù)據(jù)得到的JPEG編解碼各模塊的平均復(fù)雜度如圖4所示。

      圖4 JPEG編解碼函數(shù)比例

      在圖4中,DCT、量化/反量化、熵編解碼和色度空間轉(zhuǎn)換4個部分的執(zhí)行時間占了JPEG編解碼總時間的80%~95%,復(fù)雜性的集中度很高,便于分析優(yōu)化,尤其是DCT和量化/反量化,占用了將近一半的時間。這是由于圖像中每個8×8的MCU都要執(zhí)行此類操作,重復(fù)性高,而且加法和乘法的運(yùn)算量大,因此提高這些過程的執(zhí)行效率是提高JPEG編解系統(tǒng)性能的關(guān)鍵。JPEG編解碼中的其他時間用于一些初始化工作和預(yù)處理等操作,例如分析文件頭、取量化表、將圖像補(bǔ)齊到8×8的整數(shù)倍、哈夫曼解碼后的校正等。

      這些操作大多是圖像級的,對于整個圖像只執(zhí)行一次,占用的時間少,特別是對于較大的圖像幾乎可以忽略。所以硬件加速主要集中在色度空間轉(zhuǎn)換、熵編解碼、DCT和量化/反量化這4個部分。

      (1)色度空間轉(zhuǎn)換

      色度空間轉(zhuǎn)換雖不屬于JPEG標(biāo)準(zhǔn)的組成部分,但圖像一般以RGB格式進(jìn)行顯示,而JPEG算法以YCrCb格式作為編解碼對象,這使得RGB和YCrCB之間的色度空間轉(zhuǎn)換成為JPEG編解碼算法不可或缺的一部分。如式(1)所示,完成一個像素點(diǎn)的YCrCb到RGB色度空間轉(zhuǎn)換需4次浮點(diǎn)乘法和6次加法,對于cif圖像需進(jìn)行352×288=10 137次色度空間轉(zhuǎn)換,即10 137×4=405 504次乘法和10 137× 6=608 256次加法,計(jì)算復(fù)雜性高。圖4的分析結(jié)果表明,色度空間轉(zhuǎn)換在JPEG編解碼軟件算法中占了10~20%的計(jì)算時間,因此,采用硬件加速對提升JPEG解碼性能、減少處理器負(fù)載具有重要意義。

      (2)熵編解碼

      熵編碼主要利用圖像空間相關(guān)性,對每一個MCU的直流分量采用差分編碼,對zig-zag方式排列的交流分量采用游程編碼,最后對各部分進(jìn)行哈夫曼編碼,熵解碼是其相反的過程。熵編解碼雖在軟件算法占較高的運(yùn)算,但其主要通過查表、逐位比較判斷[10]等操作完成,且前后數(shù)據(jù)之間相關(guān)性大,計(jì)算量小,更加適合處理器實(shí)現(xiàn),本文提出的架構(gòu)中采用RISC處理器完成JPEG算法的熵編解碼。

      (3)量化/反量化

      如圖1所示,JPEG編碼過程中對DCT轉(zhuǎn)換后的MCU進(jìn)行量化操作。經(jīng)DCT變換后得到8×8的二維頻率矩陣M,左上角代表圖像低頻部分,右下角代表圖像高頻部分,量化實(shí)際上相當(dāng)于低通濾波器,濾掉高頻部分,因此,量化矩陣Q低頻系數(shù)小,高頻系數(shù)大。量化得到的像素頻域矩陣F中對應(yīng)元素F(u,v)=M(u,v)×Q(u,v),每完成一次反量化需要64次乘法,一幅 cif圖像有(352/8)×(288/8)= 1 584個MCU,需要1 584次量化操作,即1 584×64= 101 376次乘法,運(yùn)算復(fù)雜性較高。與量化過程類似,反量化過程也需要大量規(guī)律性的乘法操作,因此,用硬件加速單元實(shí)現(xiàn)量化/反量化操作將大幅度地優(yōu)化JPEG編解碼性能。

      (4)離散余弦變換

      離散余弦變換對圖像信息進(jìn)行時域與頻域間的轉(zhuǎn)換,將低頻信息與高頻信息分開,是JPEG算法的重要組成部分。JPEG以8×8塊為DCT的基本單位,公式如下:

      3 JPEG編解碼器硬件加速器設(shè)計(jì)

      3.1 自頂向下的硬件加速器設(shè)計(jì)

      由上節(jié)對JPEG編解碼關(guān)鍵算法的分析可知, JPEG編解碼中計(jì)算復(fù)雜性高且適合硬件加速的主要操作有色度空間轉(zhuǎn)換、FDCT/IDCT變換及量化/反量化。為使硬件架構(gòu)在軟件協(xié)同工作下能夠同時支持以上3種操作,必須對算法進(jìn)行分析,提取三者的相同基本操作,從而設(shè)計(jì)硬件加速器功能。本文采用自頂向下的設(shè)計(jì)方法分析三者的基本操作。圖5展示了色度空間轉(zhuǎn)換的分析過程。首先,如式(1)所示,色度空間轉(zhuǎn)換包含大量浮點(diǎn)乘法,不適合硬件實(shí)現(xiàn)。因此,為簡化硬件加速器設(shè)計(jì),把色度空間轉(zhuǎn)換中的浮點(diǎn)操作替換成定點(diǎn)操作:把各系數(shù)轉(zhuǎn)換為Cij=Coefficient/2N形式。綜合考慮轉(zhuǎn)換精度與硬件實(shí)現(xiàn)的開銷,選擇 N為16。則當(dāng)系數(shù)為1.402時,系數(shù) Coefficient為 91 881,則 91 881/ 65 536=1.401 993,其與浮點(diǎn)實(shí)際值的誤差只有0.000 4%,滿足色度空間轉(zhuǎn)換精度要求,整個替換過程如圖5步驟1所示。經(jīng)轉(zhuǎn)換后,色度空間轉(zhuǎn)換主要包括對原像素的補(bǔ)償(加減)、系數(shù)相乘和移位操作。通過觀察可以發(fā)現(xiàn)RGB的3種色度的轉(zhuǎn)換對YCrCb的補(bǔ)償均相同為向量(0,128,128),所以把色度空間轉(zhuǎn)換過程統(tǒng)一為矩陣的形式,如圖5步驟2所示。最后,為增加硬件加速器配置的靈活性,把色度空間轉(zhuǎn)換進(jìn)一步細(xì)化為向量加法、向量乘法和向量移位操作[11],如圖5步驟3所示。與色度空間轉(zhuǎn)換分析類似,DCT變換主要是矩陣乘法,一維FDCT的一次矩陣乘法可以通過64次向量乘法實(shí)現(xiàn),量化和反量化分別是把DCT變換或熵解碼得到的8×8塊與量化表相乘,也可細(xì)化為向量點(diǎn)乘操作(本文中符號為※,定義為目標(biāo)向量中的每個點(diǎn)等于2個源向量中對應(yīng)的點(diǎn)相乘)。綜合考慮以上分析結(jié)果,提出的硬件架構(gòu)需實(shí)現(xiàn)向量加減法、向量點(diǎn)乘、向量乘法(MAC)、向量移位及飽和操作。

      圖5 色度空間轉(zhuǎn)換的細(xì)化

      3.2 JPEG硬件加速器架構(gòu)

      綜合考慮上節(jié)的眾多因素,提出如圖6所示的4路并行硬件加速器架構(gòu)。該架構(gòu)中操作數(shù)讀取和結(jié)果回寫采用獨(dú)立接口:2個AHB[12]主接口用于操作數(shù)的讀取,一個AHB主接口用于結(jié)果的回寫。在系統(tǒng)中通過合理安排存儲器架構(gòu)可以使讀寫同時進(jìn)行,有效提高加速器的吞吐量。加速器計(jì)算核心是多路向量運(yùn)算單元,支持向量加減、向量乘法和向量點(diǎn)乘等基本操作,對于計(jì)算結(jié)果可進(jìn)一步進(jìn)行移位和飽和運(yùn)算,向量維數(shù)通過軟件靈活可配。由于JPEG編解碼中像素位寬通常為8 bit而片上系統(tǒng)(System on Chip, SoC)的總線帶寬多為32 bit,為有效利用系統(tǒng)帶寬,加速器最多支持4路向量操作并行;同時考慮到像素值的取值范圍通常為0~255,而DCT或者色度空間轉(zhuǎn)換以后的值可能超出這個界限,在硬件中增加對向量運(yùn)算結(jié)果的飽和運(yùn)算,這使硬件加速器既具有通用性,又有利于JPEG的編解碼。

      由于總線帶寬限制,硬件加速器一個時鐘周期內(nèi)通常只能讀回2個32 bit數(shù)據(jù),而JPEG應(yīng)用中往往有大量數(shù)據(jù)需要同時處理,例如每次IDCT變換中往往針對8×8的矩陣進(jìn)行,因此需要連續(xù)進(jìn)行多次操作。而且一次向量操作所需的數(shù)據(jù)本身也很難一次取回,所以硬件加速器需要并行讀取數(shù)據(jù)和計(jì)算。針對JPEG編解碼應(yīng)用以上特點(diǎn),本文采用4級流水線架構(gòu)實(shí)現(xiàn)硬件加速器,如圖7所示。

      圖6 加速器硬件架構(gòu)

      圖7 硬件加速器流水線架構(gòu)

      各級流水線功能分別介紹如下:

      第1級:AG級(Address Generation)。圖像處理往往以宏塊為單位進(jìn)行,例如在 JPEG中 FDCT/ IDCT變換均以8×8的MCU為單位。如圖8所示,一個宏塊的數(shù)據(jù)在存儲器中往往不是按順序保存的,對于一個8×8的MCU,同一行像素點(diǎn)的保存地址是按像素點(diǎn)位寬增加的,而進(jìn)行下一行像素處理時,地址需要跳轉(zhuǎn)一行像素點(diǎn)的大小。為了滿足圖像處理中像素讀取的這個特點(diǎn),本文提出的地址生成級(AG級)支持2層嵌套循環(huán)工作模式,2層循環(huán)支持不同的尋址模式。例如對于8×8塊的DCT變換,內(nèi)層循環(huán)進(jìn)行一行向量的乘法,地址逐像素增加;而外層循環(huán)控制對哪一行像素進(jìn)行變換,地址按行增加。通過這種模式,可以顯著減少軟件對硬件的配置時間。

      圖8 地址的跳變

      第2級:DF級(Data Fetch級)。讀取相應(yīng)的數(shù)據(jù),并對數(shù)據(jù)進(jìn)行預(yù)處理。AG級向總線發(fā)起數(shù)據(jù)讀取請求,DF級根據(jù)總線的狀態(tài)對數(shù)據(jù)進(jìn)行采樣,若總線未及時返回?cái)?shù)據(jù)則將導(dǎo)致流水線停頓。采樣完成數(shù)據(jù)以后,根據(jù)操作類型和配置對數(shù)據(jù)進(jìn)行預(yù)處理,例如如果是4路向量減法,則對其中一個操作數(shù)按8 bit為單位進(jìn)行取反處理。為了使硬件加速器具有通用性,還支持操作數(shù)的移位和取絕對值操作,這些操作在音視頻應(yīng)用中會頻繁使用。

      第3級:CAL級(Calculation級)。根據(jù)配置的數(shù)據(jù)位寬和并行路數(shù),對操作數(shù)進(jìn)行乘法、加法或者乘累加操作。對于乘累加操作,WB級的結(jié)果被返回到CAL級與當(dāng)前的相乘結(jié)果相加。

      第4級:WB級(Write Back級)。WB級主要負(fù)責(zé)對計(jì)算結(jié)果作移位取飽和等后處理,同時根據(jù)計(jì)算狀態(tài)決定是否有數(shù)據(jù)要回寫到存儲器并產(chǎn)生相應(yīng)的地址。例如對于2個8維的向量相乘,需要進(jìn)行8次乘累加操作,所以WB級把前7次的結(jié)果都返回到CAL級,只有在得到第8次的結(jié)果后才向總線發(fā)起數(shù)據(jù)寫操作。

      4 JPEG編解碼軟硬件協(xié)同工作

      JPEG編解碼軟硬件協(xié)同工作如圖9所示,以處理器為控制核心,對加速器進(jìn)行配置實(shí)現(xiàn)向量加減、向量乘法、向量點(diǎn)乘、移位和飽和等原子操作。根據(jù)JPEG編解碼性能的需求,硬件層可以實(shí)例化多個加速器,使得多個向量操作可以被同時調(diào)用,提高處理的并行性。然后,以原子操作為基本單位開發(fā)JPEG編解碼驅(qū)動函數(shù),如量化/反量化、FDCT/IDCT、色度空間轉(zhuǎn)換,同時以純軟件方式實(shí)現(xiàn)熵編解碼函數(shù)。最后,調(diào)用驅(qū)動函數(shù)實(shí)現(xiàn)JPEG編解碼應(yīng)用函數(shù)。

      圖9 JPEG編解碼軟件映射整體流程

      因?yàn)镴PEG編解碼應(yīng)用主要通過調(diào)用驅(qū)動函數(shù)實(shí)現(xiàn),硬件加速器對其完全透明,所以即使在硬件加速器結(jié)構(gòu)調(diào)整的情況,應(yīng)用層也無需作任何修改。本文中軟硬件協(xié)同工作的核心在于驅(qū)動函數(shù)與原子操作之間的映射,以YCrCb到RGB的色度空間轉(zhuǎn)換過程為例說明驅(qū)動函數(shù)到原子操作的映射優(yōu)化過程。色度空間通常是在編碼之前或者解碼之后,以整幅圖像為對象進(jìn)行操作,但為保證像素地址連續(xù)性同時減少向量操作的次數(shù),本文以一行所有像素點(diǎn)的同一種操作作為一次向量運(yùn)算。由圖5可知,矩陣乘法中多個系數(shù)為0,所以可以對矩陣操作進(jìn)行優(yōu)化,從而減少向量操作的維數(shù),如圖10步驟1和步驟2所示,每個點(diǎn)的計(jì)算過程轉(zhuǎn)換成圖中操作5和操作6這2個向量加法,其中的相關(guān)變量如圖中虛線框中間變量所示。由于浮點(diǎn)系數(shù)與結(jié)果的移位操作在向量運(yùn)算中同時進(jìn)行,故圖10中沒有給出,只列出核心操作過程。

      圖10 色度空間轉(zhuǎn)換的映射過程

      對于一幅cif圖像(352×288)的一行操作如表1所示,只需按照圖10中操作1~操作6進(jìn)行6次加速器向量運(yùn)算。整個cif圖像的轉(zhuǎn)換則需按照表1進(jìn)行288次加速器調(diào)用。

      表1 YCrCb到RGB的映射過程

      5 實(shí)驗(yàn)結(jié)果與分析

      本文實(shí)驗(yàn)通過構(gòu)建一個簡單的片上系統(tǒng)(SoC)平臺用于評估JPEG解碼器軟硬件協(xié)同工作的性能。該平臺主要包含高性能RISC處理器CK610、時鐘發(fā)生器(CLOCK GEN)、復(fù)位器(RESET GEN)、AHB總線、片上SRAM(SMS)、片外SDRAM、JPEG加速器模塊、顯示器(LCD)和一些輔助IP,架構(gòu)如圖11所示。系統(tǒng)采用48 MHz時鐘頻率,處理器指令存放在片上SRAM中,圖像數(shù)據(jù)保存在片外SDRAM,CPU使用了8 Kb的指令cache和8 Kb的數(shù)據(jù)cache。實(shí)驗(yàn)結(jié)果在FPGA板上通過LCD顯示器顯示出來。

      圖11 SoC架構(gòu)

      實(shí)驗(yàn)中選取大小不同的5幅JPEG壓縮圖像作為測試激勵,在FPGA開發(fā)板分別采用純軟件和基于硬件加速器的軟硬件協(xié)同工作方式進(jìn)行解碼,實(shí)驗(yàn)結(jié)果如表2所示。實(shí)驗(yàn)結(jié)果表明,基于硬件加速器的反量化和IDCT過程時間優(yōu)化了64%~72%,色度空間轉(zhuǎn)換過程優(yōu)化了57%~72%,整個JPEG解碼過程優(yōu)化了35%~41%,與純軟件方式相比性能有顯著提高。在TSMC13工藝下CPU的面積是2.25 mm2,而硬件加速器的面積只有0.229 mm2,與純軟件方式相比,在不足10%的面積開銷下使得JPEG解碼性能提高了近40%。

      表2 純軟件與硬件加速結(jié)果對照

      6 結(jié)束語

      本文通過分析JPEG的編解碼過程,提出了一種靈活可配的硬件加速器。并基于此加速器,將解碼過程中的IDCT、反量化和色度空間轉(zhuǎn)換部分映射到加速器上,實(shí)現(xiàn)了JPEG解碼的軟硬件協(xié)同設(shè)計(jì),在只增加10%面積的代價(jià)下,與純軟件相比,將JPEG的解碼速度提高了40%左右。另外,此加速器單元的高靈活性和可配性使得其可用于基于向量運(yùn)算的其他算法,在同一個SoC中多個子模塊都可以使用加速器,系統(tǒng)性能將大幅提高。

      [1] JPEG.JPEG Homepage[EB/OL].(2013-01-06).http:// www.jpeg.org/jpeg/index.html.

      [2] 張奇惠.JPEG靜止圖像壓縮技術(shù)的ASIC實(shí)現(xiàn)[D].鄭州:河南大學(xué),2007.

      [3] Xie Xiang,Li Guolin,Chen Xinkai,et al.A Low Complexity Near-lossless Image Compression Method and Its ASIC Design for Wireless Endoscopy System[C]//Proceedings of the 6th International Conference on ASIC.[S.l.]:IEEE Press,2005:37-40.

      [4] Shan Junming,Wang Duyao,Yang Eyan.High Performance JPEG Decoder Based on FPGA[C]//Proceedings of Asia Pacific Conference on Postgraduate Research in Microelectronics and Electronics.[S.l.]:IEEE Press,2011:57-60.

      [5] 趙 輝,孫紅星.基于DSP_FPGA的視頻壓縮系統(tǒng)的設(shè)計(jì)[C]//2009年中國控制與決策會議論文集.桂林:[出版者不詳],2009:1985-1990.

      [6] 朱夢宇,楊裕亮.基于硬件加速的無損醫(yī)學(xué)圖像壓縮研究[EB/OL].(2010-12-01).http://cpfd.cnki.com.cn/Article/CPFDTOTAL-ZNXX201012013075.htm.

      [7] 耿 倩,王耀南,余 浩.基于DSP的JPEG靜態(tài)圖像壓縮編碼設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,2006, 42(23):82-84.

      [8] 劉瑞祥,趙 珊,鮑 泓.基于DCT壓縮的JPEG圖像檢索算法[J].計(jì)算機(jī)工程,2010,36(5):225-227.

      [9] Free Software Foundation Inc..GNU gprof[EB/OL].(2011-04-13).http://www.cs.utah.edu/dept/old/ texinfo/as/gprof.html.

      [10] 劉 洋,陳 杰.JPEG解碼器的軟硬件協(xié)同設(shè)計(jì)[J].微電子學(xué)與計(jì)算機(jī),2005,22(3):23-27.

      [11] Chouliaras V A,Nunez J L,Mulvaney D J,et al.A Multi-standard Video Accelerator Based on a Vector Architecture[J].IEEE Transactionson Consumer Electronics,2005,51(1):160-167.

      [12] Synopsys.AMBA Specification[EB/OL].(2012-12-23).http://www.synopsys.com/IP/SoCInfrastructureIP/Design Ware/AMBA/Pages/default.aspx.

      編輯 顧逸斐

      A Flexible and Configurable Architecture of Software and Hardware for JPEG Codec

      LI Ruizhen1,ZHANG Xiaoxu1,MA De2,HUANG Kai1,YAN Xiaolang1
      (1.Institute of Very Large Scale Integrated Circuits Design,Zhejiang University,Hangzhou 310027,China;
      2.Institution of Microelectronics CAD,Hangzhou Dianzi University,Hangzhou 310018,China)

      Joint Picture Experts Group(JPEG)compression standard is widely used in static image codec for its high compression ratio and strong practicality,while it requires better performance in feature of real-time and compression speed.According to the basic vector arithmetic extracted from JPEG process,a flexible and configurable accelerator for JPEG codec is proposed to achieve the vector addition,multiplication,dot multiplication,shifting and saturation operations.Software and hardware cooperation is used in driving the accelerator to finish the Inverse Discrete Cosine Transform(IDCT),inverses quantization and color space conversion,while doing the other part in JPEG decoding with software.In the condition of increasing 0.229 mm2area,the process doing with accelerator costs 35%of the time costs in software,and the JPEG decoding costs only 60% of the time.This method improves the JPEG codec speed and can be used widely according to its flexibility and configurability.

      Joint Picture Experts Group(JPEG);accelerator;Discrete Cosine Transform(DCT);color space conversion;quantization;software and hardware co-design

      1000-3428(2014)11-0266-07

      A

      TP391.41

      10.3969/j.issn.1000-3428.2014.11.053

      李瑞珍(1989-),女,碩士,主研方向:SoC設(shè)計(jì)與驗(yàn)證;張曉旭,博士;馬 德,講師;黃 凱,副教授;嚴(yán)曉浪,教授。

      2013-10-31

      2013-12-31E-mail:made@hdu.edu.cn

      中文引用格式:李瑞珍,張曉旭,馬 德,等.一種靈活可配置的JPEG編解碼器軟硬件架構(gòu)[J].計(jì)算機(jī)工程,2014, 40(11):266-272.

      英文引用格式:Li Ruizhen,Zhang Xiaoxu,Ma De,et al.A Flexible and Configurable Architecture of Software and Hardware for JPEG Codec[J].Computer Engineering,2014,40(11):266-272.

      猜你喜歡
      編解碼色度加速器
      輪滑加速器
      化學(xué)工業(yè)的“加速器”
      全民小康路上的“加速器”
      1553B總線控制器編解碼設(shè)計(jì)
      大型民機(jī)試飛遙測視頻編解碼方法研究
      基于H.265編解碼的高清視頻傳輸系統(tǒng)研究
      電子測試(2018年18期)2018-11-14 02:30:54
      基于改進(jìn)色度模型的非接觸式心率檢測與估計(jì)
      景德鎮(zhèn)早期青白瓷的器型與色度
      等待“加速器”
      如何提高蘋果的著色度
      萝北县| 莱芜市| 宁德市| 微山县| 资兴市| 拉孜县| 左权县| 新源县| 石城县| 饶河县| 新丰县| 马山县| 苍南县| 平山县| 察雅县| 三亚市| 彰化县| 景洪市| 搜索| 繁峙县| 大宁县| 和硕县| 普宁市| 乌恰县| 聊城市| 泌阳县| 奎屯市| 阿拉善左旗| 夏邑县| 建水县| 淮安市| 梅州市| 平塘县| 和田市| 原平市| 嘉祥县| 溆浦县| 蚌埠市| 泰宁县| 静海县| 绥滨县|