• 
    

    
    

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

      基于NiosⅡ的SPIHT算法圖像壓縮卡的設(shè)計

      2017-12-19 05:09:12彭晴晴邸麗霞
      火力與指揮控制 2017年11期
      關(guān)鍵詞:嵌入式總線處理器

      彭晴晴,邸麗霞,張 輝,唐 杰,劉 輝

      (北方自動控制技術(shù)研究所,太原 030006)

      基于NiosⅡ的SPIHT算法圖像壓縮卡的設(shè)計

      彭晴晴,邸麗霞,張 輝,唐 杰,劉 輝

      (北方自動控制技術(shù)研究所,太原 030006)

      針對高速傳輸系統(tǒng)中大批量數(shù)據(jù)不易傳輸?shù)膯栴},提出了一種基于片上系統(tǒng)圖像壓縮卡的設(shè)計方法,討論了采用軟核NiosⅡ處理器的配置方式、簡化SPIHT算法的硬件實現(xiàn)原理和LVDS圖像數(shù)據(jù)接收轉(zhuǎn)存的操作流程。詳細論述了系統(tǒng)各模塊的設(shè)計原理及實現(xiàn)方法,并對各模塊進行了實際的性能測試和分析,結(jié)果表明該壓縮卡性能穩(wěn)定,可以高效地完成圖像數(shù)據(jù)壓縮。

      LVDS,軟核,SPIHT,圖像壓縮,DMA

      0 引言

      半導體傳感技術(shù)的發(fā)展使得獲取采集大批量高速實時數(shù)據(jù)變得更加容易,這就需要比傳統(tǒng)方式更加穩(wěn)定有效的數(shù)據(jù)處理技術(shù)。在數(shù)據(jù)傳輸中,LVDS以其低功耗高速的特點正在被廣泛地采用;在數(shù)據(jù)處理中,當不需要完全精確地保留數(shù)據(jù)時,數(shù)據(jù)壓縮技術(shù)在大批量數(shù)據(jù)存儲方面的優(yōu)勢正變得越來越明顯[1]。本文是在應(yīng)用了Altera嵌入式軟核NiosⅡ處理器的基礎(chǔ)上,實現(xiàn)了一種以LVDS(低壓差分信號)為傳輸總線的圖像壓縮卡的設(shè)計,系統(tǒng)采用分級樹集合劃分的SPIHT(多級樹集合分裂)壓縮算法,將乒乓緩存技術(shù)和DMA(直接內(nèi)存存?。?shù)據(jù)處理方法應(yīng)用于高速圖像數(shù)據(jù)的接收緩存中,并將壓縮后的數(shù)據(jù)通過LVDS總線傳送出去,簡化了系統(tǒng)接口,增加了圖像傳輸?shù)膶崟r性。

      1 LVDS總線和圖像壓縮技術(shù)

      LVDS總線是指采用低壓差分信號組成輸入輸出接口與外部通信的實現(xiàn)方式。LVDS信號的傳輸是通過發(fā)送端恒流源驅(qū)動信號輸出,在接收端通過匹配電阻產(chǎn)生低電壓的擺幅來實現(xiàn)電平的高低變化,它具有抵抗外界串擾、功耗低等優(yōu)異性能,是能夠滿足高速數(shù)據(jù)傳輸?shù)目煽考夹g(shù)[2]。通過采用專用的線路驅(qū)動器及接收器接口芯片組能夠簡化電路設(shè)計,為解決高速I/O接口問題提供了新的選擇。專用接口芯片組在LVDS傳輸時能夠?qū)r鐘信號嵌入差分數(shù)據(jù)流,同時在接收端恢復時鐘信號用于同步數(shù)據(jù)傳輸,便于接收同步,保證傳輸穩(wěn)定可靠。

      依據(jù)信息的統(tǒng)計性和人眼識別的有限性,圖像信息現(xiàn)有描述中存在著一定的冗余信息,比如編碼冗余、像素冗余以及視差冗余,研究圖像數(shù)據(jù)壓縮實際上是探索高效的方法來消除這些冗余,便于大量數(shù)據(jù)的保存和傳輸。壓縮技術(shù)主要有無損壓縮和有損壓縮,其中有損壓縮又分為變換、分形以及矢量化等壓縮方法[3]。本文根據(jù)實際應(yīng)用情況選擇小波變換結(jié)合多級樹劃分(SPIHT)的壓縮算法。小波變換具有優(yōu)異的時頻局部特性和去相關(guān)特性,能夠?qū)D像信息按照不同的分辨率提取出來組合成一個由高到低的細節(jié)序列,然后依據(jù)一定的分辨率來取舍這個序列來實現(xiàn)圖像的壓縮[4]。小波變換是空間和頻率關(guān)系上的部分變換,它集中分析局部信息并提取重要信號,提高壓縮效率。

      2 基本原理和系統(tǒng)總體結(jié)構(gòu)

      可編程片上系統(tǒng)的嵌入式處理器按實現(xiàn)方式有軟核和硬核之分,其中軟核處理器是使用可編程器件內(nèi)部的邏輯資源構(gòu)建的,通過編寫HDL語言或生成網(wǎng)表的方法應(yīng)用。本次設(shè)計的壓縮卡采用的是嵌入式軟核處理器構(gòu)成的SOPC?;谄舷到y(tǒng)壓縮卡的總體結(jié)構(gòu)如圖1所示,主要由接口模塊LVDS總線、核心數(shù)據(jù)處理模塊NiosⅡ軟核及其配置IP以及用于整幅圖像緩存的乒乓DDR2存儲模塊組成。嵌入式處理器采用Altera公司的NiosⅡ軟核,主要負責圖像數(shù)據(jù)的調(diào)度、壓縮以及與LVDS總線的接口通信。圖像數(shù)據(jù)壓縮卡主要完成LVDS總線上圖像數(shù)據(jù)的壓縮以及壓縮后數(shù)據(jù)的輸出。首先,LVDS接收器在解串原始圖像數(shù)據(jù)后,在同步時鐘的控制下寫入緩存FIFO;其次在DMA模式下將FIFO中的數(shù)據(jù)轉(zhuǎn)移至乒乓DDR2中等待核心處理器讀出壓縮,這時總是有一個DDR2處于接收圖像數(shù)據(jù)過程,另一個DDR2處于對處理器輸出圖像數(shù)據(jù)等待壓縮的過程;最后在嵌入式處理器的控制下將壓縮生成的數(shù)據(jù)碼流存儲在輸出緩存中等待LVDS發(fā)送端的讀取傳輸至LVDS總線。

      3 NiosⅡ嵌入式處理器

      基于FPGA的嵌入式片上系統(tǒng)主要由不同的各類型的處理器核、I/O端口、各種標準接口模塊以及將它們都連接起來的片上總線。設(shè)計者可以根據(jù)設(shè)計需要靈活地選擇各種不同的部件組合成可編程的軟核,還可以通過編程定制不同的組件類型[5]。隨著大規(guī)模邏輯器件的普及,Altera的SOPC開發(fā)平臺和NiosⅡ處理器以其優(yōu)異的性能和更低的資源占用得到了廣泛的使用。NiosⅡ的出現(xiàn)為設(shè)計高性能嵌入式系統(tǒng)和優(yōu)化系統(tǒng)提供了條件,使得設(shè)計以硬件描述(HDL)為中心的硬件設(shè)計轉(zhuǎn)到了以C語言為中心的功能描述,形成了以C語言描述NiosⅡ的功能,而用HDL描述硬件的具體實現(xiàn)方法,即實現(xiàn)了軟件和硬件的真正協(xié)同設(shè)計。NiosⅡ處理器是在SOPC Builder中按照任務(wù)需求選擇不同的處理器、IO中斷端口以及各種控制寄存器來配置生成的,最后在Quartus中調(diào)用的。SOPC Builder中含有各種開發(fā)者已經(jīng)調(diào)試好的IP模塊,并且它為第三方預留了接口,支持設(shè)計者通過描述語言或者購買專利IP定制外設(shè)和指令來完成設(shè)計需求功能[6]。

      本設(shè)計NiosⅡ軟核外設(shè)組件主要有:LVDS總線接口,F(xiàn)IFO、SRAM、DMA控制器和乒乓DDR2控制轉(zhuǎn)換模塊。嵌入式處理器配置組件如下頁圖2。

      4 改進的SPIHT壓縮算法

      圖像數(shù)據(jù)壓縮是整個壓縮卡設(shè)計的核心部分,基于小波變換的SPIHT壓縮算法性能突出,可操作性強,便于硬件工程化實現(xiàn)。但是由于最初的SPIHT算法需要將小波變換后的數(shù)據(jù)分類存放于不同的鏈表中,處理器通過不斷地掃描鏈表來獲得信息,這就需要消耗大量的硬件存儲資源和存儲時間,減緩了圖像處理的速度,不利于硬件壓縮的快速編碼。所以本文采用優(yōu)化的SPIHT算法,通過建立不同的查找表的方式代替原來的鏈表數(shù)據(jù)存儲轉(zhuǎn)移,并改變小波變換的零樹結(jié)構(gòu)和算法中排隊掃描的順序,簡化了變換后的樹結(jié)構(gòu)子孫關(guān)系,縮短了壓縮結(jié)果產(chǎn)生的碼流。改進后的SPIHT算法采用標志位區(qū)分每個系數(shù)和集合的重要性,并且在小波變換后的顯著性處理和比特平面掃描中是以每4個像素點為一組進行判斷,減少了掃描周期,有效改善了壓縮效率。改進的SPIHT算法系數(shù)顯著性判斷流程如圖3所示。

      首先,變換后的每個系數(shù)的重要性檢測是與其相鄰的4個系數(shù)一塊進行的,如果已經(jīng)進行了檢測,則判斷這個系數(shù)是否屬于上一位平面,即是否大于2倍的閾值,然后才能進行這個單個重要系數(shù)的精細化處理或者單個不重要系數(shù)的重要性測試;其次,如果這個系數(shù)沒有進行過重要性檢測,需要判斷是否處于不重要的集合中,然后決定跳過這個零樹集合或者進行分類型的集合編碼。

      5 高速圖像數(shù)據(jù)處理

      大量高速圖像數(shù)據(jù)的接收和轉(zhuǎn)存是影響壓縮效率的關(guān)鍵因素。本設(shè)計中原始圖像數(shù)據(jù)的接收和壓縮后碼流的輸出都是采用LVDS總線的形式,為了增加通信接口的可靠性和方便調(diào)試,LVDS接口采用硬件物理轉(zhuǎn)換的方式實現(xiàn),接口芯片選用的是SN65LV1023A和SN65LV1224B芯片組。SN65LV系列LVDS接口芯片是TI公司的一款10位支持串入同步時鐘的高速串行/解串芯片,最高通信速率可達660 Mbps。在壓縮卡的輸入端采用SN65LV1224B作為原始圖像數(shù)據(jù)的接收器,實現(xiàn)圖像數(shù)據(jù)的串行至并行的解串工作;同時在壓縮卡的輸出端采用SN65LV1023A作為壓縮后數(shù)據(jù)流的驅(qū)動器,實現(xiàn)壓縮碼流的并行至串行的轉(zhuǎn)換輸出。

      由于圖像壓縮是以整幅圖像為單位進行的,這就導致大量圖像數(shù)據(jù)在接收后不能立即進行壓縮處理,而是要以幀為單位寫入緩存,待一幅圖像接收完整后讀出壓縮。本次設(shè)計中高速圖像的接收緩存由內(nèi)部FIFO和乒乓DDR2存儲器兩部分組成,首先在接收端口采用內(nèi)部FIFO來緩沖數(shù)據(jù),當系統(tǒng)數(shù)據(jù)調(diào)度模塊判斷到FIFO中數(shù)據(jù)后會以幀為單位將圖像數(shù)據(jù)分別存入乒乓結(jié)構(gòu)的DDR2存儲器中,供壓縮模塊讀出壓縮。在這兩者的數(shù)據(jù)轉(zhuǎn)移之間采用了DMA的數(shù)據(jù)傳輸方法,DMA數(shù)據(jù)轉(zhuǎn)移不需要CPU的參與處理,直接在兩個緩存之間開辟數(shù)據(jù)傳輸通道,節(jié)約數(shù)據(jù)轉(zhuǎn)移時間,提高了圖像壓縮效率。圖4為數(shù)據(jù)轉(zhuǎn)存流程圖。

      6 系統(tǒng)測試結(jié)果

      對于有損圖像壓縮來說,重構(gòu)的圖像與原始圖像總會存在一定的差異,為了定量地衡量出壓縮前后圖像的品質(zhì)變化,相對于用眼睛觀察比較,通常會再壓縮后給出峰值信噪比(PSNR)定量的表示壓縮效果。峰值信噪比單位為dB,它的值越大,就代表壓縮后圖像相比于壓縮前失真越少,壓縮效果越好。PSNR的計算公式為[7]:

      其中 MSE 指 Mean Square Error(均方誤差),I(角標n)指原始影像第n個pixel(像素)值的平方,P(角標n)指經(jīng)過還原后的圖像第n個pixel(像素點)值的平方。Framesize指的是圖像所包含的所有像素點。

      本設(shè)計中圖像選用320*256像素的8bit測試圖片,由試驗測試可知設(shè)計中NiosⅡ處理器配合LVDS接口芯片的數(shù)據(jù)傳輸速度可以穩(wěn)定達到100 Mbps,壓縮速度大于一秒鐘15幀,滿足設(shè)計要求。圖5和圖6分別是8倍壓縮及16倍壓縮后重構(gòu)的圖像,圖7中的兩條曲線為算法改進前后對同一張圖片在相同壓縮比例下的壓縮峰值信噪比PSNR對比圖,其中星形曲線為原始算法的PSNR值,圓形曲線為算法改進后的PSNR值??梢钥闯鱿嗤瑝嚎s比例下,改進算法的PSNR值要比原始算法的大,說明改進后的壓縮效果比較好,并且在壓縮比例處于2到20左右時改進后算法的優(yōu)勢非常明顯;同時也可以看出當壓縮比不斷變高時,PSNR值在減小,也就意味著壓縮程度大圖像失真嚴重,壓縮效果優(yōu)勢不是特別明顯。

      7 結(jié)論

      本文提出了一種基于片上系統(tǒng)的圖像壓縮卡的設(shè)計方法,圖像壓縮算法采用適合硬件實現(xiàn)的簡化SPIHT算法,圖像數(shù)據(jù)的接收和壓縮后碼流的發(fā)送采用LVDS接口,在數(shù)據(jù)轉(zhuǎn)移過程中采用DMA技術(shù),整個壓縮卡的操作邏輯都是在片上處理器NiosⅡ的控制下實現(xiàn)的。基于NiosⅡ的圖像壓縮卡接口簡單、功能升級方便靈活,測試結(jié)果表明該壓縮卡壓縮性能穩(wěn)定,在高速數(shù)據(jù)采集傳輸系統(tǒng)中具有廣闊的應(yīng)用前景。

      [1]陳斯斯.智能視頻監(jiān)控中的圖像壓縮與傳輸技術(shù)研究[D].長沙:湖南大學,2008.

      [2]孫春風.基于LVDS技術(shù)的高速圖像采集系統(tǒng)的設(shè)計[J].儀表技術(shù)與傳感器,2009,46(3):46-51.

      [3]傅祖蕓.信息論:基礎(chǔ)理論與應(yīng)用[M].北京:電子工業(yè)出版社,2001.

      [4]劉麗娟,鄒雪城,雷旭,等.基于小波變換的圖像壓縮芯片的實現(xiàn)[J].半導體技術(shù),2003,28(1):20-23.

      [5]尚媛園.基于SOPC技術(shù)的高速圖像采集控制系統(tǒng)的設(shè)計與研究[J].傳感技術(shù)學報,2011,24(6):864-869.

      [6]蔡偉綱.NiosⅡ軟件架構(gòu)解析[M].1版.西安:西安電子科技大學出版社,2007.

      [7]張春田,蘇玉挺,張靜.數(shù)字圖像壓縮編碼[M].北京:清華大學出版社,2006.

      Design of Image Compression of SPIHT Algorithm Card Based on NiosⅡ

      PENG Qing-qing,DI Li-xia,ZHANG Hui,TANG Jie,LIU Hui
      (North Automatic Control Technology Institute,Taiyuan 030006,China)

      Aiming at the transmission problem of large quantities of data in high speed transmission system,this paper puts forwards a design method of image compression card based on system-on-chip.The method discusses configuration mode of using soft-core Nios Ⅱ processor,hardware implementation principle of simplifying SPIHT algorithm and operation process of receiving and storing of LVDS image data.The paper discusses detailedly the design principle and realization method of each module in system and provides actual performance testing and analysis to each module.The results show that the compression card has stable performance and can efficiently complete the image data compression.

      LVDS,soft-core,SPIHT,image compression,DMA

      TP27

      A

      10.3969/j.issn.1002-0640.2017.11.37

      1002-0640(2017)11-0174-04

      2016-09-21

      2016-10-28

      彭晴晴(1984- ),男,江蘇邳州人,碩士。研究方向:通信與數(shù)據(jù)傳輸技術(shù)。

      猜你喜歡
      嵌入式總線處理器
      基于PCI Express總線的xHC與FPGA的直接通信
      機載飛控1553B總線轉(zhuǎn)以太網(wǎng)總線設(shè)計
      搭建基于Qt的嵌入式開發(fā)平臺
      嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
      Imagination的ClearCallTM VoIP應(yīng)用現(xiàn)可支持Cavium的OCTEON? Ⅲ多核處理器
      多通道ARINC429總線檢查儀
      ADI推出新一代SigmaDSP處理器
      汽車零部件(2014年1期)2014-09-21 11:41:11
      呼嚕處理器
      小青蛙報(2014年1期)2014-03-21 21:29:39
      Altera加入嵌入式視覺聯(lián)盟
      倍福 CX8091嵌入式控制器
      自動化博覽(2014年4期)2014-02-28 22:31:15
      嘉黎县| 彩票| 金塔县| 揭阳市| 屯昌县| 梓潼县| 隆安县| 同江市| 乌鲁木齐县| 兴文县| 安阳县| 丹东市| 利辛县| 侯马市| 汽车| 靖远县| 金沙县| 柳江县| 昂仁县| 车险| 翼城县| 扶风县| 绥江县| 宣化县| 沛县| 拉孜县| 静乐县| 辽阳市| 宝鸡市| 崇礼县| 新密市| 灵石县| 桂平市| 五莲县| 彭州市| 公安县| 额尔古纳市| 云浮市| 灵寿县| 康马县| 焦作市|