一种基于有效字节动态聚合的AXI到AXI-Stream数据转换模块和方法与流程

摘要: 本发明属于信号处理,涉及一种axi到axi-stream数据转换技术。背景技术:1、在现代数字系统尤其是基于fpga或asic的高性能计算和数据处理系统中,数据...
一种基于有效字节动态聚合的AXI到AXI-Stream数据转换模块和方法与流程

本发明属于信号处理,涉及一种axi到axi-stream数据转换技术。

背景技术:

1、在现代数字系统尤其是基于fpga或asic的高性能计算和数据处理系统中,数据总线协议是连接各个功能模块的核心。axi协议作为一种业界标准的高性能、高带宽总线接口,被广泛应用于处理器、dma控制器、高速外设控制器之间的数据交互。

2、axi协议定义了独立的读/写数据通道、地址通道和控制通道,支持突发传输。在写数据通道中,除了wdata写数据和wlast最后一个数据标志信号外,还包含一个关键的wstrb写选通信号。wstrb信号的每一位对应wdata总线的一个字节,用于表明在当前时钟周期内,wdata总线上的哪些字节是有效的。这种机制允许axi主设备进行非对齐或部分字节写入,例如通过pcie接口与主机通信的dma控制器,极大提高了数据传输的灵活性。

3、然而,在许多专用的数据处理流水线中,例如视频处理、ai推理、网络数据包处理,通常采用更简洁、连续的数据流协议,即axi-stream。axi-stream协议没有地址通道,它通过tdata、tvalid、tready和tlast信号,将数据作为连续的流进行单向传输,非常适合处理连续且无地址信息的数据流。

4、在实际应用中,普遍存在的问题是:如何将来自axi总线的数据高效、无损地转换为axi-stream格式,供后端处理单元使用,例如pcie dma的写操作,传统的转换方法通常存在以下缺陷。

5、无效数据传输:简单的转换可能忽视wstrb信号,将wdata总线上的所有数据,包括无效字节,直接打包成tdata。这不仅浪费了axi-stream的带宽,还给后端处理单元带来了额外的负担,需要其自行识别和丢弃无效数据。

6、数据流不连续:当axi写操作包含无效字节时,如果转换过程直接丢弃整个数据字,会导致axi-stream数据流中出现“空洞”。这破坏了数据流的连续性,不符合设计初衷。

7、因此,现有技术缺乏一种能够智能识别axi写数据中的有效字节,并将其动态聚合为连续、紧凑的axi-stream数据流的高效转换机制。

技术实现思路

1、本发明的目的在于克服现有技术的不足,提供一种基于有效字节动态聚合的axi到axi-stream数据转换模块,实现以下目标。

2、消除无效数据传输:精确解析axi写数据通道中的wstrb信号,仅将有效的字节打包进axi-stream数据流,从而彻底消除无效数据的传输,提升数据带宽利用率。

3、保证数据流连续性:即使输入的axi数据字中包含无效字节,输出的axi-stream也是连续的、无空洞的有效数据流,满足后端处理模块对连续数据流的需求。

4、实现动态字节聚合:能够将多个连续的、部分有效的axi数据字中的有效字节动态地“缝合”在一起,形成一个或多个完整的axi-stream数据包,无需等待一个完整的axi数据字全部有效。

5、模块包括输入接口、字节有效检测单元、数据有效检测单元、动态聚合单元、输出接口;输入接口用于接收数据流axi_in,即待转换axi数据流;字节有效检测单元根据axi接口协议检测并统计有效字节wstrb;数据有效检测单元根据axi接口协议检测并统计有效数据wdata;动态聚合单元用于动态聚合拼接有效字节wstrb和有效数据wdata,生成满足单次输出位宽的axi-stream数据;输出接口用于输出axi-stream数据。

6、方法包括步骤一,接收数据流axi_in;步骤二,根据axi接口协议分别检测并统计待转换axi数据流的有效字节wstrb和有效数据wdata;步骤三,动态聚合拼接有效字节wstrb和有效数据wdata进行;步骤四,若统计的有效字节数满足单次输出位宽的axi-stream数据位宽,则输出聚合后的数据,否则重复步骤一至步骤三。

7、本发明的带宽利用率最大化:通过精确识别和仅传输有效字节,杜绝了无效数据在axi-stream通道上的传输,使得数据带宽100%用于有效载荷,在处理大量非对齐或部分数据写入的场景下,带宽效率可提升数倍;提升后端处理效率:后端处理模块接收到的是“纯净”的、连续的数据流,无需再花费逻辑资源去解析和剔除无效字节,简化了设计,提升了整体系统的处理性能;保证数据流的完整性:动态聚合机制确保了原始axi事务中的全部有效字节,无论其分布多么零散,都能被完整、有序的转换到axi-stream数据流中,并通过tlast信号正确标识数据包的边界,保证了数据的语义完整性。

1.一种基于有效字节动态聚合的axi到axi-stream数据转换模块,其特征在于,包括:输入接口、字节有效检测单元、数据有效检测单元、动态聚合单元、输出接口;输入接口用于接收数据流axi_in,即待转换axi数据流;字节有效检测单元根据axi接口协议检测并统计有效字节wstrb;数据有效检测单元根据axi接口协议检测并统计有效数据wdata;动态聚合单元用于动态聚合拼接有效字节wstrb和有效数据wdata,生成满足单次输出位宽的axi-stream数据;输出接口用于输出axi-stream数据。

2.一种基于有效字节动态聚合的axi到axi-stream数据转换方法,其特征在于,包括:步骤一,接收数据流axi_in;步骤二,根据axi接口协议分别检测并统计待转换axi数据流的有效字节wstrb和有效数据wdata;步骤三,动态聚合拼接有效字节wstrb和有效数据wdata进行;步骤四,若统计的有效字节数满足单次输出位宽的axi-stream数据位宽,则输出聚合后的数据,否则重复步骤一至步骤三。