1 简介
多通道视频流缓存以及显示架构是一个在数字图像处理中很基础也很重要的一个架构。在图像拼接以及高分辨率图像显示方面应用范围较为广泛。本文将介绍一个四通道的图像显示。可以四个图像信息输入以及拼接到一个显示屏里面。使用的开发板为A7
2 框架图
架构图如下图所示,其中DMA框架参考12.自定义多帧缓存架构,视频流进入DMA通过AXI总线与仲裁模块来到mig IP核并写入DDR,同时DMA还通过AXI总线读取ddr数据并存储到内置fifo中,供VGA_OUT模块读取并显示。VGA_OUT内部有VGA时许并在扫描到指定区间的时候读取特定的DMA内置fifo数据显示来达到多路视频拼接的功能。
3 vivado框架图
这里先提供一个vivado版本的系统框架图
其中img_gen负责在FPGA内部产生1080P的黑白条纹,然后给到四个像素裁剪模块,裁剪出不同部分给到ddr_buf,然后有vga_out模块读取,最终转化成hdmi给到显示屏显示。
其中ddr_buf集成了四个axi_dma以及一个仲裁加mig IP核。其中仲裁加mig IP核如下图:
单个axi_dma如下图:
其中axi_full_ctrl负责读写地址的控制以及读写数据的缓存,axi_full集成了axi_full协议。
3 显示效果
最终使用A7开发板与HDMI显示屏显示效果如下,可以看到有四个区域显示了不同的黑白条纹。由于本次裁剪出的像素是800*480。因此对于1080P显示有些没有视频输入的部分,这部分我们统一处理为白色。
四通道视频流显示