1 基于VDMA的远程图像采集系统参考设计-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于VDMA的远程图像采集系统参考设计

XILINX开发者社区 来源:XILINX开发者社区 2024-09-18 10:11 次阅读

本文作者:AMD 工程师Jackie Gao

简介

本文参考设计基于 AMD ZYNQ7000 Device, 使用 VDMA 做原始图像采集系统,在 Petalinux 下做服务器,通过 Socket 发送图像至 Windows 或者 Linux 上位机

作为验证,可以连接 CMOS,或者使用 AXI TPG 生成仿真的图像数据。

教程中所有涉及的设计及代码均在 Windows 和 Linux 平台下作了验证。

系统设计

1. 系统设计框图参考如下:

wKgZombqNu6AEXYSAAG5v0wAboc525.jpg

a. 通过 Video In to AXI4-Stream 将 CMOS 输出的 VSYNC,HSYNC 以及数据信号转换成视频流。注意 CMOS 的输入时钟 PCLK 与 AXI4-Stream 工作在不同的频率。

b. 紧跟其后面实例化了一个 AXI VDMA,用于接收输出的视频流。AXI VDMA 通过其 M_AXI_S2MM 端口连接至 AMD ZYNQ7000 Device 的 HP0 端口,以访问 PS 侧的 DDR 控制器,用作 VDMA 的 Frame Buffer。

由于图像在传输过程中可以会出现当前的 Frame Buffer 被 VDMA 再次写入的情况,所以我们将 Frame Buffer 数量调至16,以减小 图像被污染的概率。如果想完全解决这个问题,需要配置 VDMA 的 GenLock 使用,我们会在之后的设计的讲解。

wKgaombqNu6ADRs2AADb-RijVTU819.jpg

c. 系统还实例化了一个 AXI IIC 控制器,用于初始化 CMOS 的寄存器,使其能够正确的工作在期望的频率。也可选用 PS 侧的 IIC 控制器。

2. BD 中需要分配各个 IP 地址如下,可以用 AMD Vivado Design Suite的自动地址分配工具完成。

wKgZombqNu6ANznoAAFslMGiVMY467.jpg

软件架构

系统框图

wKgaombqNu6AB-vWAABoIufHpXI585.jpg

开发板上运行 Petalinux,用作视频的服务器。在 Windows/Ubuntu 上位机位移植 Embeddedsw,并通过 Socket 配置 CMOS 和接收图像。最后把图像通过 QT 显示。

环境需求

硬件环境

AMD ZYNQ7000 Device

OV5640 或者 AXI TPG仿真

Windows10/11 或者 Ubuntu20.04 主机

软件环境

AMD Vivado Design Suite 2022.2

Petalinux 2022.2

CMake > 2.15

OpenCV3.3.1

QT5.15.2

Windows + Visual Studio 或者 Linux + GCC

代码结构

硬件

HW 文件夹里面里面包含 AMD Vivado Design Suite工程,直接用 AMD VivadoDesign Suite2022.2 打开。

打开后综合实现,并生成 Bitfile。

固件

此参考设计用 Petalinux 制作系统启动镜像,完整的 Petalinux 工程位于 FW 目录下。

执行 petalinux-build 可以编译。

执行 petalinux-package –boot –u-boot –force –fpga XXX.bit 生成 BOOT.BIN文件

软件

axi vdma 和 axi iic 的驱动软件移植自 embeddedsw,主要的改动包括修改 xil_io.c 和 xil_mem.c 文件,用 Socket 的驱动替换默认的 Xil_In32 和 Xil_Out32 的实现,以及内存读写的功能。

软件支持 Windows 和 Linux 的主机,采用 Cmake 环境。如果在 Windows 下,可以选择 Visual Studio 作为编译工具。编译过程如下:

1.cd sw

2.mkdir build

3.cmake .. && make

测试结果

在 Petalinux 下生成的 BOOT.BIN 文件放成 SD 卡,启动开发板。

运行 QT应用程序,可以看到图像可以被正确的采集。

wKgaombqNzmADrqfAAjwOIArbEY019.png

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • amd
    amd
    +关注

    关注

    25

    文章

    5466

    浏览量

    134077
  • Xilinx
    +关注

    关注

    71

    文章

    2166

    浏览量

    121286
  • 服务器
    +关注

    关注

    12

    文章

    9123

    浏览量

    85318
  • 图像采集系统

    关注

    0

    文章

    28

    浏览量

    12479
  • vdma
    +关注

    关注

    0

    文章

    6

    浏览量

    2727

原文标题:开发者分享|基于 VDMA 的远程图像采集系统参考设计

文章出处:【微信号:gh_2d1c7e2d540e,微信公众号:XILINX开发者社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于嵌入式微控制器LPC2214的远程图像监控系统

    基于嵌入式微控制器LPC2214的远程图像监控系统摘要:针对传统图像监控系统所存在的缺陷,综合应用嵌入式
    发表于 12-01 10:23

    基于GPRS远程数据采集系统设计

    基于GPRS远程数据采集系统根据近年来 GSM/GPRS 通信技术发展的趋势,本文提出并设计了基于GPRS 网络通信的远程数据采集
    发表于 12-08 09:57

    远程系统采集图像没法保存到电脑,请问怎么回事?

    图像采集的程序,在电脑上运行程序可以将图像保存到桌面,但是同样的程序通过下位机运行就保存不了图像。我的远程
    发表于 07-23 17:09

    如何设计远程图像无线监控系统

    图像监控系统,用户常常提出这样的功能需求:希望能够监控距离较远的对象。这些对象有可能分布在郊区、深山,荒原或者其他无人值守的场合;另外,希望能够获取比较清晰的监控图像,但对图像传输的
    发表于 08-12 07:41

    嵌入式系统采集图像数据的远程测量有什么优点?

    随着后PC时代的到来和嵌入式的蓬勃发展,运用嵌入式系统实现远程数据采集已成为社会需求的趋势。本文采用嵌入式系统采集
    发表于 08-30 07:23

    基于ARM技术的远程图像监控系统设计

    随着图像处理技术在科学技术领域的日益成熟,以及通信带宽的日益提高,应用图像处理技术的远程图像监控系统已逐渐盛行。针对无人值守行业对
    发表于 02-10 15:29 26次下载

    基于CMOS图像传感器的USB接口图像采集系统设计

    基于CMOS图像传感器的USB接口图像采集系统设计 介绍以CPLD控制为核心的CMOS图像采集
    发表于 10-15 23:49 1589次阅读
    基于CMOS<b class='flag-5'>图像</b>传感器的USB接口<b class='flag-5'>图像</b><b class='flag-5'>采集</b><b class='flag-5'>系统</b>设计

    基于FPGA的远程图像采集系统设计

    基于FPGA的远程图像采集系统设计 图像信息的获取和传输是图像处理
    发表于 11-23 21:03 1266次阅读
    基于FPGA的<b class='flag-5'>远程</b><b class='flag-5'>图像</b><b class='flag-5'>采集</b><b class='flag-5'>系统</b>设计

    基于FPGA的图像采集远程传输

    基于FPGA的图像采集远程传输,下来看看
    发表于 08-29 23:21 19次下载

    基于FPGA的远程图像与温度采集监控系统

    基于FPGA的远程图像与温度采集监控系统
    发表于 09-22 13:01 21次下载

    传感器驱动下远程图像采集系统设计_陈德裕

    传感器驱动下远程图像采集系统设计_陈德裕
    发表于 03-19 19:03 5次下载

    基于ARM的图像采集系统设计

    基于ARM的图像采集系统设计
    发表于 04-24 17:18 10次下载

    基于STM32F407的图像远程采集终端

    本文介绍了基于STM32F407的图像远程采集终端,STM32F407是整个远程采集终端的核心,起到了承上启下的关键作用,一方面它将完成底层
    发表于 12-28 15:00 1.4w次阅读
    基于STM32F407的<b class='flag-5'>图像</b><b class='flag-5'>远程</b><b class='flag-5'>采集</b>终端

    如何使用FPGA实现图像采集系统的详细设计资料免费下载

    视频图像采集是视频信号处理系统的前端部分,正在向高速、高分辨率、高集成化、高可靠性方向发展。图像采集系统
    发表于 09-29 16:55 14次下载
    如何使用FPGA实现<b class='flag-5'>图像</b><b class='flag-5'>采集</b><b class='flag-5'>系统</b>的详细设计资料免费下载

    如何使用FPGA实现高速图像采集系统的设计

    图像采集是数字化图像处理的第一步,开发图像采集平台是视觉系统开发的基础。视觉检测的速度是视觉检测
    发表于 02-01 14:54 23次下载
    如何使用FPGA实现高速<b class='flag-5'>图像</b><b class='flag-5'>采集</b><b class='flag-5'>系统</b>的设计