|
7 S1 V& R. n; H+ n# p( V
本文主要介紹基于FPGA+ MicroBlaze裸機(jī)的視頻開發(fā)案例的使用說明,適用開發(fā)環(huán)境:Windows 7/10 64bit、Xilinx Vivado 2017.4、Xilinx SDK 2017.4。本章節(jié),主要講解:視頻開發(fā)案例:HDMI視頻輸入、HDMI視頻輸出案例。主要基于創(chuàng)龍科技TLK7-EVM評(píng)估板進(jìn)行演示。
$ ]: F4 T+ ]" R" D% B
( [# Z9 T+ Q1 S6 t5 R/ \' n) f3 L7 Y* R; ~5 ]: H$ d; V
TLK7-EVM是一款基于Xilinx Kintex-7系列FPGA設(shè)計(jì)的高端評(píng)估板,由核心板和評(píng)估底板組成。核心板經(jīng)過專業(yè)的PCB layout和高低溫測(cè)試驗(yàn)證,穩(wěn)定可靠,可滿足各種工業(yè)應(yīng)用環(huán)境。
; v* A; m6 w0 `
# ]9 j6 x5 h' \& ^; A* ]5 F3 K& S- s0 A+ [) ~; A
評(píng)估板接口資源豐富,引出FMC、SFP+、PCIe、SATA、HDMI等接口,方便用戶快速進(jìn)行產(chǎn)品方案評(píng)估與技術(shù)預(yù)研。9 _% @6 ?0 @: N8 R5 o- B
) @: r5 |4 x2 H+ h2 U' H N: |9 U
, q+ E! t2 y7 C8 m) S​% ~* }( P3 U: M4 R
TLK7-EVM評(píng)估板
7 }2 t: d+ R( Y" c6 l1 I h+ Z; w, ?4 {9 @
; w1 }- G# y% r& r7 @1 u% u" _
開發(fā)案例主要包括:. n9 |9 h! X7 |* l
% R5 E, Q+ g; g* M
$ Z- ]- b, W+ w/ i- h
Ø CameraLink、SDI、HDMI、PAL視頻輸入/輸出案例
7 N" N! Q9 m9 {( [- tØ 高速AD(AD9613)采集+高速DA(AD9706)輸出案例
& u' {* |, v" y6 yØ AD9361軟件無線電案例
+ Y! t2 N0 @- o5 h IØ UDP(10G)光口通信案例1 }( U$ y6 M3 V! ^. i, u" n# y
Ø UDP(1G)光口通信案例
: A! ^# d) B2 |, H) ^Ø Aurora光口通信案例
; b" ^4 X) d, u/ ^$ @3 GØ PCIe通信案例
8 g h2 |- A! Z: H' V. k9 f6 r3 b9 v4 G4 {
1 W, C- K, p. m- r- |5 T! V B; v( }" ~% a3 j
l 案例功能
* m% V v; o0 N {& I! v. w' v' Q2 ^) V+ f/ ^
案例功能:評(píng)估板通過FMC視頻模塊TL7611/9022F的HDMI IN接口進(jìn)行1080P60視頻采集,并通過TL7611/9022F模塊的HDMI OUT接口將采集到的視頻進(jìn)行輸出。案例源碼、產(chǎn)品資料(用戶手冊(cè)、核心板硬件資料、產(chǎn)品規(guī)格書)可點(diǎn): site.tronlong.com/pfdownload獲取。
/ G- g F* _' y+ ~2 @/ K4 q
: }3 M7 e; o3 j4 ~ e8 L2 Y! |+ J$ ?
​
& m5 p4 T- R9 g, [- Y# {& e
0 G! B) T7 M: ]4 W! C# c, ~0 [% p& S* r3 G
l 操作說明: g7 {3 {) K; b6 f5 |. K
7 U( P. ?; n& a' N) \5 Q
請(qǐng)將創(chuàng)龍科技的TL7611/9022F模塊連接至評(píng)估板FMC1接口,評(píng)估板J1跳線帽選擇3.3V檔位,以配置FMC IO的BANK電壓為3.3V。
+ y0 H* b' k7 ?6 t/ R( I' h準(zhǔn)備一臺(tái)擁有HDMI OUT接口的PC機(jī)(例如筆記本),通過HMDI數(shù)據(jù)線將PC機(jī)HDMI OUT接口連接至TL7611/9022F模塊的HDMI IN接口,PC機(jī)HDMI OUT接口用作圖像輸出。通過HMDI數(shù)據(jù)線將一臺(tái)HDMI顯示屏連接至TL7611/9022F模塊的HDMI OUT接口,HDMI顯示屏用作圖像顯示。" J3 w* I; R1 J8 f. k' [
請(qǐng)運(yùn)行程序,即可看到串口調(diào)試終端打印如下信息,然后在PC機(jī)的顯卡設(shè)置(或圖形屬性)中,按照下圖設(shè)置HDMI分辨率為1920x1080、刷新率為60pHz。
# N$ W @! ]. X" D( T# B# P Y8 f6 z" s1 U/ O; \. K( ?- |4 S
: W6 Q$ z5 F* z0 j! ^3 z; ~0 ^
​
- y6 m; D, e+ C& [
5 I# M" P, r) N3 g _1 D2 Z9 r2 m/ B4 r9 L( ~) Y
​1 l K3 d4 C$ o4 ~( p: c& `
! e) b3 @" a9 L5 a$ p
% K( l6 G- ~. V8 l! I此時(shí),HDMI顯示屏將顯示PC機(jī)HDMI OUT接口輸出的圖像。# L2 {+ ]* q) ~
​
5 k+ H8 t9 @3 z( E8 f$ n, D( p3 N Z
& W, I# K: @ f! N% `7 ~. k& h
" x; @) ~! P+ U0 D4 w! P5 a1 N9 t4 V, o/ d! M* d3 }& g
​
7 e: P j/ v& @6 ~ K# Z
+ W/ |8 n4 Z0 a# k- _; `7 ^( G% D! T, [
6 W4 {$ e2 z& r6 `; X4 m' B; o0 k3 S, K6 ^! S( |* p1 o
+ Q. K' _1 C2 _6 h( I$ s
l 關(guān)鍵代碼(MicroBlaze)
; J+ e5 v6 z. y8 z* r: O& }1 h! d( r( N& M. X6 e, c# B) M7 U5 L
MicroBlaze裸機(jī)源碼為"sw\baremetal_demo\project\hdmi_capture_display\src\",關(guān)鍵代碼說明如下。
% _- n0 S( M& o4 v5 m( r3 l
4 n( J: c# K+ v: j( Y! B: H- N, e0 s% _. ], m* }+ J8 ~
(1) 調(diào)用Sil9022A、ADV7611初始化函數(shù)。初始化前需先通過AXI GPIO IP核控制Sil9022A和ADV7611的復(fù)位引腳,使其復(fù)位后再進(jìn)行初始化。! }1 M& d; }% o2 s& F% ]# m% K
​
X$ U* R' P( c, x$ C; ^# T+ w0 `5 |9 R h
2 ^8 R/ F, l2 S
(2) 初始化VDMA,將采集到的視頻數(shù)據(jù)緩存至DDR,并將視頻數(shù)據(jù)搬運(yùn)至AXI4-Stream to Video Out IP核,再進(jìn)行HDMI視頻輸出。% ? k1 k, [: n* R2 q
​! `) l8 s# _4 v
( {0 I$ }! X6 W# F2 c, l4 h& P
, Q7 L# y, b# h J(3) 初始化Sil9022A。
& \% r7 E4 ^) s​) w3 T H6 D' n( h% U: D9 P
) Y3 n, a8 X( w: g# U* ^
6 Y) w% [) J+ X$ X$ n6 c+ @& E​4 ~" L2 [) _8 Y4 e6 j1 A, F3 ]7 r# g
* w- I( O, ~- I* S) E' l7 Y
3 ] v+ l) `+ r' a5 \& q A(4) 初始化ADV7611。4 }: N- Y% ^4 J" m+ ?
​* Y' F0 f+ b1 F+ Q% }, @
4 N6 M! g- N$ F4 `3 C. E3 r
" l- X; M) U2 q% z5 a) s |
|