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

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

3天内不再提示

一个简化的PCIe总线体系结构

SwM2_ChinaAET 来源:未知 作者:李倩 2018-04-21 09:21 次阅读

和很多的串行传输协议一样,一个完整的PCIe体系结构包括应用层、事务层(Transaction Layer)、数据链路层(Data Link Layer)和物理层(Physical Layer)。其中,应用层并不是PCIe Spec所规定的内容,完全由用户根据自己的需求进行设计,另外三层都是PCIe Spec明确规范的,并要求设计者严格遵循的。

一个简化的PCIe总线体系结构如上图所示,其中Device Core and interface to Transaction Layer就是我们常说的应用层或者软件层。这一层决定了PCIe设备的类型和基础功能,可以由硬件(如FPGA)或者软硬件协同实现。如果该设备为Endpoint,则其最多可拥有8项功能(Function),且每项功能都有一个对应的配置空间(Configuration Space)。如果该设备为Switch,则应用层需要实现包路由(Packet Routing)等相关逻辑。如果该设备为Root,则应用层需要实现虚拟的PCIe总线0(Virtual PCIe Bus 0),并代表整个PCIe总线系统与CPU通信

事务层(Transaction Layer):接收端的事务层负责事务层包(Transaction Layer Packet,TLP)的解码与校检,发送端的事务层负责TLP的创建。此外,事务层还有QoS(Quality of Service)和流量控制(Flow Control)以及Transaction Ordering等功能。

数据链路层(Data Link Layer):数据链路层负责数据链路层包(Data Link Layer Packet,DLLP)的创建,解码和校检。同时,本层还实现了Ack/Nak的应答机制。

物理层(Physical Layer):物理层负责Ordered-Set Packet的创建于解码。同时负责发送与接收所有类型的包(TLPs、DLLPs和Ordered-Sets)。当前在发送之前,还需要对包进行一些列的处理,如Byte Striping、Scramble(扰码)和Encoder(8b/10b for Gen1&Gen2, 128b/130b for Gen3& Gen4)。对应的,在接收端就需要进行相反的处理。此外,物理层还实现了链路训练(Link Training)和链路初始化(Link Initialization)的功能,这一般是通过链路训练状态机(Link Training and Status State Machine,LTSSM)来完成的。

需要注意的是,在PCIe体系结构中,事务层,数据链路层和物理层存在于每一个端口(Port)中,也就是说Switch中必然存在一个以上的这样的结构(包括事务层,数据链路层和物理层的)。一个简化的模型如下图所示:

关于事务层,数据链路层和物理层的详细的功能图标如下图所示:

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

    关注

    10

    文章

    2866

    浏览量

    87976
  • PCIe
    +关注

    关注

    15

    文章

    1217

    浏览量

    82431
  • 数据链路层
    +关注

    关注

    0

    文章

    54

    浏览量

    11984

原文标题:【博文连载】PCIe扫盲——PCIe总线体系结构入门

文章出处:【微信号:ChinaAET,微信公众号:电子技术应用ChinaAET】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    无线传感器网络的体系结构分析

    本文对无线传感器网络体系结构进行了较为深入的研究,从物理体系结构、软件体系结构和通信体系结构层面进行了分析。
    发表于 11-03 16:24 8834次阅读
    无线传感器网络的<b class='flag-5'>体系结构</b>分析

    DDR总线体系结构

    DDR总线体系结构如下: [url=http://images.cnblogs.com/cnblogs_com/freshair_cnblog/201201
    发表于 02-11 17:23

    ARM SOC体系结构

    ARMSOC 体系结构
    发表于 11-22 10:54

    浅析PCI体系结构

    PCI总线作为处理器系统的局部总线,主要目的是为了连接外部设备,而不是作为处理器的系统总线连接Cache和主存储器。但是PCI总线、系统总线
    发表于 08-06 06:02

    嵌入式微处理器体系结构

    处理器DSP4、嵌入式片上系统SOC(System-on-a-Chip)三、多核处理器四、嵌入式操作系统EOS五、嵌入式实时操作系统RTOS六、嵌入式系统设计七、嵌入式系统的软件、嵌入式微处理器体系结构1、冯诺依曼体系结构(1
    发表于 11-08 06:57

    Microarchitecture指令集体系结构

    第二章 ARM微处理器概述与编程模型ARM体系结构及其发展历史处理器的体系结构处理器微架构 Microarchitecture指令集体系结构 Architecture几种常见的指令集X86Inter
    发表于 12-14 07:13

    了解体系结构 - 介绍 Arm 体系结构

    。该体系结构为软件开发人员公开了通用的指令集和工作流程,也称为程序员模型。这有助于确保架构的不同实现之间的互操作性,以便软件可以在不同的 Arm 设备上运行。本指南为任何对此感兴趣的人介绍了 Arm
    发表于 08-01 14:35

    Arm的DRTM体系结构规范

    本规范定义了基于Arm A配置文件体系结构的处理器的动态测量信任根(DRTM)体系结构。本规范基于TCG D-RTM体系结构[4]的概念,但作为
    发表于 08-08 07:45

    ARM体系结构与编程

    ARM体系结构与编程
    发表于 02-11 09:35 161次下载
    ARM<b class='flag-5'>体系结构</b>与编程

    USB体系结构概述

    USB体系结构概述     本章主要内容是关于USB的概述和些关键的概念。USB是种电缆总线,支持在主机和各式各样的即插即
    发表于 04-15 20:43 1922次阅读
    USB<b class='flag-5'>体系结构</b>概述

    LTE体系结构

    LTE体系结构 LTE体系结构可以借助SAE 体系结构来做详细描述。在SAE 体系结构中,RNC部分功能、GGSN、SGSN 节点将被融合为
    发表于 06-16 13:09 9809次阅读

    网络体系结构,什么是网络体系结构

    网络体系结构,什么是网络体系结构 通过通信信道和设备互连起来的多个不同地理位置的计算机系统,要使其能协同工作实现信息交换和资源共享
    发表于 04-06 16:30 1691次阅读

    ARM体系结构与程序设计

    《ARM体系结构与程序设计》是ARM体系结构与程序设计的本实用指导书籍,通过案例详细介绍了ARM体系结构与程序设计,案例中的程序都取自实际的项目,且对程序有详细注解。
    发表于 10-27 16:37 2354次阅读

    软件体系结构的分析

    软件系统因具有节点众多、节点间联系复杂、随时间演化、自组织临界等特性可将其视为复杂系统。在软件安全领域,对软件体系结构的分析直是研究的重点。软件体系结构具有自身的脆性,这体现在软件系统的运行过程
    发表于 11-24 10:34 15次下载
    软件<b class='flag-5'>体系结构</b>的分析

    Oracle体系结构讲解

    Oracle体系结构讲解(开关电源技术的节能意义)-该文档为Oracle体系结构讲解文档,是份十分不错的参考资料,感兴趣的可以下载看看,,,,,,,,,,,,,,,,,,,,,
    发表于 09-27 10:27 3次下载
    Oracle<b class='flag-5'>体系结构</b>讲解