<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>
關(guān) 閉

新聞中心

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

JPEG解碼器IP核的設計與實(shí)現

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

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

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

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

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

a.jpg


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

b.jpg


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


上一頁(yè) 1 2 3 4 下一頁(yè)

關(guān)鍵詞: 實(shí)現 設計 IP 解碼器 JPEG

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>