關(guān) 閉

新聞中心

EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > JPEG解碼器IP核的設(shè)計(jì)與實(shí)現(xiàn)

JPEG解碼器IP核的設(shè)計(jì)與實(shí)現(xiàn)

作者: 時(shí)間:2011-05-24 來源:網(wǎng)絡(luò) 收藏

摘要:介紹了基于靜止圖像壓縮標(biāo)準(zhǔn)核的采用適于硬件的IDCT算法結(jié)構(gòu),通過增加運(yùn)算并行度和流水線技術(shù)相結(jié)合的方法以提高處理速度。根據(jù)Huffman碼流特點(diǎn),采用新的Huffman并行解碼硬件結(jié)構(gòu),用簡單的算術(shù)運(yùn)算代替復(fù)雜的配對(duì)模式,解碼速度快,硬件成本低。該核可方便地集成到諸如數(shù)碼相機(jī)、手機(jī)以及掃描儀等各種應(yīng)用中。
關(guān)鍵詞:;核;Huffman;流水線

基于IP(Intellectual Property)核的設(shè)計(jì)和可復(fù)用已成為SoC(System on a Chip)設(shè)計(jì)方法的主流設(shè)計(jì)方法。本設(shè)計(jì)實(shí)現(xiàn)了基于靜止圖像壓縮標(biāo)準(zhǔn)基本模式的軟IP核。JPEG(Joint Photograph ExpelsGroup)是1992年CCITT和ISO正式通過的連續(xù)色調(diào)靜止圖像壓縮標(biāo)準(zhǔn)。圖像的高數(shù)據(jù)量和廣泛應(yīng)用對(duì)圖像的存儲(chǔ)和傳輸提出了要求,有限的存儲(chǔ)容量和傳輸帶寬不能直接對(duì)圖像進(jìn)行存儲(chǔ)與傳輸,因此需要先對(duì)圖像進(jìn)行壓縮處理。JPEG壓縮算法因其優(yōu)異的壓縮性能成為目前最流行的圖像壓縮工具。

1 JPEG解碼IP核設(shè)計(jì)和實(shí)現(xiàn)
在JPEG中,因?yàn)镠uffman解碼是變長的,本次解碼結(jié)束后才能重新定位碼流,難以實(shí)現(xiàn)流水線設(shè)計(jì),所以本設(shè)計(jì)中主要通過提高功能部件并行度和在功能模塊內(nèi)部實(shí)現(xiàn)流水線來提高解碼速度。因?yàn)榻獯a速度不定,所以各功能模塊間的握手信號(hào)很關(guān)鍵。每個(gè)模塊的數(shù)據(jù)輸出時(shí)也要考慮到后級(jí)模塊的數(shù)據(jù)輸入要求,這樣才能達(dá)到整個(gè)解碼過程的有序、高效進(jìn)行。JPEG解碼IP核總體架構(gòu),如圖1所示。

本文引用地址:http://2s4d.com/article/162053.htm

a.jpg


1.1 JPEG解碼IP核控制器設(shè)計(jì)
JPEG解碼器控制器的作用是在不同解碼環(huán)節(jié)為各個(gè)單元模塊分配任務(wù),以控制中間運(yùn)算過程及最后輸出結(jié)果。采用了有限狀態(tài)機(jī)的設(shè)計(jì)方法,這是一種結(jié)構(gòu)清晰、設(shè)計(jì)靈活的方法,它易于建立、理解和維護(hù),特別是應(yīng)用于大量狀態(tài)轉(zhuǎn)移和復(fù)雜時(shí)序控制系統(tǒng)中更顯優(yōu)勢(shì)。控制器主要由一個(gè)Mealy型有限狀態(tài)機(jī)實(shí)現(xiàn),狀態(tài)轉(zhuǎn)移如圖2所示。

b.jpg


初始化狀態(tài)(IDLE):復(fù)位或者一幅圖像解碼完成時(shí)進(jìn)入的狀態(tài),重新定位碼流,在解碼開始標(biāo)志有效時(shí)跳轉(zhuǎn)到標(biāo)志符解碼狀態(tài)(DeMar-ker)。
標(biāo)志符解碼狀態(tài)(DeMarker):按JPEG碼流語法和JFIF文件格式解析標(biāo)記符,根據(jù)解析出的標(biāo)志符跳轉(zhuǎn)到相應(yīng)的標(biāo)志段解碼狀態(tài),如果解析到SOI標(biāo)志符或者是0xFFFF狀態(tài)不改變。
解碼出錯(cuò)狀態(tài)(False):若是在標(biāo)志段解碼出錯(cuò)跳轉(zhuǎn)到False狀態(tài),通過輸出端口將出錯(cuò)信號(hào)輸出,在得到外部反饋后跳轉(zhuǎn)到初始化狀態(tài)IDLE。
應(yīng)用擴(kuò)展標(biāo)志段APPn、幀開始標(biāo)志段SOFO、量化表定義DQT標(biāo)志段、Huffman碼表定義DHT標(biāo)志段和掃描行開始SOS標(biāo)志段的解碼過程是相似的,在相應(yīng)標(biāo)志符后是標(biāo)志段的長度,可以根據(jù)這個(gè)長度值,結(jié)合JPEG碼流語法,進(jìn)行碼流解析,將所需的圖像信息如圖像尺寸、圖像格式、量化表、Huffman碼表等寫入相應(yīng)寄存器或者存儲(chǔ)器中,以便于后續(xù)壓縮數(shù)據(jù)的解碼。
Huffman碼流解碼狀態(tài)(DeHuffman):在解析完掃描開始標(biāo)志段SOS后跳轉(zhuǎn)到Huffman碼流解碼狀態(tài),解碼圖像壓縮數(shù)據(jù),主要包括Huffman解碼、反量化、反Z字形重排、IDCT和輸出緩存等。
控制器還負(fù)責(zé)外部輸入的調(diào)配工作,每個(gè)時(shí)鐘周期,都將本次解碼長度送至碼流緩存模塊,從而重新定位解碼碼流位置。因?yàn)橛卸喾N圖像格式,所以控制器還要負(fù)責(zé)各個(gè)模塊的亮度色度選擇信號(hào)的輸入。


上一頁 1 2 3 4 下一頁

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉