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

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

3天内不再提示

利用FPGA设计基于LVDS的图像数据采集传输系统

FPGA设计论坛 来源:未知 2023-09-28 10:35 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

点击上方蓝字关注我们

引言

图像信息的获取和传输是图像处理系统的重要组成部分,直接影响图像处理系统的性能。图像信息的采集包括对图像数据、各种附带参数信息以及状态控制信号的采集,一般图像信号和状态参数信号以及控制信号是独立产生的,因此需要设计一种系统能够将外部设备产生的图像数据和状态控制信号同步采集,并能长距离高速传输,综合考虑到图像采集系统所要求的实时性,可靠性,以及FPGA数字电路的设计中的优势,为此本文讨论了一种利用FPGA实现基于LVDS的图像数据采集传输技术。

系统设计

高速图像数据的采集传输系统如图1 所示,主要包括图像数据源的形成、数据信息的处理和缓存以及帧数据的转发三部分。其中,图像数据源的形成过程中,成像设备作为图像数据的来源,它为系统提供高分辨率的可见光和红外图像,考虑系统的实时性和高可靠性因素,采用LVDS传输接口实现数据长距离高速传输,解决了传输瓶颈问题,图像数据在进入FPGA之前需通过数据格式转换接口(采用MAX9218实现)将串行的数据转换为并行数据并缓存。


数据信息的处理由协处理器FPGA完成,主要包括图像数据及相关参数信息的采集、缓存、组帧和图像数据的转发。其中图像数据的组帧过程最为复杂, FPGA根据图像源中帧同步、行同步、图像选择信号接收解串图像,存储至缓存区,并将图像附带的参数信息写入缓存后部,经组帧状态机形成所需的图像数据帧。

图像数据帧形成后,转发存储至乒乓结构的帧存储器,其容量为:512×512×8bit=2Mb。同时硬件逻辑自动将图像和配套参数信息数据通过LVDS图像发送接口发送至数据链,图像数据再次以串行的LVDS方式传输到后续设备进行处理。

系统实现

FPGA及外围硬件电路

在接口转换电路模块中,图像数据接收端和发送端均需采用LVDS串行方式进行传输,所以在接收端将串行输入的数据并行接收进FPGA进行处理和在发送端将并行的数据串行输出时,需要进行并串和串并转换。

本设计选用MAXIM公司点对点LVDS串行/解串器芯片MAX9247/MAX9218实现数据收发。

在MAX9218接收端,需要进行数据格式转换,将串行数据源变成并行格式供FPGA处理,同样在图像数据链路终端发送方MAX9247对输入的图像数据也有特定的时序要求,涉及到数据位和控制位的交替传输,需要由FPGA完成数据格式的转换, 并产生相应的控制信号DE_IN。

编程器件FPGA选用Xilinx公司Virtex-4系列XC4VLX25。实现的功能主要是:根据输入的行帧同步,采图像同步和图像选择信号来实现图像数据的接收,并缓存到FPGA内部的接收RxFIFO中,进行帧头帧尾识别、时序转换,控制信号的生成,并且根据自定义的通讯协议,从数据流中分解出数据帧,同时将原始图像数据和状态数据打包到同一帧数据包中,输出至数据链路终端。


图像数据链路层

由图3数据的流向来分析,从LVDS接口板输出的串行图像数据由14个数据位(数字图像数据为D0--D13,低位在前高位在后)、帧同步、行同步、时钟同步、图像选择信号、采图同步信号组成。图像数据同步时钟采用7.375MHz,DE_IN由图像的帧同步信号产生,帧、行同步均为高电平有效,图像选择信号用来区分红外和可见光图像,红外图像为256×320b,可见光图像为512×512b,19位图像数据信号经过MAX9218解串后的数据和控制位接入FPGA。

FPGA设计时,针对红外和可见光两种不同类型的图像数据进行采集传输,设置一个模式寄存器ModeReg来实现图像选择,可以填0或1,用来区分红外和可见光,当采集可见光时,每输出一帧有效图像数据,需输出两个帧信号,第一帧内(A帧)只输出采图同步信号,不输出图像数据、行信号等,第二帧(B帧)中不输出采图同步信号,只输出图像数据、行信号等;当采集红外图像时,只需输出一帧,图像选择信号在第一个帧信号的下降沿跳变,至第二个帧信号下降沿有效,高电平表示红外图像,低电平表示可见光图像。具体时序参考图3。


经过FPGA组帧完成的帧数据同时要转发到终端数据链路和外部帧存储器中,供后续设备调用。为了实现后续设备提取图像信息时的实时性,外部存储模块采用由乒乓开关控制的两个片外帧存储器,应用FPGA实现双帧存交替切换,将图像数据存储在两个独立的FIFO中,FIFO采用IDT公司的IDT72V2103,此器件快速的存取允许图像实时存储转发。在FPGA的控制下,FIFO空间的一帧数据送出后,然后开始将FIFO1 空间的数据送出,同时又向FIFO中写入下一帧数据,这样可以保证后续图像处理设备不间断的提取图像数据,以实现快速处理,提高工作效率。

组帧状态机

状态机在FPGA内部设计成两部分,为组帧状态机(外圈)和组行状态机(内圈)。其中组帧状态机各状态转移顺序及条件见图4,各状态占用时间可以通过组行状态机中的行计数来控制,近而可以完成不同大小规格的图像的接收。组帧状态机共有6个状态。


state0:空闲状态(系统复位)。state1:帧有效期开始到行有效期开始之间的延时。state2:图像帧有效期,state3:图像参数帧有效期。state4:行有效期结束到帧有效期结束之间的延时。state5:帧无效期。Reset为输入的状态机复位信号,在系统复位状态,如果用来启动状态机的信号StartMakeFrame = 1,状态机开始工作,进入系统下一状态,组帧状态机在各状态转移条件满足时,依次进入下一状态,否则,保持在原状态。

组行状态机共有3个状态。

stML_Idle:空闲状态。stML_High:行有效期。stML_Low:行无效期。在外圈组帧状态机的每个状态中,包含n个组行状态,所包含的组行状态机中的行数即组帧状态机各状态所占用时间,组行状态机和组帧状态机启动条件一致,同时启动。

以采集可见光图像数据为例,上电复位期间系统处于states0状态,状态机用外部输入的7.375MHz时钟同步整个运行过程,图像的帧、行、图像数据等信号在同步时钟的下降沿跳变,上升沿锁存。一帧图像数据的大小为512×512bit,并将图像附带的参数信息写入图像数据后一行(即513行),在帧有效期间(states1、 states2、 states3状态),CLK 信号作为行计数器的时钟,每帧图像在行有效之前有1行无效图像信号(states1), 在states2状态下,控制采集一帧中的前512行,在states3状态下,采集图象的参数信息,将图像数据和状态参数组合为统一的数据帧,采集完一帧图像数据后等待下一个帧同步信号的到来。在行有效期(stML_High)控制采集一行中的512个像素点数据,在CLK信号的上升沿进行计数, 在数据有效期间采集完512个像素点,等待下一个行同步信号的到来,按同样方式对下一行512像素点数据进行采集,直至采集完一帧中的512行。

系统仿真

在该系统中,状态机设计是难点,图5是运用Active-HDL7.1仿真工具的状态机仿真结果,仿真时,采用7.375MHz时钟同步,状态机启动后,计数寄存器里的数据递减,进而产生各状态转移满足的条件,以此实现状态机的翻转。


在Active-HDL7.1中编写TestBench文件时,通过向组帧状态机计数寄存器写数,来控制各状态所占用的时间,利用 StartMakeFrame信号高电平启动状态机,各状态发生翻转时,状态完成标志就产生产生高电平跳变。

根据图5的仿真结果,可以看出组帧状态机工作正常,所有的逻辑关系也都验证无误。

结语

本文采用FPGA设计实现高速图像采集系统,并采用LVDS接口实现接收与发送,各种模块之间通过缓存实现通信,避免图像的丢失;采集的图像类型和图像尺寸可以通过软件重新配置FPGA进行调整。总之,基于FPGA 的高速专用图像采集系统电路集成度高、信噪比高、功耗低、成本低、速度快以及接口方便,所设计系统采用两帧切换存储方式,使得后续的其它图像处理模块能够与图像采集模块并行工作,为图像处理器的高度集成化实现提供了可能性。




有你想看的精彩



至芯科技FPGA就业培训班——助你步入成功之路、9月23号北京中心开课、欢迎咨询!
基于FPGA的电子按键密码锁设计
FPGA系统中三种方式减少亚稳态的产生






扫码加微信邀请您加入FPGA学习交流群




欢迎加入至芯科技FPGA微信学习交流群,这里有一群优秀的FPGA工程师、学生、老师、这里FPGA技术交流学习氛围浓厚、相互分享、相互帮助、叫上小伙伴一起加入吧!

点个在看你最好看




原文标题:利用FPGA设计基于LVDS的图像数据采集传输系统

文章出处:【微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

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

    关注

    1664

    文章

    22504

    浏览量

    639304

原文标题:利用FPGA设计基于LVDS的图像数据采集传输系统

文章出处:【微信号:gh_9d70b445f494,微信公众号:FPGA设计论坛】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于FPGA的DAQ系统|实现高性能数据采集的挑战

    在当今技术领域,数据是创新的基础。高效、精准地获取数据对科研、工业自动化和医疗诊断等都至关重要,这正是数据采集(DAQ)系统的核心。在众多DAQ技术中,基于现场可编程门阵列(
    的头像 发表于 03-30 15:38 428次阅读
    基于<b class='flag-5'>FPGA</b>的DAQ<b class='flag-5'>系统</b>|实现高性能<b class='flag-5'>数据采集</b>的挑战

    工业视觉时代,图像采集卡如何重构数据采集

    当工业4.0迈入深度落地阶段,工业视觉已成为智能制造的“重要慧眼”,从PCB缺陷检测到汽车零部件装配,从半导体芯片筛查到物流分拣,全场景的高精度、高速化检测需求,正推动数据采集模式的根本性变革。作为
    的头像 发表于 03-17 12:38 150次阅读
    工业视觉时代,<b class='flag-5'>图像</b><b class='flag-5'>采集</b>卡如何重构<b class='flag-5'>数据采集</b>

    充电桩数据采集设备有哪些?有什么功能?

    充电桩数据采集设备是连接物理充电桩与云端管理平台的关键组件,它们通过采集传输和处理充电桩的各类数据,实现充电桩的智能化管理、优化运营和提升用户体验。以下是一些主要的充电桩
    的头像 发表于 02-27 14:51 374次阅读
    充电桩<b class='flag-5'>数据采集</b>设备有哪些?有什么功能?

    PCIe接口-高速模拟采集—高性能-高精度-高品质- 青翼凌云军工级数据采集

    2路16bit、160MSPS采样率的数据采集。板卡支持12路LVDS数据采集,同时,板卡还有2路SFP+光纤接口。
    的头像 发表于 01-30 14:19 223次阅读
    PCIe接口-高速模拟<b class='flag-5'>采集</b>—高性能-高精度-高品质- 青翼凌云军工级<b class='flag-5'>数据采集</b>板

    图像采集卡:连接设备与数据图像枢纽

    在机器视觉与图像传输体系中,图像采集卡是无可替代的重要枢纽——它一端承接相机、内窥镜、摄像机等前端图像设备的信号输出,另一端对接后端
    的头像 发表于 01-22 13:51 371次阅读
    <b class='flag-5'>图像</b><b class='flag-5'>采集</b>卡:连接设备与<b class='flag-5'>数据</b>的<b class='flag-5'>图像</b>枢纽

    单片机多路数据采集系统的设计

    明确数据资源的采集系统原理,是保证数据的采 集渠道得到进一步拓展的关键。从多路数据采集系统建设的
    发表于 01-07 06:44

    图像采集卡:机器视觉时代的图像数据核心枢纽

    一、图像采集卡的技术本质:从信号到数据的“转换器”与“传输通道”图像采集卡(ImageCaptu
    的头像 发表于 11-12 15:15 872次阅读
    <b class='flag-5'>图像</b><b class='flag-5'>采集</b>卡:机器视觉时代的<b class='flag-5'>图像</b><b class='flag-5'>数据</b>核心枢纽

    高速分切机PLC数据采集远程监控系统方案

    老旧设备缺乏通信基础,部分设备未预留空闲通信接口,导致数据采集与远程监控过程中面临多重挑战。物通博联依托工业物联网技术,提供一体化PLC数据采集远程监控系统方案,高效解决设备兼容、数据传输
    的头像 发表于 11-06 15:41 710次阅读
    高速分切机PLC<b class='flag-5'>数据采集</b>远程监控<b class='flag-5'>系统</b>方案

    边缘计算网关在能源数据采集监控管理系统中的作用

    边缘计算网关在能源数据采集监控管理系统中扮演着核心角色,其作用贯穿能源数据采集到决策的全生命周期,具体体现在数据采集与整合、实时处理与分析
    的头像 发表于 10-17 11:27 754次阅读

    基于GIS的海洋环境数据采集与管理系统

    基于GIS的海洋环境数据采集与管理平台系统
    的头像 发表于 09-19 17:09 646次阅读
    基于GIS的海洋环境<b class='flag-5'>数据采集</b>与管理<b class='flag-5'>系统</b>

    FPGA 加持,友思特图像采集卡高速预处理助力视觉系统运行提速增效

    图像预处理是图像处理关键环节,可优化数据传输、减轻主机负担,其算法可在FPGA等硬件上执行。友思特FPGA
    的头像 发表于 08-13 17:41 1344次阅读
    <b class='flag-5'>FPGA</b> 加持,友思特<b class='flag-5'>图像</b><b class='flag-5'>采集</b>卡高速预处理助力视觉<b class='flag-5'>系统</b>运行提速增效

    FPGA利用DMA IP核实现ADC数据采集

    本文介绍如何利用FPGA和DMA技术处理来自AD9280和AD9708 ADC的数据。首先,探讨了这两种ADC的特点及其与FPGA的接口兼容性。接着,详细说明了使用Xilinx VIV
    的头像 发表于 07-29 14:12 5327次阅读

    智能工厂为什么需要数据采集物联网系统

    智能工厂作为工业4.0的核心载体,其高效运行依赖于对生产全流程的精准感知与实时控制。数据采集物联网系统(IIoT,工业物联网)通过连接设备、传感器和系统,实现数据的自动化、智能化
    的头像 发表于 07-18 14:52 1210次阅读

    数据采集网关如何与现有工业系统整合?

    物通博联数据采集网关与现有系统的整合可以通过以下步骤和方法实现,确保数据的高效采集传输和处理,同时满足工业生产环境中的实际需求。 一、整合
    的头像 发表于 06-07 09:18 1104次阅读

    IO数据采集网关是什么?有什么功能?

    IO数据采集网关是一种用于连接工业现场设备(如传感器、PLC、仪表等)与上层管理系统(如云平台、SCADA系统等)的智能设备,主要功能是实现工业数据
    的头像 发表于 05-29 17:38 976次阅读