做图像处理的朋友们经常会有视频编解码的需求,常用的方法是要么增加一个专有芯片要么买专用的FPGA实现的IP,这都增加了设计复杂度以及成本,Zynq MPSoC的EV系列含有VCU视频编解码单元,就非常好的解决了这个问题,用起来简单方便,除了DDR带宽几乎不占其他FPGA资源,简直不要太爽。Zynq MPSoC的PS部分自带DP显示单元,从Vivado到Petalinux对其都做到了完美、透明的配置,用户不用操心驱动等问题,极大的增加了用户体验。本文演示如何搭建VCU工程以及如何运行将mp4文件解码显示到DP显示器上。
平台、配件及软件
- ZCU104
- Vivado2020.1
- Petalinux2020.1
- micro usb数据线
- DP数据线
- DP显示器
Vivado工程
整个工程的block desigh如下:
VCU的配置也比较简单,使能Encoder和Decoder,并按照下图进行配置。
带宽的大小决定了VCU的性能,如果对于性能要求不高的话,可以随意连接HP口,例如只有一路1080P30FPS的编解码。对性能要求高的话可以将VCU不同的AXI4接口连接到4个HP口。本设计将ENC连接到HP2,DEC连接到HP