PCIE是POINT TO POINT的,不像PCI,是SHARED-BUS,总线上的数据,是被所有EP DEV看到的。

这一点与USB2.0比较类似,是广播方式的(BROADCASTING)

USB3.0也修改了广播方式,变成了ROUTING方式

OS(ORDERED SET) 与DLLP是在一个LINK之间交互的,不需要ROUTING

TLP可能会在多条LINK之间交互,所以需要ROUTING

TLP有几种ROUTING方式:

一,ADDRESS

小于4BG的内存空间,使用3DW的TLP HEADER

大于4GB的内存空间,使用4DW的TLP HEADER

IO空间,只有32-BITS,使用3DW的TLP HEADER

EP通过BAR来判断一次

SWITCH首先通过BAR来判断一次,是否针对自己

如果不是,刚再通过BASE/LIMIT来决断一次,是否针对下面的EP(BASE/LIMIT要针对 NP, P, IO三种类型)

二,ID(B.D.F)

对于PCIE EP来说,只需要CHECK一次,判断TLP中的B.D.F是不是针对自己的

对于SWITCH(每一个P2P)来说,需要CHECK两次,一次是判断是否针对自己,如果是,则消耗掉了该TLPL;如果不是,则再次通过SECONDARY BUS与SUBORDINATE BUS REGISTERS来判断,是否针对该SWITCH下游的EP

所以,ADDRESS与B.D.F中

BASE/LIMIT与SECONDARY/SUBORDINATE BUS是起相同作用的一组寄存器,限定了SWITCH下面的ADDRESS/BUS的范围

三,IMPLICITLY(利用了BRIDGE知道其上游及下游,RC在TOPOLOGY的顶层,EP在TOPOLOGY的底层, 在一个TOPOLOGY中,只有一个RC)

MESSAGE TLP可以使用IMPLICITLY方式的ROUTING, MESSAGE TLP的存在,就是为了免除了原来PCI/PCI-X的SIDEBAND SIGNAL(如INT, POWER MANAGEMENT等, RC往往是这些内容的SOURCE或者DESTINATION)

具体的MESSAGES包括如下:

Hot Plug signaling

Vendor-specific signaling

Slot Power Limit settings

Power Management

INTx legacy interrupt signaling

Error signaling

Locked Transaction support

MESSAGE TLP,均为4DW

有三位来表示MESSAGE ROUTING的方式:

000 implicit - route to the rc

001 route by address

010 route by id

011 implicit - broadcast downstream

100 implicit - local: terminate at receiver

101 implicit - gather & route to the rc

110 reserved terminate at recevier

111 reserved terminate at receiver

转载:http://blog.csdn.net/u013140088/article/details/65634756

PCIe学习笔记(15)--- TLP的ROUTING方式的更多相关文章

  1. 并发编程学习笔记(15)----Executor框架的使用

    Executor执行已提交的 Runnable 任务的对象.此接口提供一种将任务提交与每个任务将如何运行的机制(包括线程使用的细节.调度等)分离开来的方法.通常使用 Executor 而不是显式地创建 ...

  2. .NET Remoting学习笔记(二)激活方式

    目录 .NET Remoting学习笔记(一)概念 .NET Remoting学习笔记(二)激活方式 .NET Remoting学习笔记(三)信道 参考:百度百科  ♂风车车.Net 激活方式概念 在 ...

  3. Ext.Net学习笔记15:Ext.Net GridPanel 汇总(Summary)用法

    Ext.Net学习笔记15:Ext.Net GridPanel 汇总(Summary)用法 Summary的用法和Group一样简单,分为两步: 启用Summary功能 在Feature标签内,添加如 ...

  4. SQL反模式学习笔记15 分组

    目标:查询得到每组的max(或者min等其他聚合函数)值,并且得到这个行的其他字段 反模式:引用非分组列 单值规则:跟在Select之后的选择列表中的每一列,对于每个分组来说都必须返回且仅返回一直值. ...

  5. 【转载】.NET Remoting学习笔记(二)激活方式

    目录 .NET Remoting学习笔记(一)概念 .NET Remoting学习笔记(二)激活方式 .NET Remoting学习笔记(三)信道 参考:百度百科 ♂风车车.Net 激活方式概念 在访 ...

  6. go微服务框架kratos学习笔记四(kratos warden-quickstart warden-direct方式client调用)

    目录 go微服务框架kratos学习笔记四(kratos warden-quickstart warden-direct方式client调用) warden direct demo-server gr ...

  7. Java学习笔记-多线程-创建线程的方式

    创建线程 创建线程的方式: 继承java.lang.Thread 实现java.lang.Runnable接口 所有的线程对象都是Thead及其子类的实例 每个线程完成一定的任务,其实就是一段顺序执行 ...

  8. Android学习笔记36:使用SQLite方式存储数据

    在Android中一共提供了5种数据存储方式,分别为: (1)Files:通过FileInputStream和FileOutputStream对文件进行操作.具体使用方法可以参阅博文<Andro ...

  9. [原创]java WEB学习笔记15:域对象的属性操作(pageContext,request,session,application) 及 请求的重定向和转发

    本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...

随机推荐

  1. nginx实现简单负载均衡

    配置文件 主文件: /etc/nginx/nginx.config 例当前在22.22.22.4服务器 //同时开另外三个服务器 可以在http{} 里添加 include /etc/nginx/si ...

  2. cas服务器源码阅读笔记,对标博客

    对标源码阅读博客:http://www.cnblogs.com/jiuzhongguo/category/375405.html 在CAS中很多地方使用了策略模式,那么根据什么方式来确定使用哪种策略呢 ...

  3. 利用cca进行fmri分析

    在肖柯的硕士毕业论文中<基于CCA的fMRI时空模型数据处理方法的研究>,他的总体思路是利用cca提取出fmri图像在时间和空间上两个相关系数,也就是两个特征,然后利用pca,对这两个特征 ...

  4. 新手遇到的问题:Easy UI的对话框老是在页面载入完毕后自己主动弹出

    因为是第一次接触Easy UI,还不是非常熟悉,尝试了一下对话框功能,还是非常不错的.但问题是页面载入完毕后.全部的对话框都自己主动弹出来了,百度了好久,也没有详细说明确的,貌似别人都没有这个问题哦 ...

  5. iOS: 环信的推送

    原文:http://m.blog.csdn.net/article/details?id=38824551 1.先创建一个apns证书,链接如下 http://developer.easemob.co ...

  6. iOS:文本视图控件UITextView的详细使用

    文本视图控件:UITextView 介绍:它是一个文本域的编辑视图,可以在该区域上进行编辑(包括删除.剪贴.复制.修改等),它与文本框UITextField的不同之处是:当它里面的每一行内容超出时,可 ...

  7. ZOJ3622 Magic Number(水题)

    分析: 举个样例xxx(三位数)为魔力数,则xxx|(xxx+1000*y),那么xxx|1000,这个就是结论 同理:四位数xxxx|10000,五位数xxxxx|100000 代码: #inclu ...

  8. Spark详解

    原文连接 http://xiguada.org/spark/ Spark概述 当前,MapReduce编程模型已经成为主流的分布式编程模型,它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的 ...

  9. MapReduce报错:Error: java.io.IOException: Initialization of all the collectors failed. Error in last collector was :interface javax.xml.soap.Text

    这个问题折腾了我一天了,最主要的是真的不懂在哪里看log,所以虽然折腾地很没有道理但还是一直在折腾. 这个问题很好解决,在main函数处错误import了 javax.xml.soap.Text,应该 ...

  10. PostgreSQL 9.5,带来 UPSERT 等新特性

    PostgreSQL 9.5于2016年1月7日正式发布,此版本主要带来了以下几个方面的特性: UPSERT, Row Level Security, and Big Data 1)UPSERTUPS ...