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

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

3天内不再提示

NVMe高速传输之摆脱XDMA设计29: TLP 请求处理流程

高速传输与存储 来源:高速传输与存储 作者:高速传输与存储 2025-09-23 09:05 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

TLP 请求处理子程序流程如图 1 所示。 当请求类型为 MEM 读写请求时使用地址路由的方式。 如果请求地址在此设备 BAR 空间内, 则对 BAR 空间进行读写操作,读操作将生成 CplD, 从对应请求端口的输出端口发出; 如果请求地址在下游总线域,根据请求 ID 的设备号将事务转发到对应的下游输出端口。 当请求类型为 CFG 配置请求时采用 ID 路由的方式。 如果请求类型为 TYPE1 配置请求, 当请求 ID 中的总线号等于配置空间中的下一级总线号时, 表示请求发往连接到该桥设备的下一级设备, 将TYPE1 类型请求转换为 TYPE0 请求转发到下游端口; 当请求 ID 总线号位于下游总线域时, 直接根据请求 ID 将事务转发到下游端口。 如果请求类型为 TYPE0 配置请求,当请求 ID 总线号等于上一级总线号时, 表示请求发送到本设备, 根据请求内容访问本设备配置空间, 读操作将生成 CplD, 从对应请求端口的输出端口发出。

wKgZPGjR8fKAd2RxAAEzn5c5V08491.png

图1 TLP 请求处理子程序流程图

B站已给出相关性能的视频,如想进一步了解,请搜索B站用户:专注与守望
链接:https://space.bilibili.com/585132944/dynamic?spm_id_from=333.1365.list.card_title.click

审核编辑 黄宇

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

    关注

    0

    文章

    37

    浏览量

    16380
  • 高速传输
    +关注

    关注

    0

    文章

    38

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    NVMe高速传输摆脱XDMA设计30: NVMe 设备模型设计

    。 当 Admin 完成队列进程缓存非空时, 从缓存中获取完成条目, 并将完成条目组装成 TLP 请求, 然后从输出端口发送请求。 I/O 提交和完成队列进程与 Admin 提交和完成进程基本
    发表于 09-29 09:31

    NVMe高速传输摆脱XDMA设计28: TLP 事务处 理程序的执行流程

    前面提到最小桥设备模型的每个端口的输入端对接一个 TLP事务处理程序, 该程序负责将接收到的 TLP 事务进行解析和路由转发。 TLP 事务处理
    发表于 09-21 08:51

    NVMe高速传输摆脱XDMA设计21:PCIe的TLP处理

    对于存储器读请求TLP,使用Non-Posted方式传输,即在接收到读请求后,不仅要进行处理,还需要通过axis_cc总线返回CPLD,这一
    发表于 08-14 16:24

    NVMe高速传输摆脱XDMA设计20: PCIe应答模块设计

    应答模块的具体任务是接收来自PCIe链路上的设备的TLP请求,并响应请求。由于基于PCIe协议的NVMe数据传输只使用PCIe协议的存储器读
    的头像 发表于 08-13 10:43 628次阅读
    <b class='flag-5'>NVMe</b><b class='flag-5'>高速</b><b class='flag-5'>传输</b><b class='flag-5'>之</b><b class='flag-5'>摆脱</b><b class='flag-5'>XDMA</b>设计20: PCIe应答模块设计

    NVMe高速传输摆脱XDMA设计20: PCIe应答模块设计

    应答模块的具体任务是接收来自PCIe链路上的设备的TLP请求,并响应请求。由于基于PCIe协议的NVMe数据传输只使用PCIe协议的存储器读
    发表于 08-12 16:04

    NVMe高速传输摆脱XDMA设计17:PCIe加速模块设计

    PCIe加速模块负责实现PCIe传输层任务的处理,同时与NVMe层进行任务交互。PCIe加速模块按照请求发起方分为请求模块和应答模块。
    的头像 发表于 08-09 14:38 4570次阅读
    <b class='flag-5'>NVMe</b><b class='flag-5'>高速</b><b class='flag-5'>传输</b><b class='flag-5'>之</b><b class='flag-5'>摆脱</b><b class='flag-5'>XDMA</b>设计17:PCIe加速模块设计

    NVMe高速传输摆脱XDMA设计17:PCIe加速模块设计

    PCIe加速模块负责实现PCIe传输层任务的处理,同时与NVMe层进行任务交互。如图1所示,PCIe加速模块按照请求发起方分为请求模块和应答
    发表于 08-07 18:57

    NVMe高速传输摆脱XDMA设计16:TLP优化

    的延时。并且当大量不同的读请求交叉处理时,读处理模块的并行处理结构更能够充分利用PCIe的乱序传输能力来提高吞吐量。为了清晰的说明读
    发表于 08-05 18:09

    NVMe高速传输摆脱XDMA设计15:PCIe的TLP处理

    对于存储器读请求TLP,使用Non-Posted方式传输,即在接收到读请求后,不仅要进行处理,还需要通过axis_cc总线返回CPLD,这一
    发表于 08-04 16:54

    NVMe高速传输摆脱XDMA设计15:PCIe的TLP处理

    对于存储器读请求TLP,使用Non-Posted方式传输,即在接收到读请求后,不仅要进行处理,还需要通过axis_cc总线返回CPLD,这一
    的头像 发表于 08-04 16:51 580次阅读
    <b class='flag-5'>NVMe</b><b class='flag-5'>高速</b><b class='flag-5'>传输</b><b class='flag-5'>之</b><b class='flag-5'>摆脱</b><b class='flag-5'>XDMA</b>设计15:PCIe的<b class='flag-5'>TLP</b>读<b class='flag-5'>处理</b>

    NVMe高速传输摆脱XDMA设计14: PCIe应答模块设计

    应答模块的具体任务是接收来自PCIe链路上的设备的TLP请求,并响应请求。由于基于PCIe协议的NVMe数据传输只使用PCIe协议的存储器读
    的头像 发表于 08-04 16:47 680次阅读
    <b class='flag-5'>NVMe</b><b class='flag-5'>高速</b><b class='flag-5'>传输</b><b class='flag-5'>之</b><b class='flag-5'>摆脱</b><b class='flag-5'>XDMA</b>设计14: PCIe应答模块设计

    NVMe高速传输摆脱XDMA设计14: PCIe应答模块设计

    应答模块的具体任务是接收来自PCIe链路上的设备的TLP请求,并响应请求。由于基于PCIe协议的NVMe数据传输只使用PCIe协议的存储器读
    发表于 08-04 16:44

    NVMe高速传输摆脱XDMA设计13:PCIe请求模块设计(下)

    状态下组装读请求TLP报头通过axis_rq接口发送,当接口握手时跳转到RD_DATA状态。 RD_DATA:请求读CPLD接收状态。该状态下监测axis_rc接口信号,当出现数据传输
    发表于 08-04 16:39

    NVMe高速传输摆脱XDMA设计12:PCIe请求模块设计(上)

    请求模块负责将系统请求转换为AXIS接口的TLP信号或配置管理接口信号,处理初始化配置请求和门铃写请求
    的头像 发表于 08-04 09:52 515次阅读
    <b class='flag-5'>NVMe</b><b class='flag-5'>高速</b><b class='flag-5'>传输</b><b class='flag-5'>之</b><b class='flag-5'>摆脱</b><b class='flag-5'>XDMA</b>设计<b class='flag-5'>之</b>12:PCIe<b class='flag-5'>请求</b>模块设计(上)

    NVMe高速传输摆脱XDMA设计12:PCIe请求模块设计(上)

    发送给下游设备,下游设备的反馈通过axis_rc接口以CPL或CPLD的形式传回。门铃写请求NVMe控制模块发起,请求以PCIe存储器写请求TLP
    发表于 08-03 22:00