IO Request的TLP Header的格式如下图所示: 回到顶部 Memory Request Memory Request的TLP Header的格式如下图所示: 注:TLP注:TLP Prefix、ID Based Ordering(IDO)和TLP Processing Hints(TH)均为PCIe Spec V2.1提出的。 回到顶部 Configuration Request Configuration Request的TLP Header的格式如下图所示:、ID Based...
第一篇(即本文)介绍IO Request、Memory Request和Configuration Request。 第二篇文章(即TLP Header详解三)介绍Completion ,第三篇文章(即TLP Header详解四)介绍Message Request。 IO Request IO Request的TLP Header的格式如下图所示: Memory Request Memory Request的TLP Header的格式如下图所示: 注:TLP Prefix、ID...
首先它们的TLP Header不一样,但是它们最大的不同如下: 当CPU产生一个Configuration Write时,如果写的目的Bus等于RC的Bus,那RC会直接产生一个Type 0,然后Bus中的某个设备接受它。如果不相同,那么它将产生一个Type 1,并且继续向下传播。下游的桥接受后,它会是首先对比目的Bus和自己的Secondary Bus,如果相同的话,它...
ID 路由(ID Routing)有的时候也被称为BDF路由,即采用Bus Number、Device Number和Function Number来确定目标设备的位置。这是一种兼容PCI和PCI-X总线协议的路由方式,主要用于配置请求(Configuration Request)的路由,在PCIe总线中,其还可以被用于Completion和Message的路由。 前面的文章提到过,TLP的Header有3DW(Double W...
从上可以看出,Configuration和Completion 的TLP(以C打头的TLP),其Header大小总是3字节;Message TLP的Header总是4字节;而Memory相关的TLP取决于地址空间的大小,地址空间小于4GB的,Header大小为3DW,大于4GB的,Header大小则为4DW。 上面介绍了几个TLP Header的通用部分,下面分别介绍具体TLP的Header。
· This message is sent automatically anytime the Data Link Layer transitions to DL_Up status or if a configuration write to the Slot Capabilities Register occurs while the Data Link Layer is already reporting DL_Up status. · If the car...
配置事务(Configuration Transaction) 消息事务(Message Transaction) 一个事务根据其请求的处理方式又被分为两种: Non-Posted:每个事务的请求消息发送出去后,会需要一个完成消息(Completion)来完成事务。比如,读内存。 Posted:请求发送后不需要完成消息,属于Fire and forget。比如,写内存和所有的消息事务(这也是唯二的两...
下面用几个具体的例子来讲解TLP Header的格式与作用。因为内容较多,所以分为多篇文章分别进行介绍。第一篇(即本文)介绍IO Request、Memory Request和Configuration Request。第二篇文章(即TLP Header详解三)介绍Completion ,第三篇文章(即TLP Header详解四)介绍Message Request。
红色区域为所有TLP Header公共部分,所有Header都有这些;其它则是跟具体的TLP相关。 稍微解释一下: Fmt:Format, 表明该TLP是否带有数据,Header是3DW还是4DW; Type:TLP类型,上一节提到的,Memory Read, Memory Write, Configuration Read, Configuration Write, Message和Completion,等等; ...
第二个:Max Read Request Size,简称MRRS。MRRS代表最大读数据请求大小,对于MRRS选择,同样有6种:128B,256B,512B,1024B,2048B,4096B. 这个参数也是在Configuration阶段,写入到设备的control寄存器。MRRS可以比MPS大,比如MPS设置为256B,MRRS设置为4KB,通常MRRS大于等于MPS。