999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Vivado HLS的Down Scaler視頻系統設計

2016-03-20 09:14:40
單片機與嵌入式系統應用 2016年11期
關鍵詞:系統設計

安 航

(西安電子科技大學微電子學院,西安710126)

基于Vivado HLS的Down Scaler視頻系統設計

安 航

(西安電子科技大學微電子學院,西安710126)

介紹一種基于FPGA的Down Scaler視頻系統設計。系統的核心部件采用Xilinx Kintex-7的板載XC7K325T芯片,系統設計使用Vivado工具,包括使用Vivado HLS進行Down Scaler模塊設計。首先按照Vivado HLS的代碼規范進行Down Scaler模塊的C/C++代碼編寫,然后利用編譯工具生成RTL級代碼和綜合結果Down Scaler IP核,最后將Down Scaler IP核與TPG、VDMA等Xilinx視頻IP核互連,構建實時視頻系統。在滿足實時性要求和FPGA資源消耗要求的條件下,該設計實現了對Down Scaler視頻算法從PC端軟件處理方式向FPGA平臺硬件處理方式的移植。

Vivado HLS;FPGA;Down Scaler;高層次綜合

引 言

在電子設計自動化領域,高層次綜合工具變得越來越受歡迎,其能夠將C/C++、SystemC、Matlab等高級語言的函數轉譯成RTL級的代碼,這一功能將數字電路設計的抽象層進一步提升。隨著嵌入式系統復雜程度的增加,高層次綜合工具開始深入電子系統尤其是嵌入式系統的設計流程。本文介紹一種基于Xilinx公司的高層次綜合工具Vivado HLS的Down Scaler視頻系統設計。

1 高層次綜合概述

在過去20年,占主導地位的電子設計流程中,硬件設計人員需要手工完成從系統功能指標到RTL級代碼的所有工作。如今,這樣的設計流程開始變得困難,因為越來越多的功能可以被集成在一個芯片上,按照傳統的設計流程,開發人員獨自一人完成所有的功能變得越發困難,但因為設計功能的增多而增加設計團隊的人員數量,從經濟角度上看是不可行的,這意味著設計生產率必須有所提高。高層次綜合能夠通過從算法層到RTL層的自動化來提高設計生產率,從圖1(b)中可以看到,應用高層次綜合,系統設計從功能指標到自動化設計流程開端的距離縮短了。

在設計流程中,應用高層次綜合工具能夠給設計工作帶來以下便利:首先,需要設計人員編寫的代碼量顯著減少,在縮短開發周期的同時降低了錯誤率。其次,在如今的產品開發過程中,驗證所需的時間往往超過設計的時間,使用高層次綜合工具能夠縮短驗證時間,在高層次綜合工具生成設計代碼的同時,還能夠同時生成測試平臺代碼,可以直接通過測試數據來驗證設計代碼是否正確。

2 Down Scaler模塊設計

傳統的Down Scaler運算是在PC架構下進行的,以湯姆遜視頻網絡公司的產品THVN VS7000為例,其中的Down Scaler模塊是PC服務器中的一個C++應用程序,在進行運算處理前,視頻流的獲取通過一塊Black Magic板卡來實現,其接收到的每一幀圖像的像素信息通過PCI-e傳輸到PC服務器。服務器首先將像素信息存儲在3個不用的內存空間Y、U、V,之后應用程序Down Scaler對這3個空間的像素信息進行運算處理。本文描述的設計目標是使用FPGA中的一個Down Scaler IP核實現對視頻流的“硬件處理”,代替傳統PC端的Down Scaler C++程序對圖像進行“軟件處理”的方案,從而取消完整幀像素信息Y、U、V成分的預儲存步驟。

圖1 高層次綜合的Gasjki-Kuhn Y-chart圖描述[1]

2.1 模塊參數要求

視頻的縮小比例為2/3,像素的相位數為2,根據相位數、亮度色度、水平豎直的不同情況,共計有8個濾波窗,每個濾波窗包含11個參數,由Lanczos算法提前計算確定,“鏡像”處理針對圖像邊緣的5個像素點進行。

2.2 模塊設計關鍵點

2.2.1 計算單元

根據參數要求,Down Scaler模塊包括兩種BRAM計算單元,分別是Window和Linebuffer。Window是一個一維存儲空間,用來存儲11個像素點,Linebuffer是一個二維存儲空間,用來存儲11行像素點。Linebuffer在每一個工作頻率上接收新的輸入像素,之前的像素在每一個工作頻率上向存儲空間的下方移動一個位置,即最新接收的像素點總是存儲在Linebuffer中的初始位置。當Linebuffer填滿后,Downscaling運算開始,即通過Window存儲11個采樣像素,并對像素信息進行濾波運算。相比存儲一幀完整圖像后再進行運算的“軟件處理”方式,通過使用Linebuffer和Window作為“硬件處理”方式的存儲單元大幅降低了模塊對存儲空間的需求。“軟件處理”和“硬件處理”Down Scaler模塊的計算單元大小對比如表1所列。

表1 “軟件處理”和“硬件處理”Down Scaler模塊的計算單元大小對比

2.2.2 像素信息計算和鏡像運算整合

與傳統Down Scaler算法對像素分量Y、U、V進行區分后再做鏡像、濾波運算不同,本文中的Down Scaler對輸入的像素點信息直接進行鏡像和濾波運算,這樣做是為了簡化IP結構,更好地適應AXI4-Stream協議[2]。另外,傳統Down Scaler算法包含4個串行過程,分別是水平鏡像、水平縮小、豎直鏡像和豎直縮小,使用Vivado HLS工具的Dataflow模式將串行過程并行執行后,在不改變模塊工作頻率的條件下,只能夠滿足對1920×1080P/25 fps的視頻進行實時運算。為了進一步提高運算性能,需要進一步降低運算過程之間的數據依賴性。新的算法只包含兩個縮小過程,即水平縮小和豎直縮小,鏡像運算被整合在縮小運算中,并且只在需要的時刻進行。對鏡像運算的整合雖然增加了算法編寫的復雜程度,但是縮短了過程間的數據傳輸鏈路,使設計最終能夠達到性能參數要求,滿足對1920×1080P/60 fps的視頻進行實時運算。

3 視頻系統設計

3.1 系統參數要求

輸入視頻流為全高清視頻、1920×1080P/60 fps、YUV4:4:4格式,輸出視頻流為高清視頻、1080×720P/60 fps、YUV4:4:4格式,要求Down Scaler模塊的工作頻率等于輸入視頻像素頻率,即148.5 MHz。

3.2 Down Scaler視頻系統搭建

實時視頻系統架構可以分為兩大類,一類是不含幀緩存模塊的系統,另一類是包含幀緩存模塊的系統,本文中的Down Scaler視頻系統屬于第二類架構。

根據圖2所示的系統架構,使用IP integrator搭建的Down Scaler視頻系統,該系統用到以下IP核:

①Test Pattern Generator[3]——Xilinx IP核,用來產生不同格式的輸入視頻流;

②Down Scaler——Vivado HLS生成的IP核;

③AXI Video Direct Memory Access[4]、AXI Interconnect[5]、MIG 7 Series[6]——XilinxIP核,用來在DDR內存中構建幀緩存器;

④Clocking Wizard[7]——Xilinx IP核,用來生成系統時鐘信號;

⑤Proc Sys Reset——Xilinx IP核,用來生成系統重置信號;

⑥Video In to AXI4-S[8]、AXI4-S to Video Out[9]——Xilinx IP核,用來進行AXI4-Stream和視頻協議轉換;

⑦VTC(Video Timing Controller[10])——Xilinx IP核,用來檢測輸入視頻時鐘周期和產生輸出視頻時鐘周期。

圖2 Down Scaler視頻系統架構

至此,一個基于Vivado HLS的Down Scaler視頻系統設計完成。

結 語

本設計選取Xilinx Kintex-7評估板作為開發平臺,使用高層次綜合工具Vivado HLS進行Down Scaler模塊的設計、仿真和驗證,使用Vivado進行實時視頻系統構建,在滿足實時性要求和FPGA資源消耗要求下,實現了對Down Scaler視頻算法從PC端軟件處理向FPGA平臺硬件處理的移植。經測試,由TPG生成的1080P視頻流經過本文設計的Down Scaler系統,成功輸出了720P視頻流,Down Scaler的性能滿足了設計要求。

隨著系統設計和算法日益復雜,新的設計方法——高層次綜合開始出現并將逐漸取代傳統的硬件系統設計方法,成為系統設計的主流方式。未來的設計者可以從算法的角度直接下降到硬件平臺來完成硬件開發,對于復雜的算法,這一方法將大幅縮短開發周期,顯著降低代碼量,同時也為算法工程師和軟件工程師打開了硬件設計的大門。

[1]Wim Meeus,Kristof Van Beeck,Toon Goedemé,et al.An overview of today’s high-level synthesis tools[J].Design Automation for Embedded System,2012,16(3):31-51.

[2]ARM.AMBA 4 AXI4-Stream Protocol Specification[EB/ OL].[2016-05].http://infocenter.arm.com/help/index. jsp?topic=/com.arm.doc.ihi0051a/index.html.

[3]Xilinx.LogiCORE IP Test Pattern Generator v5.0[EB/OL]. [2016-05].http://www.xilinx.com/support/answers/ 56929.html.

[4]Xilinx.LogiCORE IP AXI Video Direct Memory Access v6.0 [EB/OL].[2016-05].http://www.xilinx.com/support/documentation/ip_documentation/axi_vdma/v6_0/pg020_axi_vdma. pdf.

[5]Xilinx.LogiCORE IP AXI Interconnect v2.0[EB/OL]. [2016-05].http://www.xilinx.com/support/documentation/ip_documentation/axi_interconnect/v2_0/pg059-axi-interconnect.pdf.

[6]Xilinx.7 Series FPGAs Memory Interface Solutions v1.9 and v1. 9a[EB/OL].[2016-05].http://www.xilinx.com/support/documentation/ip_documentation/ug586_7Series_MIS.pdf.

[7]Xilinx.LogiCORE IP Clocking Wizard v5.0[EB/OL].[2016-05].http://www.xilinx.com/support/documentation/ip_ documentation/clk_wiz/v5_0/pg065-clk-wiz.pdf.

[8]Xilinx.LogiCORE IP Video In to AXI4-Stream v3.0[EB/ OL].[2016-05].http://www.xilinx.com/support/documentation/ip_documentation/v_axi4s_vid_out/v3_0/pg044_v_axis_ vid_out.pdf.

[9]Xilinx.LogiCORE IP AXI4-Stream to Video Out v3.0[EB/ OL].[2016-05].http://www.xilinx.com/support/documentation/ip_documentation/v_axi4s_vid_out/v3_0/pg044_v_axis_ vid_out.pdf.

[10]Xilinx.LogiCORE IP Video Timing Controller v6.0[EB/ OL].[2016-05].http://www.xilinx.com/support/documentation/ip_documentation/v_tc/v6_0/pg016_v_tc.pdf.

[11]徐家惠,戚海峰,高健,等.基于Vivado HLS的AC97音頻系統設計[J].實驗室研究與探索,2014,32(12):35-38.

安航(工程師),研究方向為嵌入式系統開發與應用。

Down Scaler Video System Based on Vivado HLS

An Hang
(School of Microelectronics,Xidian University,Xi'an 710126,China)

The design of Down Scaler video system based on FPGA is introduced.The key component of the system is XC7K325T chip on Xilinx Kintex-7 board,and Vivado design suite is used to design,including the use of Vivado HLS for Down Scaler module design.Firstly,the Down Scaler is described with C/C++language according to the specifications of Vivado HLS.Then,the RTL model and the IP core are generated by the Vivado HLS tool.Finally,a real-time video system is built by connecting the Down Scaler IP core and other Xilinx IP cores such as TPG and VDMA.The design transforms the Down Scaler video algorithm from the PC-based software processing method to the FPGA-based hardware processing method under the condition of meeting the requirementsof real-time performance and FPGA resource consumption.

Vivado HLS;FPGA;Down Scaler;high-level synthesis

TN791

:A

薛士然

2016-05-27)

猜你喜歡
系統設計
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
基于PowerPC+FPGA顯示系統
半沸制皂系統(下)
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
主站蜘蛛池模板: 欧美黄网在线| 国产91全国探花系列在线播放| 超清无码一区二区三区| 久草青青在线视频| 伊人久热这里只有精品视频99| 日本高清在线看免费观看| 青青草国产一区二区三区| 最新亚洲人成无码网站欣赏网| 亚洲精品国产综合99| 国产h视频在线观看视频| 亚洲精品视频免费| a级毛片毛片免费观看久潮| 呦女亚洲一区精品| 国产精品开放后亚洲| 久久精品国产精品一区二区| 五月婷婷精品| 国产区在线看| 精品成人一区二区三区电影 | 国产清纯在线一区二区WWW| 女同国产精品一区二区| 国产精品女人呻吟在线观看| 日韩色图在线观看| 欧洲熟妇精品视频| 亚洲精选高清无码| 97国内精品久久久久不卡| 色久综合在线| 综合久久久久久久综合网| 伊人久久福利中文字幕| 萌白酱国产一区二区| 在线播放国产一区| 日韩国产黄色网站| 四虎影视8848永久精品| 欧美午夜理伦三级在线观看| 91精品国产一区| 日日摸夜夜爽无码| 91视频青青草| 91探花国产综合在线精品| 国产无码精品在线播放| 国产h视频免费观看| 亚洲男人的天堂久久精品| 欧美中文字幕第一页线路一| 99热这里只有精品在线观看| 欧美成在线视频| 人妻精品久久无码区| 国产尤物视频在线| 日本三级精品| 亚洲美女高潮久久久久久久| 欧美午夜在线播放| 伊人AV天堂| 高潮毛片无遮挡高清视频播放| 久久久久中文字幕精品视频| 国产亚洲精品自在线| 天天综合网站| 亚洲AV人人澡人人双人| 亚洲无码高清一区二区| 超薄丝袜足j国产在线视频| 国产一区二区免费播放| 无码不卡的中文字幕视频| 欧美性猛交一区二区三区| 国产激情在线视频| 亚洲黄色片免费看| 日韩欧美国产综合| 日本高清视频在线www色| 午夜福利免费视频| 人人澡人人爽欧美一区| 国产精品无码一二三视频| 欧美视频在线第一页| 粉嫩国产白浆在线观看| 97免费在线观看视频| 亚洲va视频| 久久久久亚洲精品无码网站| 色屁屁一区二区三区视频国产| 人人91人人澡人人妻人人爽| 欧美亚洲一区二区三区导航| 亚洲日韩精品综合在线一区二区| 成年网址网站在线观看| 久久久久久高潮白浆| 永久成人无码激情视频免费| 玖玖精品在线| 久久国产乱子| 精品久久蜜桃| 国产精品亚洲va在线观看|