技术新讯 > 计算推算,计数设备的制造及其应用技术 > 一种用于PCIE总线通信的数据传输装置及方法与流程  >  正文

一种用于PCIE总线通信的数据传输装置及方法与流程

  • 国知局
  • 2024-08-08 16:56:12

本发明涉及数据交换网络,具体涉及一种用于pcie总线通信的数据传输装置及方法。

背景技术:

1、在虚拟化环境中,虚拟机需要通过virtio-net接口与主机的网络设备进行通信。为了提高网络性能,通常需要使用外设互连高速总线(peripheral componentinterconnect express,pcie)作为virtio-net的物理层接口,实现高速的数据传输。然而,pcie总线的带宽和延迟受到多个因素的影响,例如pcie设备的数量、配置、驱动等。因此,如果virtio-net内部的数据传输操作与pcie侧的数据传输操作不匹配,就会造成数据的堆积、丢失或延迟,影响网络性能。

技术实现思路

1、有鉴于此,本发明提供了一种用于pcie总线通信的数据传输装置及方法,能够解决由于数据传输操作不匹配引发的数据的堆积、丢失或延迟,影响网络性能的问题。

2、本发明采用的具体技术方案如下:

3、一种用于pcie总线通信的数据传输装置,其特征在于,包括:第一随机存取存储器ram和第二ram,其中,所述第一ram用于存储直接存储器访问dma的外设互连高速总线协议pcie操作请求的信息;所述第二ram用于与pcie进行数据传输。

4、可选地,其中,所述第一ram和所述第二ram的数量均为多个。

5、可选地,其中,所述第一ram包括多个队列,每个所述队列对应一个类型的所述pcie操作请求,每个所述队列中存储多个所述pcie操作请求的信息。

6、可选地,其中,所述第二ram包括多个缓冲区,每个所述缓冲区对应一个类型的所述pcie操作请求,每个所述缓冲区存储多个pcie操作请求对应的数据。

7、一种用于pcie总线通信的数据传输方法,由上述的pcie数据传输装置实现,包括:接收来自所述dma的所述pcie操作请求;根据所述pcie操作请求的类型,将所述pcie操作请求的信息存入所述第一ram包的对应的队列中;根据所述pcie的状态,选择对应的所述队列中的所述pcie操作请求发送至所述pcie,与所述pcie进行数据传输。

8、可选地,所述pcie操作请求的信息包括以下至少之一:所述pcie操作请求的目标地址;所述pcie操作请求的数据长度;所述pcie操作请求的数据标签。

9、可选地,在所述接收来自所述dma的所述pcie操作请求之后,所述方法还包括:为所述pcie操作请求分配数据标签,其中,所述数据标签用于标识所述pcie操作请求对应的数据。

10、可选地,与所述pcie进行数据传输,包括:根据所述pcie操作请求的类型,将所述pcie的数据写入至所述第二ram的对应的缓冲区中,并使用所述数据标签对所述数据进行匹配和校验。

11、可选地,在根据所述pcie的状态,选择对应的所述队列中的所述pcie操作请求发送至所述pcie,与所述pcie进行数据传输之后,所述方法还包括:将所述数据从所述第二ram中读取,并返回至所述dma,以完成所述dma与所述pcie的数据传输。

12、可选地,将所述数据返回至所述dma,包括:按照所述数据的对应的所述数据标签的顺序,将所述数据返回至所述dma。

13、有益效果:

14、(1)本发明提供了一种用于pcie总线通信的数据传输装置,包括多个第一ram和第二ram,第一ram用于存储直接存储器访问dma的pcie操作请求的信息;第二ram用于与pcie进行数据传输。第一ram包括多个队列,每个队列对应一个类型的pcie操作请求,每个队列中存储多个pcie操作请求的信息,第二ram包括多个缓冲区,每个缓冲区对应一个类型的pcie操作请求,每个缓冲区存储多个pcie操作请求对应的数据,能够支持多队列pcie读写操作代理,减少dma侧的等待和阻塞,提高数据的处理效率。

15、(2)选择对应的队列中的pcie操作请求发送至pcie,将pcie的数据写入至第二ram的对应的缓冲区中,整序后将数据从第二ram中读取,并返回至dma,实现了pcie代理,一定程度上消化pcie侧的反压,减少数据的等待和阻塞,提高数据的传输速度。

16、(3)将pcie的数据写入至第二ram的对应的缓冲区中,并使用数据标签对数据进行匹配和校验,避免数据的丢失和错误,提高数据的传输稳定性。

17、(4)按照数据的对应的数据标签的顺序,将数据返回至dma,保证数据的传输有序性,避免数据的乱序和重复,提高数据的传输有序性。

技术特征:

1.一种用于pcie总线通信的数据传输装置,其特征在于,包括:第一随机存取存储器ram和第二ram,其中,

2.如权利要求1所述的装置,其特征在于,其中,所述第一ram和所述第二ram的数量均为多个。

3.如权利要求1所述的装置,其特征在于,其中,所述第一ram包括多个队列,每个所述队列对应一个类型的所述pcie操作请求,每个所述队列中存储多个所述pcie操作请求的信息。

4.如权利要求1所述的装置,其特征在于,其中,所述第二ram包括多个缓冲区,每个所述缓冲区对应一个类型的所述pcie操作请求,每个所述缓冲区存储多个pcie操作请求对应的数据。

5.一种用于pcie总线通信的数据传输方法,其特征在于,由权利要求1-4任一所述的pcie数据传输装置实现,包括:

6.如权利要求5所述的方法,其特征在于,所述pcie操作请求的信息包括以下至少之一:

7.如权利要求5所述的方法,其特征在于,在所述接收来自所述dma的所述pcie操作请求之后,所述方法还包括:

8.如权利要求7所述的方法,其特征在于,与所述pcie进行数据传输,包括:

9.如权利要求8所述的方法,其特征在于,在根据所述pcie的状态,选择对应的所述队列中的所述pcie操作请求发送至所述pcie,与所述pcie进行数据传输之后,所述方法还包括:

10.如权利要求8所述的方法,其特征在于,将所述数据返回至所述dma,包括:

技术总结本发明公开了一种用于PCIE总线通信的数据传输装置及方法,数据传输装置包含多个用于存储DMA侧的PCIE操作请求的缓存req_ram,和多个用于与PCIE侧进行数据传输的读/写缓存dma_ram。数据传输装置通过接收DMA侧的PCIE操作请求、与PCIE侧进行握手、进行数据传输和返回数据给DMA侧的步骤,实现数据的高效、稳定和有序的传输,提高网络性能。技术研发人员:刘凯东,卢文岩受保护的技术使用者:中科驭数(北京)科技有限公司技术研发日:技术公布日:2024/8/5

本文地址:https://www.jishuxx.com/zhuanli/20240808/271317.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。