四虎成人免费视频,国产一级a作爱视频免费观9看,色五月丁香亚洲,亚洲欧美性爱在线视频,1000部黄片免费观看一区,国产亚洲性生活视频播放,三级黄色在线视频网站

現(xiàn)在位置:范文先生網(wǎng)>理工論文>電子通信論文>視頻壓縮IPcore設(shè)計(jì)

視頻壓縮IPcore設(shè)計(jì)

時(shí)間:2023-02-21 00:06:42 電子通信論文 我要投稿
  • 相關(guān)推薦

視頻壓縮IPcore設(shè)計(jì)

摘要:介紹了一種基于FPCA技術(shù)的視頻壓縮IPcore(IntellectualPropertycore,智力產(chǎn)權(quán))設(shè)計(jì)。設(shè)計(jì)中綜合運(yùn)用了分布式算法、并行運(yùn)算和流水線單元,通過(guò)VerilogHDL(VeriogHardwareDescdPtionLanSuage)硬件描述語(yǔ)言描述運(yùn)算單元及其結(jié)構(gòu)配置。整個(gè)系統(tǒng)能在27MHz系統(tǒng)時(shí)鐘下工作。
  關(guān)鍵詞:視頻壓縮IPcoreFPCA
  
  現(xiàn)行的視頻壓縮標(biāo)準(zhǔn)有多種,但基本屬于以下兩大類:視頻會(huì)議標(biāo)準(zhǔn)和多媒體標(biāo)準(zhǔn)。視頻會(huì)議標(biāo)準(zhǔn)包括ITU(IntemationalTelecommunicationUnion)的H.263/H.261等。這些標(biāo)準(zhǔn)主要采用了基于DCT(離散余弦變換)編碼、運(yùn)動(dòng)補(bǔ)償?shù)燃夹g(shù),使視頻流能以Nx64kbps(N=1~32)的速率傳輸。
  
  多媒體壓縮標(biāo)準(zhǔn)主要包括:MPEG-1、MPEG-2、MPEG-4等,由CCITT和ISO的動(dòng)態(tài)圖像專家組(MotionPictureExpertsGroup)制定。MPEG-1主要應(yīng)用在以CD-ROM為介質(zhì)的視頻上,比特率為1.5Mbps。MPEG-2應(yīng)用在NTSC/PAL和CCIR601中,比特率為2~10Mbps。MPEG—1和MPEG—2的目的都是有效傳輸和存儲(chǔ)音視頻。而MPEG-4是為了提供更有效的視頻壓縮,基于內(nèi)容提供廣泛的接人方式。它既可以在5-64kbps的移動(dòng)電話和公共交換網(wǎng)中應(yīng)用,也可以在4Mbps帶寬的電視中應(yīng)用。
  
  JPEG(JointPhotographicExpertsGroup)標(biāo)準(zhǔn)是一個(gè)適用范圍廣泛的通用標(biāo)準(zhǔn),由聯(lián)合圖像專家小組制定。它不僅適用于靜止圖像的壓縮,也適用于電視圖像序列的幀內(nèi)圖像的壓縮[1]。
  
  近年來(lái),隨著FPGA技術(shù)的日益成熟,愈來(lái)愈多的曾使用軟件或DSP實(shí)現(xiàn)的復(fù)雜數(shù)字算法開始使用PPCA完成。這當(dāng)然是由于FPGA的特殊結(jié)構(gòu)和特性,使它可以更加高速和高效地完成這些算法。IPcore技術(shù)可以把這些FPGA中的算法設(shè)計(jì)封裝成包(模塊)。這些包具有智力產(chǎn)權(quán),可以被繼承、共享或購(gòu)買。
  
  1視頻壓縮原理和算法實(shí)現(xiàn)
  
  視頻壓縮技術(shù)主要利用圖像信號(hào)的相關(guān)、冗余等特性,通過(guò)一些變換算法,保留對(duì)人眼視覺(jué)最重要的部分,進(jìn)行編碼傳輸。大部分視頻壓縮利用2D-DCT(二維離散余弦變換)和2D-IDCT(二維反離散余弦變換)變換得到圖像的頻譜,高精度保留對(duì)人眼重要的高頻部分,低精度保留低頻部分從而對(duì)視頻流進(jìn)行壓縮[1]。其過(guò)程如圖1所示。
  
  1.1DCT變換算法
  
  2D-DCT變換是視頻壓縮中的常用變換[2]。在壓縮過(guò)程中,將一幅圖像分成許多8x8的小塊進(jìn)行變換。
  
  8x8的2D-DCT變換如公式(1)所示:
  
  
  
  如果直接使用公式(1)進(jìn)行2D-DCT變換,運(yùn)算量將會(huì)十分巨大,普通FPGA很難有效完成整個(gè)視頻壓縮運(yùn)算。所以需要先把2D-DCT運(yùn)算進(jìn)行一些變換,簡(jiǎn)化計(jì)算,減少運(yùn)算量。
  
  
  
  
  
  
  
  
  
  2D-DCT具有正交可分解性悶,可以通過(guò)對(duì)輸入的矩陣先做一維行變換,再做一維列變換實(shí)現(xiàn)。即將8x8數(shù)據(jù)先按行方向進(jìn)行累加運(yùn)算,產(chǎn)生中間矩陣,再對(duì)中間矩陣按列方向進(jìn)行累加運(yùn)算,最后得到變換結(jié)果。2D-DCT可以分解成兩個(gè)1D-DCT運(yùn)算,見公式(2)。
  
  將公式(2)展開成矩陣形式,得到公式(3)。計(jì)算一個(gè)這樣的單元需要64個(gè)乘法器和56個(gè)加法器,運(yùn)算量還是很大。利用公式(3)的對(duì)稱性進(jìn)行變換,可以得到公式(4),使乘法器減少到32個(gè),加法器減少到8個(gè)。
  
  一個(gè)由公式(4)推演出的分布式乘法器如圖2所示。4個(gè)乘數(shù)(x0…x3)同時(shí)與各自的系數(shù)(c0…c3)相與,然后相加得到一個(gè)和數(shù),這個(gè)和數(shù)與除2器出來(lái)的數(shù)相加,得到一個(gè)新的累計(jì)數(shù)。這個(gè)新的累加數(shù)如果是最后的結(jié)果,則輸出;如果不是,送入除2器,進(jìn)行下一步累加。這樣,分布式乘法器就可以完成系數(shù)yj的運(yùn)算。
  
  由于DCT運(yùn)算中的系數(shù)Cm是常數(shù),對(duì)于擁有RAM單元的FPGA,上述運(yùn)算也可以使用查ROM表的方法實(shí)現(xiàn)。將圖2中的虛線內(nèi)部分,改換ROM單元,如圖3所示。這時(shí),(x0…x3)作為ROM表的地址位,通過(guò)查表的方式輸出和數(shù),進(jìn)行累加運(yùn)算。ROM表的地址位寬度為4,存儲(chǔ)單元數(shù)量DW=24=16。一些生產(chǎn)商提供的綜合軟件帶有IP庫(kù),可以調(diào)用這些IP庫(kù)中的ROM模塊實(shí)現(xiàn)ROM表。例如ALTERA公司的MegafunctionLibrary中的LPM_ROM可以用以下的語(yǔ)句調(diào)用(VerilogHDL)[4]。用VC或MATLAB生成一個(gè).mif的ROM表文件。
  
  LPM_ROMU1(
  
  .address(adr),
  
  .inclock(clk),
  
  .q(dat));
  
  defparaln
  
  lpm_rom_component.lpm_width=16,
  
  lpm_rom_component.lpm_widthad=4,
  
  lpm_rom_component.1pm_address_control
  
  ="REGISTERED",
  
  lpm_rom_component.ipm_outdata
  
  ="UNREGISTERED",
  
  lpm_rom_component.1pm_file="romtable.mif";
  
  這樣,可以得到由這些基本單元構(gòu)成與矩陣公式(4)相對(duì)的1D-DCT的FPGA設(shè)計(jì),如圖4所示。其中4RC單元表示圖3的結(jié)構(gòu)。
  
  如前所述,2D-DCT需要兩個(gè)1D-DCT共同完成,但是兩個(gè)1D-DCT運(yùn)算的中間變量并不是直接傳遞的,而需要一個(gè)矩陣轉(zhuǎn)置模塊進(jìn)行耦合。
  
  1.2轉(zhuǎn)置RAM
  
  2D-DCT單元由兩個(gè)相同的1D-DCT和轉(zhuǎn)置RAM等組成,如圖5所示。根據(jù)公式(2),可以知道1D-DCT先對(duì)8x8單元的行進(jìn)行累加操作,把得到的結(jié)果暫存到RAM中,直到8行都運(yùn)算完成。RAM中的臨時(shí)8x8矩陣要先轉(zhuǎn)置,把列數(shù)據(jù)變成行數(shù)據(jù),經(jīng)并串轉(zhuǎn)換后輸入到第2個(gè)1D-DCT進(jìn)行行累加。
  
  轉(zhuǎn)置RAM是一個(gè)8x8的RAM陣列。當(dāng)數(shù)據(jù)完成1D-DCT變換后,即由xij到zjl變換,按行順序輸入到轉(zhuǎn)置RAM,在讀出時(shí)按列順序讀出,這樣完成zil到zli的變換;然后將z9并串轉(zhuǎn)換,輸入到第二個(gè)1D-DCT,由zli運(yùn)算得到y(tǒng)lk。這樣就完成了公式(1)的2D-DCT整個(gè)變換,如圖6所示。
  
  1.32D-IDCT
  
  2D-IDCT變換如公式(5)所示。
  
  可見公式(5)與公式(1)相同,所以2D-IDCT可以用與2D-DCT的同樣方法實(shí)現(xiàn)。
  
  1.4量化,編碼
  
  量化算法包括一張量化表,它因人眼對(duì)各
  
  
  
  種空間頻率的靈敏度的不同而確定。在表中,較低空間頻率的精度要高于較高頻率的精度,這是由于人眼的低頻分量比較敏感,而對(duì)高頻分量不太敏感。
  
  編碼可以采用游程編碼或熵編碼。單元模塊均可通過(guò)FPGA的片上RAM(滿足雙口RAM的特性)設(shè)計(jì)完成。
  
  圖6
  
  2結(jié)論
  
  整個(gè)視頻壓縮IPcore設(shè)計(jì)可以在FPGA上實(shí)現(xiàn),在27MHz的系統(tǒng)時(shí)鐘下工作。根據(jù)具體芯片的不同,可以在更高的速率工作。壓縮速率可以達(dá)到108Mbps。
  
  實(shí)際應(yīng)用中,數(shù)據(jù)字長(zhǎng)對(duì)壓縮效果和比率有較大影響,一般情況下系數(shù)Cm取12位,可以滿足大部分的視頻壓縮要求。
  
  整個(gè)視頻壓縮IPcore可以直接下載到FPGA上(例如EDIF格式),獨(dú)立實(shí)現(xiàn)視頻壓縮功能,也可以通過(guò)軟件設(shè)計(jì)與其他的IPcore協(xié)同工作。例如,在網(wǎng)絡(luò)攝像機(jī)的應(yīng)用上,可以把視頻壓縮IPcore、數(shù)字?jǐn)z像頭控制器、網(wǎng)絡(luò)接口一起編譯成新的核。這個(gè)核具有視頻采
  
  集、壓縮、傳輸?shù)纫幌盗泄δ。把核的EDIF文件通過(guò)生產(chǎn)廠商的下載軟件下載到FPGA上,就可以在一塊芯片上實(shí)現(xiàn)所有網(wǎng)絡(luò)攝像機(jī)的功能。實(shí)現(xiàn)了SoPC(SystemOnaProgrammableChip)的目標(biāo)。
  
  
  
  
  
  

【視頻壓縮IPcore設(shè)計(jì)】相關(guān)文章:

校服設(shè)計(jì)教學(xué)設(shè)計(jì)06-07

教學(xué)設(shè)計(jì)的實(shí)質(zhì)是問(wèn)題設(shè)計(jì)08-05

標(biāo)志設(shè)計(jì)教案設(shè)計(jì)08-15

課程設(shè)計(jì)設(shè)計(jì)心得04-08

設(shè)計(jì)與設(shè)計(jì)管理/Design and Design Management08-06

設(shè)計(jì)界面說(shuō)——探討設(shè)計(jì)藝術(shù)08-06

教學(xué)設(shè)計(jì)的實(shí)質(zhì)是問(wèn)題設(shè)計(jì) 論文08-08

模具設(shè)計(jì)畢業(yè)設(shè)計(jì)01-31

《窗戶》 設(shè)計(jì)08-16