《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于SoPC的二維IDCT分布式算法的IP核研究
基于SoPC的二維IDCT分布式算法的IP核研究
來(lái)源:電子技術(shù)應(yīng)用2011年第4期
付 揚(yáng), 鄧 超
北京工商大學(xué) 計(jì)算機(jī)與信息工程學(xué)院, 北京 100048
摘要: 研究基于SoPC的視頻解碼系統(tǒng)中二維IDCT 硬件設(shè)計(jì)與實(shí)現(xiàn)。針對(duì)二維IDCT的運(yùn)算量大、乘法運(yùn)算多,導(dǎo)致占用FPGA資源多和系統(tǒng)速度慢等問(wèn)題,其設(shè)計(jì)采用一維IDCT復(fù)用,研究分布式算法實(shí)現(xiàn)乘法累加,并使用偏移二進(jìn)制編碼來(lái)減小其查找表大小,其直接占用FPGA邏輯單元內(nèi)的查找表LUT,沒(méi)有寄存器或內(nèi)置RAM。綜合結(jié)果表明,芯片占用資源少、訪問(wèn)速度快,其最高可綜合工作頻率達(dá)到140.39 MHz。此外,基于Avalon總線接口實(shí)現(xiàn)二維IDCT IP核的SoPC Builder系統(tǒng)構(gòu)建,在以Nios II處理器為核心SoPC視頻解碼系統(tǒng)中測(cè)試,結(jié)果表明,該IP核能提高視頻解碼速度20%以上,很大程度上增強(qiáng)了解碼的實(shí)時(shí)性。
中圖分類(lèi)號(hào): TP391
文獻(xiàn)標(biāo)識(shí)碼: A
文章編號(hào): 0258-7998(2011)04-0126-04
The IP core research of 2D IDCT distributed algorithm based on SoPC
Fu Yang, Deng Chao
Computer and Information Engineering Institute, Beijing Technology and Business University, Beijing 100048, China
Abstract: Research SoPC system of two-dimensional IDCT hardware design and implementation. Two-dimensional IDCT for computing capacity, multiplication and more, making the occupation of FPGA resources and system slow and so many disadvantages, the design uses a distributed algorithm multiply-accumulate, and use the offset binary coding to reduce the size of the lookup table can be directly FPGA logic cells using the look-up table LUT, there are no registers or internal RAM. The synthesis results show that the chip takes fewer resources, access speed, two-dimensional IDCT integrated work a maximum frequency of 140.39 MHz. Avalon bus interface based on two-dimensional IDCT IP core of the SoPC builder system construction, Testing based on SoPC video decoding system In Nios II processor as the core, the test results show that the IP core rate increased more than 20%, largely enhanced real-time decoding.
Key words : SoPC; IP core; IDCT; DA; OBC


    離散余弦變換(DCT)是最廣泛使用的圖像和視頻壓縮變換編碼方法之一,它可以去除數(shù)據(jù)之間的相關(guān)性、聚集圖像中的能量,使數(shù)據(jù)便于壓縮,是目前大多數(shù)圖像和視頻編碼標(biāo)準(zhǔn)(如JPEG、H.26x系列、MPEGx系列標(biāo)準(zhǔn)等)的核心。在圖像和視頻解碼系統(tǒng)中,則使用離散余弦逆變換(IDCT)對(duì)數(shù)據(jù)進(jìn)行還原,而常用8×8的二維離散余弦逆變換(2D IDCT)的運(yùn)算量較大,直接影響到圖像和視頻解碼系統(tǒng)的實(shí)時(shí)性。本文在基于SoPC視頻解碼系統(tǒng)設(shè)計(jì)中,考慮到充分利用SoPC具有的軟硬件協(xié)同設(shè)計(jì)優(yōu)勢(shì),對(duì)二維IDCT優(yōu)化的硬件設(shè)計(jì)與實(shí)現(xiàn)進(jìn)行了研究。
    研究采用IDCT的分布式算法(DA),并結(jié)合偏移二進(jìn)制編碼(OBC)的查找表方式,設(shè)計(jì)基于SoPC解碼系統(tǒng)8×8的二維 IDCT IP核。在以Nios II處理器為核心的SoPC視頻解碼系統(tǒng)中,該 IP核設(shè)計(jì)滿足Avalon總線標(biāo)準(zhǔn)的接口。經(jīng)綜合測(cè)試表明,該IP核的應(yīng)用提高了解碼的實(shí)時(shí)性,具有一定的應(yīng)用價(jià)值。
1 IDCT算法
1.1二維IDCT分解

    8×8二維IDCT的定義式[1]如下:

其中Fx,y為DCT變換后的系數(shù),fi,j為原始數(shù)據(jù),當(dāng)x,y=


    從式(9)可以看出,如果預(yù)先計(jì)算好部分和Dj并存入查找表,則通過(guò)移位累加操作,同樣可以計(jì)算出向量?jī)?nèi)積Px。dij的取值只可能是-1或+1,部分和Dj關(guān)于向量d的正負(fù)值成鏡像對(duì)稱(chēng)。下面以計(jì)算P1為例,來(lái)說(shuō)明這種部分和的對(duì)稱(chēng)關(guān)系:
 
2 二維IDCT硬件設(shè)計(jì)
2.1 二維IDCT硬件結(jié)構(gòu)

    設(shè)計(jì)方案利用2D IDCT的行列分解特性,使用一個(gè)1D IDCT核、8×8轉(zhuǎn)置RAM和復(fù)用器等模塊來(lái)構(gòu)成2D IDCT硬件系統(tǒng)。2D IDCT的結(jié)構(gòu)框圖如圖2所示。

    圖中,串并轉(zhuǎn)換緩沖器,每收到8個(gè)數(shù)據(jù)后將其作為一行數(shù)據(jù)同時(shí)輸出,該模塊還是輸入數(shù)據(jù)的緩存模塊。并串轉(zhuǎn)換緩沖器功能與此模塊類(lèi)似。轉(zhuǎn)置RAM用來(lái)完成8×8數(shù)據(jù)的行列轉(zhuǎn)換,按行輸入按列輸出。1D IDCT模塊為整個(gè)IP的核心,用來(lái)計(jì)算8點(diǎn)1D IDCT的值。控制器負(fù)責(zé)整個(gè)IP核的工作時(shí)序,保證其運(yùn)行無(wú)誤。工作時(shí)先按行順序讀入數(shù)據(jù),然后由1D IDCT計(jì)算每行8點(diǎn)的逆變換值,再按行順序?qū)懭朕D(zhuǎn)置RAM中,然后控制器切換復(fù)用器,按列順序從轉(zhuǎn)置RAM中讀出數(shù)據(jù),計(jì)算每列IDCT值后按列順序?qū)懭胼敵鼍彺妫詈蟀葱许樞蜃x出最終結(jié)果。
2.2 一維IDCT硬件設(shè)計(jì)
    實(shí)現(xiàn)2D IDCT硬件的關(guān)鍵是如何實(shí)現(xiàn)1D IDCT。本設(shè)計(jì)使用OBC編碼的分布式算法來(lái)完成1D IDCT的硬件設(shè)計(jì),其核心是4輸入的移位累加模塊的設(shè)計(jì),其結(jié)構(gòu)如圖3所示。移位累加模塊可以計(jì)算一個(gè)乘積和,并行使用8個(gè)移位累加模塊及1個(gè)后處理模塊,組成完整的1D IDCT模塊。后處理模塊用于式(5)、式(6)的計(jì)算,其輸出為最終8點(diǎn)1D IDCT的結(jié)果。在設(shè)計(jì)移位累加器時(shí),要注意初始值Dapp的設(shè)置。在視頻解碼系統(tǒng)中,對(duì)IDCT輸出數(shù)據(jù)的準(zhǔn)確性較敏感,對(duì)數(shù)據(jù)的舍入要求較高。因此設(shè)計(jì)時(shí),對(duì)輸出數(shù)據(jù)采用四舍五入,將累加器的初始值加上4 096,右移13次后將輸出結(jié)果補(bǔ)償0.5。

    圖4為1D IDCT的硬件結(jié)構(gòu)圖。1D IDCT模塊的輸入數(shù)據(jù)精度為13 bit,輸出為16 bit。其中移位寄存器輸入13 bit,輸出為8 bit。為防止數(shù)據(jù)溢出,移位累加器的輸出為14 bit,而非13 bit。經(jīng)后處理模塊將精度擴(kuò)展為16 bit后,作為最后結(jié)果輸出。

    1D IDCT是整個(gè)設(shè)計(jì)的核心,該模塊功能的正確與否將影響整個(gè)系統(tǒng)的性能。
2.3 Avalon總線接口2D IDCT IP核設(shè)計(jì)
    基于SoPC視頻解碼中,IP核還應(yīng)包含Avalon總線接口以及控制寄存器組。Avalon總線接口包含對(duì)總線進(jìn)行讀寫(xiě)操作,它是2D IDCT IP核與Avalon總線數(shù)據(jù)傳輸?shù)臉蛄篬5]。通過(guò)接口模塊,可以將IP核加入到SoPC系統(tǒng)中。控制寄存器組用于存儲(chǔ)控制狀態(tài)字,以及控制IP核的參數(shù)數(shù)據(jù)[5]。
    圖5為基于Avalon總線接口的2D IDCT IP核的總體結(jié)構(gòu)圖。


    Avalon總線讀取模塊根據(jù)寄存器中的操作地址,將要處理的64個(gè)數(shù)據(jù)讀入輸入緩存,經(jīng)2D IDCT模塊處理后由總線寫(xiě)入模塊將結(jié)果寫(xiě)回原地址。模塊運(yùn)行時(shí),首先向控制寄存器寫(xiě)入控制數(shù)據(jù),然后IP核發(fā)起總線數(shù)據(jù)讀取操作,等IP核接收到Avalon總線返回的數(shù)據(jù)后開(kāi)始對(duì)數(shù)據(jù)進(jìn)行處理,最后再將結(jié)果寫(xiě)回Avalon總線。
3 二維IDCT IP核的綜合與測(cè)試
3.1 二維IDCT IP核的綜合

    使用以Cyclone II EP2C35F672C8 FPGA芯片為核心的SoPC開(kāi)發(fā)平臺(tái),硬件設(shè)計(jì)使用Verilog HDL硬件描述語(yǔ)言編寫(xiě),在Quartus II軟件進(jìn)行綜合,綜合報(bào)告如圖6所示。由此可見(jiàn),整個(gè)2D IDCT占用了4 336個(gè)邏輯單元,核心模塊1D IDCT只占用了632個(gè)邏輯單元。8個(gè)查找表模塊直接使用了FPGA邏輯單元內(nèi)的查找表LUT,沒(méi)有寄存器或內(nèi)置RAM。這種查找表模塊的實(shí)現(xiàn)方式簡(jiǎn)單靈活,并且芯片訪問(wèn)速度快。2D IDCT IP核的最高可綜合工作頻率為140.39 MHz。其時(shí)序分析報(bào)告如圖7所示。

3.2 二維IDCT IP核的SoPC測(cè)試結(jié)果
    在以Nios II 為處理器的SoPC系統(tǒng)中,進(jìn)行實(shí)際視頻解碼測(cè)試。將 IDCT IP核添加到SoPC Builder中,將編碼過(guò)的視頻測(cè)試文件燒入到Flash中,移植解碼程序到Nios II IDE中,刪除原有的IDCT軟件函數(shù),用C語(yǔ)言編寫(xiě)2D IDCT IP核的驅(qū)動(dòng)函數(shù)。經(jīng)系統(tǒng)解碼后,通過(guò)帶VGA接口的LCD進(jìn)行播放[6]。
    測(cè)試結(jié)果看出系統(tǒng)加入IDCT IP核后,LCD顯示畫(huà)面清晰,沒(méi)有降低系統(tǒng)的解碼質(zhì)量。
    對(duì)于不同的測(cè)試視頻,解碼速度是有差異的,為了能更準(zhǔn)確地測(cè)試出IP核的性能,本研究選用了多個(gè)視頻文件進(jìn)行比較如表1所示。從表1可以看出,加入2D IDCT IP核以后,  解碼每幀所需時(shí)間平均減少了約6 ms,幀率平均提高了6~8幀,使系統(tǒng)的解碼速率平均提高了20%以上。

    本文研究設(shè)計(jì)的2D IDCT IP核針對(duì)FPGA的硬件特點(diǎn),采用分布式算法實(shí)現(xiàn)乘法累加模塊,使用OBC編碼減小了查找表的大小,節(jié)省了FPGA資源,優(yōu)化了硬件設(shè)計(jì)。
    該IP核的研究基于先進(jìn)的SoPC技術(shù),應(yīng)用于視頻解碼系統(tǒng)中,結(jié)果表明,該IP核很大程度上提高了視頻解碼速度,增強(qiáng)了視頻解碼系統(tǒng)的實(shí)時(shí)性。由于SoPC的IP核復(fù)用技術(shù),該設(shè)計(jì)將具有很強(qiáng)的實(shí)用性、通用性和擴(kuò)展性。
參考文獻(xiàn)
[1] RICHARDSON I E G.視頻編解碼器的設(shè)計(jì)-開(kāi)發(fā)圖像與視頻壓縮系統(tǒng)[M]. 北京:國(guó)防科技大學(xué)出版社, 2005.
[2] CHEN W H. A fast computational algorithm for the discrete cosine transforms [J]. IEEE Transactions on Communications, 1977,25(9):1004-1009.
[3] 梁剛.分布算術(shù)的并行計(jì)算技術(shù)研究[J]. 微電子學(xué)與計(jì)算機(jī), 2009(5).
[4] 紀(jì)秀花.用查表法快速實(shí)現(xiàn)二維8×8離散余弦逆變換的研究[J]. 電子學(xué)報(bào),2008(4):639-645.
[5] 劉家良,任懷魯,陳新華.AVS視頻解碼中幀內(nèi)預(yù)測(cè)模塊的硬件化設(shè)計(jì)及SOPC驗(yàn)證 [J].電子技術(shù)應(yīng)2009,
35(10):18-21.
[6] Altera. Avalon Interface Specifications [DB/OL].2009-11.
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲免费在线观看视频| 久久精品国产一区二区三区| 亚洲欧美日韩国产| 99视频超级精品| 亚洲欧洲在线观看| 永久久久久久| 黑人极品videos精品欧美裸| 国产日韩欧美一区二区三区在线观看 | 亚洲欧美日韩中文播放| 日韩视频一区二区三区| 欧美在线观看一区| 亚洲特级片在线| 亚洲精选大片| 在线日本高清免费不卡| 国产一区二区三区精品欧美日韩一区二区三区| 久久久精品五月天| 性感少妇一区| 亚洲午夜羞羞片| 亚洲国语精品自产拍在线观看| 亚洲最新在线视频| 亚洲动漫精品| 一区在线免费| 国产模特精品视频久久久久| 欧美精品一区三区在线观看| 久久精品视频在线免费观看| 一区二区久久久久久| 亚洲黄色小视频| 午夜欧美精品久久久久久久| 99精品视频免费全部在线| 经典三级久久| 国产一区白浆| 国产精品亚洲片夜色在线| 国产精品久久久久高潮| 欧美视频二区36p| 欧美日韩国产区一| 欧美人妖在线观看| 欧美经典一区二区三区| 欧美承认网站| 欧美精品久久天天躁| 老色鬼精品视频在线观看播放| 亚洲欧美国产77777| 亚洲一区二区三区中文字幕| 一本色道久久综合狠狠躁篇怎么玩 | 久久久噜噜噜| 久久久青草青青国产亚洲免观| 久久精品久久99精品久久| 久久成人免费网| 久久国产精品99国产精| 久久国产88| 久久aⅴ国产紧身牛仔裤| 久久大综合网| 久久女同互慰一区二区三区| 久久久久久久尹人综合网亚洲| 久久国产精品久久久久久电车| 久久精品91久久久久久再现| 久久久久久久网| 另类亚洲自拍| 欧美久久久久久久久| 欧美日韩亚洲综合| 国产精品福利片| 欧美日韩精品二区| 国产精品xvideos88| 国产精品尤物| 国内伊人久久久久久网站视频| 樱桃国产成人精品视频| 亚洲电影免费在线 | 极品少妇一区二区三区精品视频| 亚洲第一精品电影| 亚洲日韩欧美视频一区| 一区二区高清| 亚洲欧美日韩一区二区三区在线| 欧美一区二区三区男人的天堂 | 久久精品亚洲一区二区三区浴池 | 免费成人毛片| 欧美日本韩国| 国产精品久久久久久久久婷婷 | 亚洲一区精品电影| 欧美在线观看日本一区| 亚洲人成网站在线播| 一区二区三区免费观看| 午夜在线精品偷拍| 久久蜜桃香蕉精品一区二区三区| 欧美成人首页| 欧美天天在线| 国产日韩在线看片| 亚洲福利视频在线| 中文av一区二区| 欧美在线视频播放| 99re66热这里只有精品3直播| 亚洲综合大片69999| 久久伊人亚洲| 欧美视频手机在线| 国产一区二区av| 亚洲精选91| 欧美影院久久久| 一区二区三区成人精品| 欧美一区二区三区四区视频| 欧美ab在线视频| 国产女主播一区二区| 亚洲欧洲精品一区二区三区波多野1战4 | 欧美日韩一区国产| 精品69视频一区二区三区| 99国产精品久久久久久久久久| 欧美一区二区在线看| 亚洲国产乱码最新视频| 亚洲欧美日韩精品一区二区| 模特精品在线| 国产精品一区二区在线观看| 亚洲人午夜精品免费| 亚洲午夜精品一区二区| 亚洲精品一区二区三区在线观看 | 国产色综合网| 日韩一级欧洲| 亚洲国产精品一区制服丝袜| 亚洲欧美国产视频| 欧美精品二区| 在线观看91精品国产麻豆| 亚洲一区二区黄| 中文日韩在线视频| 欧美99在线视频观看| 国产午夜亚洲精品羞羞网站| 亚洲免费久久| 亚洲精品乱码久久久久久蜜桃麻豆 | 亚洲精品欧美日韩| 亚洲国产精品毛片| 久久激情网站| 国产精品久久福利| 亚洲国产日日夜夜| 亚洲成色精品| 久久精品国产2020观看福利| 国产精品二区影院| 日韩视频亚洲视频| 亚洲精品黄网在线观看| 久久中文精品| 国产一区二区毛片| 翔田千里一区二区| 午夜精品区一区二区三| 欧美性大战久久久久| 在线视频成人| 亚洲精品一品区二品区三品区| 亚洲清纯自拍| 麻豆精品精华液| 激情综合网激情| 欧美一区日本一区韩国一区| 欧美亚洲网站| 国产精品一区二区在线| 亚洲视频综合在线| 亚洲永久免费观看| 欧美亚男人的天堂| 99这里有精品| 一区二区三区四区五区在线| 欧美久久久久久久| 亚洲美女电影在线| 一区二区日韩伦理片| 欧美日韩国产综合视频在线| 亚洲人成在线免费观看| 亚洲精品一区在线观看香蕉| 欧美sm极限捆绑bd| 亚洲国产一区二区在线| 亚洲精品视频免费观看| 欧美激情91| 亚洲裸体在线观看| 亚洲视频狠狠| 国产精品伦一区| 亚洲欧美另类国产| 久久都是精品| 韩国三级在线一区| 亚洲国产色一区| 欧美精品自拍偷拍动漫精品| 亚洲免费观看高清完整版在线观看熊 | 久久久免费精品视频| 黄色欧美日韩| 亚洲精品系列| 欧美视频在线不卡| 亚洲一二三区在线观看| 欧美一区二区三区久久精品| 国产亚洲人成网站在线观看| 久久精品国产亚洲一区二区三区| 玖玖精品视频| 亚洲欧洲日产国产综合网| 亚洲图片在线观看| 国产精品综合| 亚洲大片av| 欧美日韩精品在线| 亚洲一级免费视频| 久久久天天操| 91久久综合亚洲鲁鲁五月天| 亚洲一区三区电影在线观看| 国产麻豆精品视频| 亚洲动漫精品| 欧美精品高清视频| 亚洲网站在线播放| 久久九九国产精品| 在线观看亚洲专区| 一区二区三区欧美成人| 欧美日一区二区在线观看| 亚洲影院色在线观看免费| 久久永久免费| 亚洲欧美日韩国产精品| 欧美日韩欧美一区二区|