当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]但是,请注意,当从axi4流广播器输出时,它必须连接到axi4流数据FIFO;否则,不输出任何数据。这主要是因为后续IP需要等待所有接口断言tvalid,而S00接口不是这种情况。欲了解更多详细信息,请参阅赛灵思的官方解释。

这篇文章增加了Sobel过滤器的开关,确保屏幕保持稳定,没有停电。

正如标题所述,这一次我们的目标是在我们之前建立的设计基础上实现无缝的视频处理过渡。

这篇文章还需要先阅读前面的部分,以便更容易实现。

Vivado

块设计主要是基于前面的设计。由于早期的视频测试模式发生器(TPG)仅用作旁路,因此我们可以用axis4流广播器替换它。

AXI4-流广播器是一个IP核心,它将输入AXI4数据流复制到多个输出通道,从而允许同时分发数据。这使得并行处理应用程序,如视频处理和通信系统。

但是,请注意,当从axi4流广播器输出时,它必须连接到axi4流数据FIFO;否则,不输出任何数据。这主要是因为后续IP需要等待所有接口断言tvalid,而S00接口不是这种情况。欲了解更多详细信息,请参阅赛灵思的官方解释。

对于axis4流数据FIFO复位,我们选择在Vitis中使用GPIO来自定义何时复位。

因此,我们现在有两个相同的HDMI输入源。一个输入通过索贝尔滤波器处理,而另一个作为旁路直接通过。这些信号中的每一个都由它自己的VDMA进行缓冲和同步处理。

从各个vdma的输出,我们可以连接一个AXI4-stream开关或一个AXI4-stream合并器来实现源切换。使用axis4 -stream开关将完全切换到不同的源,这将在转换期间导致短暂的中断。相比之下,AXI4-stream合并器通过tuser信号对齐不同的信号,然后将它们合并(例如,将24位tdata和24位tdata合并为48位tdata)。由于信号被组合成一个单一的源——选择tdata[47:24]或tdata[23:0]作为输出——转换发生时不会停电。

下面是AXI4-Stream接口中的一些关键信号:

•TDATA:携带主数据负载。

•TVALID:表示TDATA上的数据是有效的,可以传输。

•trready:表示下游组件准备好接收数据。

•TKEEP:标记TDATA的哪些字节通道是有效的,对于不是全宽的数据流很有用。

•TLAST:表示数据包或帧的最后一个数据字。

•TUSER:提供额外的用户定义边带信息,通常用于对齐或元数据目的。

因此,您可以看到这些信号之间的关系,如下面的波形所示。

如前所述,由于确认的输出是tdata[47:24]或tdata[23:0],我们可以编写一个简单的RTL代码IP来确定使用哪一个。

首先,定义输入和输出。

•为了对齐来自不同源的tuser信号,AXI4-Stream Combiner将它们组合成一个2位信号。只有当两个位都设置为1时,我们才能可靠地确定输出数据。

•开关信号由PYNQ-Z2板上的物理开关控制,通过GPIO实现。

因此,只有当开关模式被确认并且来自不同源的tuser信号被对齐时,才确定当前模式。

编写的RTL代码可以直接拖到块设计中以形成IP。

最后,连接AXI4-Stream子集转换器,形成一个适当的AXI4-Stream,然后连接AXI4-Stream Data FIFO,以确保正确输出tvalid、tuser和tready等信号。

对于PYNQ-Z2上的物理开关与通过GPIO控制信号源的关系,如下图所示,首先从GPIO通道1读取物理开关的值。然后,该值通过GPIO通道2输出到自定义IP。

将物理交换机引脚配置添加到XDC后,整个模块设计就完成了。

Vitis

要构建新的平台和应用程序,或在现有平台上更新XSA,您可以参考前面的帖子并按照以下方式更新代码:

需要注意的一点是,你必须在for循环中包含以下两行;否则,只输出第一帧。

结果

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在量产项目中,确保所有硬件和软件组件按预期运行是至关重要的。然而,当遇到如GPIO(通用输入输出)引脚电压异常的问题时,一个系统化的诊断流程是必不可少的。本文将详细讨论在项目中遇到某GPIO引脚偶尔出现3V毛刺(而设计应...

关键字: GPIO PCB

新竹2025年1月8日 /美通社/ -- 全球领先的硅智财供应商——円星科技(M31 Technology,以下简称"M31")与苏州国芯科技股份有限公司...

关键字: GPIO 芯科 先进制程 电子芯片

在这篇文章中,小编将对钳位二极管的相关内容和情况加以介绍以帮助大家增进对它的了解程度,和小编一起来阅读以下内容吧。

关键字: 二极管 箝位二极管 GPIO

过滤器和拦截器都是Web应用中的中间件,用于处理HTTP请求和响应。它们可以对请求进行预处理和后处理,实现一些常见的业务逻辑,比如登录验证、请求参数校验、跨域请求处理等。

关键字: 过滤器 拦截器

汉格斯特在德国汉诺威IAA交通运输展(2024年9月17日至22日)中以“移动中的过滤系统”为主题,展示了其创新的液体和空气过滤产品,并推出全球首创的完全碳中和过滤器。

关键字: 碳中和 过滤器 氢燃料发动机

GPIO是通用输入输出端口的简称,也是CKS32可控制的引脚,CKS32芯片的GPIO引脚与外部设备连接起来,从而实现与外部通讯、控制以及数据采集的功能。

关键字: GPIO CKS32 芯片

GPIO的功能,简单说就是可以根据自己的需要去配置为输入或输出。但是在配置GPIO管脚的时候,常会见到两种模式:开漏(open-drain,漏极开路)和推挽(push-pull)。

关键字: GPIO 漏极开路 推挽

在嵌入式系统设计中,微控制器(MCU)的启动过程是一个复杂而精细的过程,涉及到多个电源域和信号的时序控制。近期,有开发者在设计双MCU系统时遇到了一个令人困惑的问题:当某个GPIO(通用输入输出)端口先于MCU核心上电时...

关键字: GPIO MCU 嵌入式系统

在浩瀚的电子科技海洋中,GPIO(General Purpose Input/Output)作为一个基础而强大的概念,始终扮演着连接微控制器与物理世界的桥梁角色。它不仅仅是一组简单的引脚,更是赋予电子设备感知与响应能力的...

关键字: GPIO 接口 微控制器

串口不像其它的一些协议,有自己的数据线(SDA)与时钟线(CLK),通信双方可以按照时钟线上升或下降的不同状态来进行数据的收发。串口的通信全靠内部的一个波特率发生器来指挥数据的运输。

关键字: MCU GPIO
关闭