PCIe学习笔记(15)--- TLP的ROUTING方式
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方式的更多相关文章
- 并发编程学习笔记(15)----Executor框架的使用
Executor执行已提交的 Runnable 任务的对象.此接口提供一种将任务提交与每个任务将如何运行的机制(包括线程使用的细节.调度等)分离开来的方法.通常使用 Executor 而不是显式地创建 ...
- .NET Remoting学习笔记(二)激活方式
目录 .NET Remoting学习笔记(一)概念 .NET Remoting学习笔记(二)激活方式 .NET Remoting学习笔记(三)信道 参考:百度百科 ♂风车车.Net 激活方式概念 在 ...
- Ext.Net学习笔记15:Ext.Net GridPanel 汇总(Summary)用法
Ext.Net学习笔记15:Ext.Net GridPanel 汇总(Summary)用法 Summary的用法和Group一样简单,分为两步: 启用Summary功能 在Feature标签内,添加如 ...
- SQL反模式学习笔记15 分组
目标:查询得到每组的max(或者min等其他聚合函数)值,并且得到这个行的其他字段 反模式:引用非分组列 单值规则:跟在Select之后的选择列表中的每一列,对于每个分组来说都必须返回且仅返回一直值. ...
- 【转载】.NET Remoting学习笔记(二)激活方式
目录 .NET Remoting学习笔记(一)概念 .NET Remoting学习笔记(二)激活方式 .NET Remoting学习笔记(三)信道 参考:百度百科 ♂风车车.Net 激活方式概念 在访 ...
- go微服务框架kratos学习笔记四(kratos warden-quickstart warden-direct方式client调用)
目录 go微服务框架kratos学习笔记四(kratos warden-quickstart warden-direct方式client调用) warden direct demo-server gr ...
- Java学习笔记-多线程-创建线程的方式
创建线程 创建线程的方式: 继承java.lang.Thread 实现java.lang.Runnable接口 所有的线程对象都是Thead及其子类的实例 每个线程完成一定的任务,其实就是一段顺序执行 ...
- Android学习笔记36:使用SQLite方式存储数据
在Android中一共提供了5种数据存储方式,分别为: (1)Files:通过FileInputStream和FileOutputStream对文件进行操作.具体使用方法可以参阅博文<Andro ...
- [原创]java WEB学习笔记15:域对象的属性操作(pageContext,request,session,application) 及 请求的重定向和转发
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
随机推荐
- PostgreSQL配置文件--QUERY TUNING
5 QUERY TUNING 5.1 Planner Method Configuration. 下列参数控制查询优化器是否使用特定的存取方法.除非对优化器特别了解,一般情况下,使用它们默认值即可. ...
- 如何修改chrome谷歌浏览器的默认搜索引擎
如图设置,chrome自己提供的百度的引擎,不能用,自己添加一个即可 添加的方法如下:打开百度搜索内容“cai”,然后把搜索的url内容放到上图的网址栏里,并用%s替换“cai”
- ckeditor body与P标签去除
项目中使用到了ckeditor ,但在比编辑框的下方多出两个标签,分别是一个 body与P标签,查询代码后发现不是我们自己增加,而是组件自己就有的问题 经过查询在使用的js申请处 新增 CKEDITO ...
- 一个Tomcat配置参数引发的血案
转载:https://mp.weixin.qq.com/s/3IuTcDCTB3yIovp6o_vuKA 一.现象 有用户反馈访问PC首页偶尔会出现白页情况,也偶尔会收到听云的报警短信 二.监控(听云 ...
- windows下进程管理常用命令
1.查看当前正在运行的进程 tasklist 注: /im 后为映像名称参数:/f 为强行终止,可以通过 taskkill /? 查看更多帮助 2.强制杀死映像名称为imagename的进程,映像名 ...
- FPS计算New
using UnityEngine; using System.Collections; public class CarGUI : MonoBehaviour { private const flo ...
- angular 事件广播和事件监听
一,angularjs $broadcast $emit $on的处理思想 在一个controller里面通过事件触发一个方法,在方法里面通过$broadcast或$emit来定义一个变量,在父,子c ...
- POI-word转html
package com.test.poiword; import android.app.Activity; import android.os.Bundle; import android.webk ...
- Spring入门示例
开发环境 Spring 4.3.0+Myeclipse2015+JDK1.8 准备阶段: 1.新建一Spring01项目,然后新建一个lib文件.将下面的添加到lib文件中 2.将lib文件所有的包导 ...
- sharepoint admin svc must be running in order to create deployment timer job 若要创建计时器作业,必须执行SVC
sharepoint admin svc must be running in order to create deployment timer job 若要创建计时器作业.必须执行SVC ...