Xilinx ZYNQ UltraScale+系列连载[第三篇]写一篇简单需求

作者:Hello,Panda

做事情讲究个“谋定而后动”,做研发尤其如此,准备工作一定要做得充分了,需求一定要理解明确了,方可开始吭哧吭哧继续往下干。

        楼主先准备以ZCU104为平台,实现一个视频处理和传输系统,算是熟悉ZYNQ UltraScale+ MPSoC器件。

        总体要求是:设计一个图像采集、处理和传输系统,实时视频分辨率不小于4000×3000,帧率不小于30fps,视频可通过HDMI2.0(或DP)接口本地实时显示。JPEG压缩的图片和H.265压缩后的视频存储在本地SATA盘中,实时码流可通过GigE Vision传输到主机。系统总体框架如下图1所示。

图1 系统总体框架

图1 系统总体框架

一、硬件平台
        本阶段先使用ZCU104平台进行验证,Camera和SFP接口通过FMC扩展板实现。

二、软件需求
        软件包括PL和PS两个部分,其中PL部分实现Camera IF、ISP、Encoder、GigE Vision和HDMI2.0接口;PL部分运行Linux操作系统,使用QT图形界面,驱动DP显示和SSD存储。

1. PL部分
        PL部分主要实现接口和算法。

(1)相机接口(Camera IF)

        Camera IF硬件上通过FMC接口板接入,支持LVDS(LVDS通道数不大于15对)、MIPI D-PHY、MIPI C-PHY接入。Camera 分辨率不低于4000×3000,帧率不低于30fps,8bit、10bit或12bit Raw(Bayer)数据输入。

(2)图像信号处理(ISP)

       本阶段ISP实现基本功能,主要包括:Demosaic、CCM、3A、Dpc、Gamma、Denoise、Enhance等基本内容,ISP需保证对输入图像实时处理。

(3)Encoder

        Encoder主要有两部分,一个H.265视频流压缩,一个是JPEG静态图片压缩。H.265使用芯片内置的硬核,JPEG压缩通过逻辑实现。H.265至少保证4000×3000分辨率30fps实时压缩。

(4)GigE Vision网络传输

       GigE Vision采用10G光口传输,硬件在FMC扩展板上实现。GigE Vision可实时传输原始图像、ISP处理后的图像、H.265码流和JPEG静态图片,通过xml配置文件指定支持的源和格式。

(5)HDMI2.0接口

       基于GTH,符合HDMI2.0标准,显示原图或ISP后的图像,可叠加OSD。

2. PS部分
       PS部分运行Linux操作系统,运行QT叠加生成OSD。

(1)调度功能

       PS需配置PL工作的各项参数,获取系统状态,运行3A算法的C部分。PS部分还需处理PL的各中断,以协同处理存储、显示等工作。

(2)存储和显示

       实现DP和SATA驱动,存储和读出PL生成的视频流文件请求。运行QT,生成人机交互界面。

三、总结
        整个系统基于AXI4总线架构,SoC软件硬件协同处理,需要保证良好的可扩展性,以便扩展下一步的图像检测和识别算法、AI算法等。

---------------------
作者:_Hello_Panda_
来源:CSDN
原文:https://blog.csdn.net/haoxingheng/article/details/90157184

推荐阅读