I、总体介绍
一、简介:本项目是将计算密集型的任务从PS移动的PL中加速,好处有以下两点:
1、高清视频流的实时处理,60fps
2、释放CPU的资源
二、Zynq Ultrascale MPSoC的架构:分三种系列,CG,EG和EV,EV有VCU,下面是EV的架构
主要资源有:
1、APU:四核ARM Cortex-A53 64bit CPU
2、RPU:双核:ARM Cortex-R5 32bit CPU
3、多媒体单元 :
1)GPU:ARM Mali-400MP2
2) VCU:Video encoder/decoder unit,最高可达4K/60fps
3) DisplayPort interface: 可达4K/30fps
4、高速外设:
5、低速外设
6、PMU(Platform Management Unit):平台管理单元
7、Configuration security unit (CSU)
8、6-port DDR controller with ECC:
supporting x32 and x64 DDR4/3/3L and LPDDR4/3
三、软件系统架构
RPU-1读取AXI-Monitor的数据通过IPC方法与APU通信,
多个核通信的方法是共享内存。
视频数据流的来源
1、HDMI in PL
2、MIPI CSI-RX in PL
3、TPG in PL
4、USB Camera in PS
5、PS上软件仿真的TPG
算法的类型:
1、2-D卷积
2、密集光流算法
输出接口:
1、PS上的display port
2、PL上的HDMI
两个接口都支持两层,一层为video,一层为图像,图像层为GPU提供。
四、PL的框架
五、视频的输出格式:
II、Vivado工程
一、TPG流水线
1、格式:YUV:422
2、每个时钟两个像素:2 ppc (pixel per clock)
3、视频blanking的介绍:
4、像素时钟频率计算的介绍:
二、HDMI输入流水线
1、图中的缩写VPSS为视频处理子系统IP,包含多种功能,如CSC,Scaling等可以只使用其中一种处理算法。如VPSS(Scalar)就是只使用视频缩放功能。
2、输出格式YUV4:2:2格式
三、MIPI CSI流水线
1、CSI-RX子系统输出的是分量为10bit的Raw Data
2、通过AXI Subset Convertor转换为8bit。
3、通过Demosaic进行插值,输出为RGB888
4、通过Gamma进行伽马校正(这个IP是使用查找表的形式实现的)
输出仍为RGB888
5、通过 VPSS(CSC)进行图像色彩校正,对比度增强的,输出仍为RGB888
6、通过VPSS(Scalar)进行视频缩放,转换成YUV
7、最终输出:
2ppc, enabling up to 2160p60 performance
四、2D-Filter流水线:使用SDSoC产生
1、系数由GP口和stream fifo、datamover给出
五、光流算法流水线
六、DisplayPort显示流水线
1、一层是video,一层是graphics
2、DisplayPort最大两lane,最大线速率为5.4Gb/s
3、使用PS-GTR作为收发器
七、HDMI显示流水线
1、使用Video Mixer IP将图像和视频数据混合在一起,然后显示。
2、Video的数据为YUV422,16bit,而图像为ARGB,32bit
八、时钟、复位和中断
1、时钟
2、复位
3、中断
九、I2C拓扑
III、参考资料
1、ug1221
2、wiki.xilinx.com/Zynq%20UltraScale%20MPSoC%20Base%20TRD%202017.4