《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于FPGA+ARM的高速計算機屏幕信息記錄系統
基于FPGA+ARM的高速計算機屏幕信息記錄系統
來源:電子技術應用2011年第6期
孫紅亮1,唐艷發1,梁春鋒2,吳 彪2,張 利2
(1.清華大學 微電子所,北京100084; 2.清華大學 電子工程系,北京100084)
摘要: 介紹一種自主研發的高速計算機屏幕信息記錄系統。該系統支持VGA/DVI輸入,支持SVGA、XGA、SXGA、UXGA等多種計算機屏幕分辨率圖像的連續壓縮和存儲。實驗表明,本系統的單幀圖像壓縮性能接近JPEG2000標準,PSNR值優于JPEG標準。
中圖分類號: TN409;TP302
文獻標識碼: B
文章編號: 0258-7998(2011)06-0038-03
High speed computer screen recorder system based on FPGA+ARM
Sun Hongliang1,Tang Yanfa1,Liang Chunfeng2,Wu Biao2,Zhang Li2
1.Institute of Microelectronics, Tsinghua University, Beijing 100084,China; 2.Department of Electronic Engineering, Tsinghua University, Beijing 100084,China
Abstract: A high speed computer screen recorder system based on FPGA+ARM is introduced in this paper. This system could support image signal from both DVI and VGA interface, and compress computer screen images with common resolutions, like SVGA, XGA, SXGA and UXGA. The experimental results show that the compression quality(PSNR) of this system could approach JEPG2000 standard and far better than JPEG standard.
Key words : FPGA;ARM;computer screen;image compression;wavelet transform


 隨著計算機應用越來越廣泛,越來越多的重要信息需要由計算機屏幕顯示,因此對計算機屏幕記錄的需求越來越迫切。同時, 伴隨著顯示器的高速發展,計算機屏幕分辨率日益增大,需要記錄的圖像分辨率也逐漸增大,因此,對能夠記錄計算機屏幕信息的設備需要日益增長。目前的圖像壓縮存儲方案大都無法支持高分辨率圖像,如ADI公司推出的圖像壓縮芯片ADV212[1],該芯片支持的最大分辨率為1 024×1 024,無法滿足SXGA(1 280×1 024)或更高的圖像分辨率。另外,在一些DSP解決方案中,因為DSP接口不靈活以及DSP本身處理能力的限制,很難支持高分辨圖像壓縮。
    本設計開發出了一套基于雙FPGA+ARM架構的高速計算機屏幕圖像壓縮系統。系統通過對圖像壓縮系統任務的劃分,利用FPGA的并行計算能力和靈活的編程方式,完成圖像壓縮算法。對于壓縮后的碼流,系統采用ARM管理,基于linux的嵌入式ARM系統能夠以文件的形式存儲碼流,另外,ARM對網絡和音頻常用設備能方便地管理。系統支持主流接口(VGA,DVI),壓縮后的碼流可以存儲在本地硬盤,也可以通過網絡發送到遠端服務器。雙FPGA的設計對計算機屏幕圖像壓縮更為方便,原始圖像經過前端預處理FPGA進行幀間檢測,以決定該幀圖像進入主FPGA的壓縮模式,主FPGA為核心壓縮引擎,負責完成高速圖像壓縮算法。
1 系統架構與實現
    系統整體架構如圖1所示,采用雙FPGA+ARM架構,主要包括圖像前端預處理、圖像壓縮模塊和碼流管理部分。

 

 

    前面一塊FPGA完成前端預處理,如分辨率檢測、色彩轉換和圖像分析等功能;后面一塊FPGA用來實現圖像實時壓縮,其中ARM對系統進行管理,如壓縮后碼流管理、網絡管理和音頻錄制等。
1.1 預處理模塊
    本系統同時支持VGA、DVI兩種主流顯卡接口。采用AD9888[2]作為視頻模數轉換器,TI公司的TFP403[3]為DVI接收芯片。Xilinx公司Virtex4[4](XC4VLX40)完成圖像預處理,主要包括圖像數據的采集、色彩空間轉換和幀間檢測。前端處理模塊如圖2所示。

1.1.1 圖像數據采集
    預處理FPGA接收到的圖像數據為接口芯片送來的圖像數據,包括像素時鐘信號(PCLK)、場同步信號(VSYNC)、行同步信號(HSYNC)以及數據信號(R[7:0],G[7:0],B[7:0])。圖像數據的采集包括判斷圖像分辨率和提取圖像數據兩個步驟。
    當前的計算機屏幕分辨率很多,工業VGA標準規定了各種分辨率的像素時鐘及場、行同步信號時序,根據相鄰場同步信號(VSYNC)之間行同步信號(HSYNC)數目,以及相鄰行同步信號(HSYNC)之間像素時鐘(PCLK)數目識別VGA信號分辨率。根據場同步信號(VSYNC)和行同步信號(HSYNC)提出圖像數據。
1.1.2 色彩空間轉換
    VGA輸出為RGB信號,而人眼對圖像的亮度分量更為敏感,所以,對圖像數據進行色彩空間轉換,將RGB信號轉換為YUV信號,轉換公式:
 
    系統實現時采用4:2:2采樣模式,FPGA采用定點化處理后,得到亮度分量Y 和色度分量UV。
1.1.3 幀間檢測
    幀間檢測的核心思想是對比相鄰兩幀圖像,判斷每個像素點是否變化。以3×3的塊為判斷單元,如果有變化則將該像素位置和像素值都存起來;如果沒有變化則不傳輸這些信息。當得到了一個4×4的塊以后把這個16個點的信息作為一個整體傳給后面的模塊,然后統計1幀圖像總的碼流大小。如果該值低于一個設定的閾值,則認為當前幀沒有變化,直接傳當前幀變化部分的像素和位置信息到后面的碼流整理模塊;如果統計后碼流的大小大于設定的閾值,則將當前幀送入LX100中進行壓縮。
1.2 圖像壓縮模塊
    圖像壓縮為系統核心模塊,該壓縮引擎包括小波變換和熵編碼,算法全部由系統主FPGA完成。該FPGA芯片選用Xilinx公司的Virtex4[4]系列FPGA(XC4VLX160)。圖像壓縮引擎結構如圖3。

    在系統算法設計中,圖像小波變換采用了基于離散小波變換的空間推舉算法(SCLA)[5]。不同于傳統的離散小波變換(DWT),SCLA對行與列同時進行變換,其乘法次數是小波變換算法中最少的,而重建圖像質量也很高,PSNR值優于JPEG,接近JPEG2000。編碼算法采用了改進的無鏈表零樹編碼算法(SLC),該算法綜合了多層次零樹編碼算法(SPIHT[6])和無鏈表零樹編碼(LZC[7])的特點,在性能上優于LZC,逼近SPIHT,而且易于硬件實現。
    系統的架構由FPGA和兩片外部SDRAM實現。SDRAM用于緩存小波變換后的小波系數。FPGA完成小波變換算法SCLA和熵編碼算法SLC。SCLA算法由5個流水線小波濾波器完成,每個濾波器完成一層小波分解,而小波分解運算需要乘法器,在FPGA芯片選型時,根據小波濾波器中需要乘法器的個數選擇FPGA。在本系統中,5個流水的小波濾波器包括36個乘法器,對于亮度分量Y和色度分量UV兩路數據并行處理,則需要72個乘法器,而在Virtex4系列FPGA(XC4VLX160)中有96個DSP單元。由小波變換得到小波系數,系統設計時采用2片外部SDRAM和FPGA片內SRAM結合的方法緩存小波系數。對于亮度分量Y和色度分量UV兩路數據并行處理以提高系統吞吐量,SDRAM1和SDRAM2分量用來緩存Y和UV的小波系數。熵編碼算法SLC負責對小波系數編碼,該算法以一棵小波樹為基本處理單元,即當前端小波系數構成一棵小波樹時,熵編碼模塊便啟動編碼,從而完成一幀圖像所有小波樹的編碼。
1.3 碼流管理模塊
    對于圖像經過FPGA壓縮后的碼流,系統采用ARM芯片進行管理,該芯片為Cirrus Logic公司的工業級嵌入式處理器EP9315[8]。該處理器具有ARM920T核,最高主頻達200 MHz,并具有豐富的外圍接口,包括網絡、USB、音頻等。FPGA和ARM之間通信由I2C總線完成,當FPGA完成一幀圖像壓縮后,通過FPGA的GPIO發送一個終端信號給ARM,并準備好一幀碼流長度等信息。ARM中斷服務程序響應該中斷,通過I2C接口讀走碼流長度,通過映射SRAM的方式從FPGA讀取壓縮碼流到ARM內存,然后以文件的形式存儲碼流到本地硬盤,或者通過網絡發送到遠端服務器。
2 實驗結果與性能
2.1 算法性能驗證

    系統設計初期,用軟件對算法的性能進行了驗證。在PC上對一組Lena等標準圖像進行壓縮,得到不同的重建圖像,對重建圖像求解PSNR值,式(2)為PSNR計算公式。其中Mean Square Error(MSE)表示原始圖像和重建圖像對應像素的均方誤差值。

    表1為本系統采用算法與JPEG及JPEG2000對標準圖像壓縮后重建圖像的PSNR比較。從表中可以看出,本系統采用算法遠優于JPEG,接近JPEG2000。PSNR值的比較以壓縮比(對應表中Bitrate)為基準,即在相同壓縮比的情況下對比PSNR值。

2.2 硬件實現和硬件壓縮
    硬件系統電路板采用10層板制作工藝,電路板面積為30.8 cm×16.7 cm,在100 MHz工作頻率下對系統測試,結果表明系統工作穩定。表2為系統對1 600×1 200、1 280×1 024和1 024×768三種常見分辨率的計算機屏幕進行的記錄,記錄的圖像源采用了各類計算機屏幕常見圖像,如Word文檔、PPT文件、動態雷達圖像和一段視頻。其中,PPT的平均翻頁速度為60 s。由表2可以看出,系統對于Word文檔、PPT文檔等只有局部變化的圖像能夠達到非常高的壓縮比,壓縮幀率約為60幀/s。

    本文結合應用提出圖像壓縮算,以FPGA為核心計算平臺,設計了一套計算機屏幕圖像記錄系統。系統實現了對1 280×1 024×24 bit圖像每秒記錄27幀,對1 600×1 200×24 bit圖像每秒記錄17幀,對PPT、Word文檔等只有局部變化的屏幕圖像每秒可記錄60幀,且壓縮后重建圖像質量優于JPEG,與JPEG2000接近。同時,對于壓縮后的碼流,系統采用ARM以文件的方式管理,有利于碼流本地存儲以及通過網絡傳輸等靈活的應用。另外,系統支持多種輸入接口,提高了硬件系統的靈活性,具有廣闊的應用前景。
參考文獻
[1] Analog Devices Corporation.JEPG2000 video codec ADV212  [EB/OL].[2010-02-26].http://www.analog.com/static/imported-files/data_sheets/ADV212.pdf.
[2] Analog Devices,Inc.AD9888-100/140/170/205MSPS analog flat panel interface[EB/OL].[2010-02-26].http://data.eeworld.com.cn/pdf/68311_AD_AD9888.pdf.
[3] Texas Instruments,Inc.TFP403-TI panelbus digital
     receiver[EB/OL].[2010-02-26].http://focus.ti.com/lit/ds/  symlink/tfp403.pdf.
[4] Xilinx,Inc.Virtex-4 family overview[EB/OL].[2010-02-26].http://www.xilinx.com/support/documentation/data_sheets/ds112.pdf.
[5] MENG H,WANG Z.Fast spatial combinative lifting algorithm of wavelet transform using the 9/7 filter for  image block compression.Electron.Lett.,2000,36(21).
[6] SAID A,PEARLMAN W A.A new,fast,and efficient
     image codec based on set partitioning in hierarchical trees. IEEE Trans.CVST,1996,6(3):243-250.
[7] LIN Wen Kuo,BURGESS?。?Listless zerotree coding for color images.Conference Record of the Asilomar Conference on Signals.Systems & Computers,v1,1998:231-235.
[8] Cirrus Logic,Inc.DS631UM1.EP9315 user’s guide[EB/OL].  [2010-02-26].http://www.cirrus.com/en/pubs/manual/EP93xx_Users_Guide_UM1.pdf.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产日韩欧美中文在线播放| 亚洲一区二区三区久久 | 欧美日韩国产综合视频在线观看| 久久亚洲视频| 久久久欧美精品sm网站| 久久久国产午夜精品| 久久精品国产一区二区三区免费看| 午夜精品久久久久久99热软件| 亚洲制服丝袜在线| 亚洲综合日韩中文字幕v在线| 亚洲视频一二| 亚洲一区欧美二区| 午夜精品视频在线观看一区二区| 亚洲免费一区二区| 午夜视黄欧洲亚洲| 欧美在线播放| 久久嫩草精品久久久久| 久久婷婷综合激情| 女生裸体视频一区二区三区| 欧美a级在线| 欧美精品日韩综合在线| 欧美日韩一区在线| 欧美午夜宅男影院| 国产精品网站视频| 国内精品久久久| 亚洲第一狼人社区| 日韩天天综合| 亚洲在线一区| 久久高清国产| 亚洲精选大片| 亚洲婷婷综合色高清在线| 亚洲一区二区在线免费观看视频 | 欧美精品午夜视频| 欧美亚一区二区| 国产精品制服诱惑| 国语自产精品视频在线看一大j8| 在线精品国产成人综合| 亚洲精品国产精品久久清纯直播| 日韩一级视频免费观看在线| 亚洲一区二区精品在线| 久久成人18免费观看| 亚洲精品视频在线播放| 亚洲一区久久久| 欧美资源在线| 欧美国产另类| 国产精品久久久久久亚洲调教 | 久久精品九九| 欧美a级片网| 欧美性大战久久久久久久蜜臀| 国产精品一区久久久久| 激情小说亚洲一区| 一本色道久久综合狠狠躁篇怎么玩 | 国产精品久久久久一区| 尤妮丝一区二区裸体视频| 亚洲精品社区| 久久国产视频网站| 在线视频免费在线观看一区二区| 欧美亚洲视频在线观看| 欧美激情1区2区| 国产欧美一区二区精品性色| 亚洲国产精品一区| 午夜精品福利一区二区三区av| 亚洲伦理久久| 久久黄金**| 欧美视频免费看| 永久域名在线精品| 亚洲尤物视频在线| 亚洲精品网址在线观看| 欧美一区三区三区高中清蜜桃| 欧美va亚洲va国产综合| 国产精品综合久久久| 亚洲肉体裸体xxxx137| 欧美在线一级va免费观看| 亚洲视频999| 免费视频最近日韩| 国产亚洲精久久久久久| 日韩特黄影片| 亚洲人成网站在线播| 久久aⅴ国产紧身牛仔裤| 欧美日韩国产综合视频在线观看中文| 国产亚洲激情| 亚洲一区二区视频| 在线一区日本视频| 欧美电影美腿模特1979在线看| 国产欧美日韩不卡| 一区二区电影免费观看| 亚洲品质自拍| 久久久久久自在自线| 国产精品试看| 一本一本a久久| 日韩一区二区免费高清| 美女精品网站| 国内一区二区三区| 亚洲免费一在线| 亚洲网站在线| 欧美日韩国产专区| 亚洲国产一区二区三区高清| 亚洲电影中文字幕| 久久久av水蜜桃| 国产精品一卡| 宅男精品视频| 中文精品在线| 欧美精品在线极品| 亚洲欧洲精品一区二区三区不卡 | 一区二区冒白浆视频| 亚洲狼人精品一区二区三区| 免费在线观看精品| 国内精品久久久久国产盗摄免费观看完整版 | 国产一区二区三区免费不卡 | 久久亚洲国产精品一区二区| 国产欧美一区二区三区沐欲| 中文精品视频| 亚洲一区二区3| 欧美三级在线视频| 日韩亚洲欧美综合| 亚洲视频在线二区| 欧美日韩亚洲在线| 一区二区三区国产精华| 亚洲性人人天天夜夜摸| 欧美日韩大片| 亚洲精品久久久一区二区三区| 亚洲九九九在线观看| 欧美另类69精品久久久久9999| 亚洲欧洲在线免费| 一区二区三区精品在线| 欧美日韩一视频区二区| 一区二区电影免费观看| 亚洲欧美另类久久久精品2019| 国产精品卡一卡二卡三| 亚洲午夜国产一区99re久久| 亚洲综合好骚| 国产日韩欧美精品| 午夜欧美大片免费观看| 久久精品日产第一区二区三区 | 亚洲成人资源网| 99精品热视频只有精品10| 欧美三日本三级三级在线播放| 9国产精品视频| 欧美亚洲免费| 含羞草久久爱69一区| 亚洲国产三级在线| 欧美久久久久| 亚洲一区二区三区免费观看| 欧美在线关看| 在线观看不卡| 夜夜嗨一区二区三区| 国产精品高潮呻吟视频| 午夜欧美电影在线观看| 老司机午夜精品视频| 亚洲精品午夜精品| 亚洲欧美激情四射在线日| 国产日韩欧美| 亚洲精品国产精品国产自| 欧美日韩亚洲不卡| 亚洲一区二区三区在线播放| 久久精品国产综合| 91久久精品日日躁夜夜躁欧美| 亚洲午夜精品一区二区| 国产欧美在线观看一区| 最新国产成人av网站网址麻豆| 欧美日韩一区二区免费视频| 午夜欧美精品| 欧美精品色综合| 亚洲欧美激情一区二区| 美女黄毛**国产精品啪啪| 99综合电影在线视频| 久久精品亚洲热| 亚洲美女诱惑| 欧美在线观看天堂一区二区三区| 1769国产精品| 午夜精品一区二区三区四区| 亚洲第一精品福利| 亚洲免费在线视频| 亚洲福利在线视频| 亚洲欧美日韩综合aⅴ视频| 悠悠资源网亚洲青| 午夜精品久久久久久久蜜桃app| 樱桃视频在线观看一区| 亚洲欧美日韩专区| 亚洲国产婷婷香蕉久久久久久| 欧美一区在线看| 亚洲人成77777在线观看网| 欧美一区二区三区免费在线看| 亚洲国产精品久久久久婷婷884| 午夜在线视频观看日韩17c| 亚洲区在线播放| 久久久久综合网| 一本到12不卡视频在线dvd| 麻豆视频一区二区| 午夜精品www| 欧美日韩中文字幕在线| 亚洲黄色免费网站| 国产亚洲精品bt天堂精选| 亚洲天堂av高清| 亚洲成色999久久网站| 久久gogo国模啪啪人体图| 一区二区三区国产在线| 欧美成人综合一区| 欧美中文日韩| 国产精品一区在线观看|