PCIE 学习笔记一

第2章 Transaction Layer Specification

isochronous: 等时的,同步的

TLP报文头,相关名词解析

  • TC: Traffic Class
  • LN: Lightweight Notification (LN)
  • TH: TLP Hints (TH)
  • EP: Error Poisoned (EP)
  • TD: 摘要相关

ATTR: TLP传输序的规定如下

  • Strong odered Model: 遵循先来后到的原则,不允许插队
  • Relexed ordering Model: 根据轻重缓急找到最佳的方案,提高数据的传输效率
  • ID-Based Ordering:相同数据源发送的TLPs属于同一数据流,,不同数据源发送的TLPs属于不同的数据流,IDO模型允许不同数据流的TLPs之间不必遵循事务排序的约定。
    + S
    AT字段: address translation IOMMU技术的处理器系统才会使用和虚拟化相关

CAM: PCI-compatible Configuration Access Mechanism

ECAM: PCI Express Enhanced Configuration Access Mechanism

ARI Device:ARI Device A Device associated with an Upstream Port, whose Functions each contain an ARI Extended Capability structure.

Alternative Routing-ID, ARI Alternative Routing-ID Interpretation. Applicable to Requester IDs and Completer IDs as well as Routing IDs.

Requester ID, Transaction ID 和Routed ID一样即bus,device,function ID。

T8,T9 其实是TAG的8,9字节,协议说明如下:
10-Bit Tag capability, introduced in [PCIe-4.0] increases the total Tag field size from 8 bits to 10 bits. The two additional
Tag bits, Tag[8] (T8) and Tag[9] (T9), are not contiguous with other Tag[7:0] bits in the TLP Header. The two additional
bits were Reserved in previous versions of this specification.

RCB: Read Completion Boundary determines the naturally aligned address boundaries on which a Completer is permitted to break up the response for a single Read Request into multiple Completions.
For a Root Complex, RCB is 64 bytes or 128 byte
For all other System Elements, RCB is 128 bytes.

Max_Payload_Size Supported - Device Capability Register中定义字段— This field indicates the maximum payload size that then Function can support for TLPs
Max_Payload_Size- Device Control Register中的定义,不能超过Max_Payload_Size Supported
transmitter:

  1. TLP data payload 长度不能超过Transmitter‘s Device Control register中的Max_Payload_Size
  2. 对于ARI Device, Max_Payload_Size单独由Function0决定
  3. 对于 non-ARI Multi-Function Device(MFD) 的上游端口, 所有的function设置Max_payload_size相同,那么发送的TLP data payload不能超过common Max_Payload_Size setting
  4. 对于 non-ARI Multi-Function Device(MFD) 的上游端口, 所有的function设置Max_payload_size不相同,那么发送的TLP data payload不能超过implementation specific。

note: 对于Max_Payload_Size 只对带有data payloads的TLP有效,对于Memory Read Request 的长度由Length field决定。

receiver:

TLP’s data payload length不能超过Receiver’s Device Control register的 Max Payload Size

  • 接收者发现如果违法上面规则,那么就会上报异常TLP error
  • 对于ARI设备, Max_Payload_Size仅由Function0中设置决定,其他Function设定则被忽略
  • 对于 non-ARI Multi-Function Device(MFD) 的上游端口, 所有的function设置Max_payload_size相同,receiver需要确保TLP’s data payload size 不超过设置大小
  • 对于 non-ARI Multi-Function Device(MFD) 的上游端口, 所有的function设置Max_payload_size不相同,那么发送的TLP data payload不能超过implementation specific

摘要不包含在长度内:The value in the Length field applies only to data - the TLP Digest is not included in the Length

Max_Read_Request_Size
Device Control Register 中的字段:
This field sets the maximum Read Request size for the Function as a Requester
单位为128byte,

路由规则Routing and Address Rules:

Address routing is used with Memory and I/O Requests

ID routing is used with Configuration Requests, with ID Routed Messages, and with Completions

transaction descriptor:
在这里插入图片描述

  • Transaction ID
  • Attributes field
  • Traffic class

message rounting:
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
PCIE-DMA是一种基于PCIe接口的直接内存访问技术,能够实现高速数据传输。在我的学习笔记中,我详细记录了与PCIE-DMA相关的知识和学习心得。 首先,我了解到PCIE-DMA技术的基本原理和作用。PCIE-DMA可以通过PCIe总线直接访问系统内存中的数据,而不需要过多的CPU干预,提高数据传输的速度和效率。这种技术在需要大量数据传输的场景下非常有效,比如高性能计算、数据采集等。 其次,我深入学习PCIE-DMA的工作原理。PCIE-DMA的核心是DMA控制器,它负责管理和控制数据传输的流程。当设备需要读写内存中的数据时,它通过DMA控制器发送请求,然后DMA控制器生成一个事务,将数据直接传输到或从内存中。这样就大大减少了CPU的参与,提高了数据传输的效率。 另外,我还学习PCIE-DMA的配置和编程方法。PCIE-DMA的配置主要包括硬件配置和软件配置两个部分。硬件配置通常涉及到DMA控制器和PCIe接口的初始化和配置,软件配置则需要编写驱动程序来驱动DMA控制器和处理数据传输过程中的事件和异常。这部分内容对于我来说还比较新颖,需要更多的实践和实践。 最后,我总结了PCIE-DMA的应用场景和发展前景。PCIE-DMA在高性能计算、数据采集等领域具有广阔的应用前景。随着数据量的不断增加和传输速度的要求越来越高,PCIE-DMA技术的需求也将越来越大。因此,对于我来说,学习掌握PCIE-DMA技术非常有价值。 通过学习和记录PCIE-DMA的相关知识和经验,我对这项技术有了更深入的理解和掌握。希望将来能通过应用PCIE-DMA技术解决实际问题,为科研和工程项目的顺利进行做出贡献。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值