0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

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

3天内不再提示

如何使用纯FPGA来实现嵌入式视觉方案

YCqV_FPGA_EETre 2017-12-06 10:42 次阅读

嵌入式视觉是当今科技最激动人心的领域之一。

关于使用Zynq SoC的嵌入式视觉应用,热心群众们说的太多,我就不赘述了。今天我们换一个新的视角,来看看如何使用纯FPGA来实现嵌入式视觉方案。

这篇文章,将带你了解如何使用Digilent Nexys Video Artix-7 FPGA多媒体音视频开发板来实现一个简单的HDMI输入/输出视频处理系统。特别是如果你是一名新手,通过本文,你会对基于FPGA的视频处理有更多基本的理解。

坦白说,Digilent Nexys Video开发板可能是市面上性价比最高的音视频处理FPGA口袋实验室了。作为一款专用于音视频处理教学以及视频和视觉应用原型开发的评估板,此板搭载了XilinxArtix-7系列中资源最大的器件Aritx-7 XC7A200T FPGA。

今天我们就来介绍一下如何使用Nexys Video来实现一个简单的HDMI输入/输出视频处理系统。先来看下此板所集成的支持视频接收、处理和生成/输出的下列I/O和外设接口

HDMI输入

HDMI输出

显示输出端口

以太网

UART

USB

512MB DDRSDRAM

线路输入(Line In)/麦克输入/耳机输出/线路输出(Line Out)

FMC

使用VHDL与RTL方法,要创建一个简单的图像处理流水线,我们需要实现如下架构:

监控处理器(本例中采用Xilinx Artix-7 FPGA实现的MicroBlaze软核RISC处理器)用于监控与用户接口间的通信并根据应用的要求配置图像处理流水线。在本例这个简单的架构中,HDMI输入口接收的数据从原始的并行格式的视频数据、Hsync和VSync转换为AXI Streaming(AXIS)格式。我们想要将数据转换成AXIS格式是因为Vivado提供多个使用这种数据格式的图像处理IP。如果我们使用Vivado HLS来创建我们自己的图像处理模块,那么能够支持AXIS接口也很重要。

MicroBlaze处理器需要支持如下外围设备:

AXI UART –支持系统的通信和控制

AXI Timer – 使MicroBlaze可以实时运行事件

MicroBlaze调试模块–支持MicroBlaze的调试

MicroBlaze本地存储–连接到DLMB和ILMB(数据&指令本地存储总线)

我们将使用存储接口生成器来创建与板上SDRAM对接的DDR接口。这个接口和SDRAM创建了一个公共的存储框架,可以访问图像处理管道以及使用AXI interconnect访问监控处理器。

创建一个简单的图像处理流水线需要使用如下IP:

DVI2RGB – Digilent提供的HDMI输入IP

RGB2DVI – Digitlent提供的HDMI输出IP

Video In to AXI4-Stream – 将并行视频输入转换为AXI Streaming协议(Vivado IP)

AXI4-Stream to Video Out – 将AXI-Stream转换为并行视频输出(Vivado IP)

Video Timing Controller Input – 检测输入视频流参数(Vivado IP)

Video Timing Controller Output – 生成输出视频流时序参数(Vivado IP)

Video Direct Memory Access – 支持图像写入和从DDR SDRAM读出

视频处理链的核心是VDMA,我们借助它来将图像移动到DDR内存中。

上图展示了IP如何将流式数据转换为读和写管道中内存映射的数据。两个VDMA通道都提供了在流式数据和内存映射数据之间转换的能力。写通道支持流到内存映射的转换而读通道提供内存映射到流的转换。

当把所有这些集中到Vivado中创建初始的基本系统,我们得到了如下架构,这是Nexys Video HDMI示例提供的。

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

    关注

    1626

    文章

    21679

    浏览量

    602103
  • 嵌入式视觉
    +关注

    关注

    8

    文章

    117

    浏览量

    59138
  • Zynq
    +关注

    关注

    10

    文章

    608

    浏览量

    47129

原文标题:在Digilent Nexys Video Artix-7板卡上实现HDMI I/O视频处理系统

文章出处:【微信号:FPGA-EETrend,微信公众号:FPGA开发圈】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    嵌入式视觉的发展机遇

    随着功能越来越强大的处理器、图像传感器、存储器和其他半导体器件以及相关算法的出现,可以在多种嵌入式系统中实现计算机视觉功能,通过视频输入分析周围环境。微软的Kinect游戏控制器和M
    发表于 05-16 10:45

    嵌入式视觉技术是什么?

    r随着功能越来越强大的处理器、图像传感器、存储器和其他半导体器件以及相关算法的出现,可以在多种嵌入式系统中实现计算机视觉功能,通过视频输入分析周围环境。微软的Kinect游戏控制器
    发表于 08-22 06:43

    嵌入式里堆栈原理及其C的实现方法

    嵌入式里堆栈原理及其C实现  
    发表于 12-28 06:30

    如何用FPGA实现嵌入式系统

    如何用FPGA实现嵌入式系统 一、概述     在许多领域中广泛应用的嵌入式计算系统(简称为嵌入式系统),是在更大的电子器
    发表于 04-02 23:48 7710次阅读
    如何用<b class='flag-5'>FPGA</b><b class='flag-5'>实现</b><b class='flag-5'>嵌入式</b>系统

    FPGA实现嵌入式系统

    FPGA实现嵌入式系统,有需要的下来看看
    发表于 05-10 11:24 21次下载

    基于FPGA嵌入式Linux操作系统解决方案

    的传输。结合FPGA和Linux双方优势,可以很好地满足嵌入式系统设计需求,量体裁衣,去除冗余。本文给出了一种基于Xilinx FPGA嵌入式Linux操作系统解决
    发表于 11-24 17:24 6214次阅读

    嵌入式视觉技术

    使用专用硬件尽可能实现最高的视觉算法性能。诸如FPGA之类的可编程平台为设计工程师提供了高度并行的计算密集型应用架构以及用于I/O扩展等其他应用的资源。  在摄像头方面,
    发表于 09-14 11:18 296次阅读

    嵌入式视觉系统的构建模块

    传统嵌入式视觉系统采用FPGA/处理器组合实现,也有越来越多地使用将高性能处理器与FPGA相结
    发表于 09-26 17:05 397次阅读

    采用FPGA嵌入式视觉技术

    自驾车商机诱人,驱动传统车厂与物联网厂商跨界抢进,更加速人工智能(AI)、先进驾驶辅助系统(ADAS)发展愈趋白热化。而嵌入式视觉也搭上AI与ADAS发展的顺风车,成为实现自驾车发展不可或缺的关键技术,为了要满足
    发表于 06-22 10:38 650次阅读

    嵌入式技术无处不在,嵌入式视觉系统的简介

    嵌入式视觉指的是机器通过视觉手段理解周围的环境,嵌入式视觉是两项技术的整合,即
    发表于 03-12 11:08 1225次阅读

    FPGA实现嵌入式系统

    FPGA实现嵌入式系统(嵌入式开发报班哪个好)-该文档为FPGA实现
    发表于 07-30 09:13 12次下载
    <b class='flag-5'>FPGA</b><b class='flag-5'>实现</b><b class='flag-5'>嵌入式</b>系统

    基于ARM的FPGA嵌入式系统实现

    基于ARM的FPGA嵌入式系统实现(嵌入式开发工作怎么这么难找)-该文档为基于ARM的FPGA嵌入式
    发表于 07-30 13:03 15次下载
    基于ARM的<b class='flag-5'>FPGA</b><b class='flag-5'>嵌入式</b>系统<b class='flag-5'>实现</b>

    fpga嵌入式的区别 嵌入式fpga开发有什么关系

    的,无法进行大规模的硬件级别的修改。这意味着FPGA能更灵活地适应不同的应用场景和变化的需求。 开发周期:FPGA的开发周期相对较短,因为它可以通过重新编程实现新功能。相比之下,
    的头像 发表于 03-14 17:04 6805次阅读

    fpga嵌入式

    FPGA(现场可编程门阵列)不是嵌入式系统,但FPGA嵌入式系统中有着重要的应用。
    的头像 发表于 03-14 17:19 2167次阅读

    嵌入式fpga是什么意思

    嵌入式FPGA是指将FPGA技术集成到嵌入式系统中的一种解决方案嵌入式系统是一种为特定应用而设
    的头像 发表于 03-15 14:29 1202次阅读