PCI/PCIe的学习笔记
1.Memory –refetchable and non-refetchtable
(1)读无副作用
(2)多笔写事务可以合并为一笔
2.Using Read Commands
不同的读命令对系统性能有不同影响(I/O Read、memory read、configuration read、memory read multiple、memory read line)
cacheline size register
3.pci brust操作,需要CPU参与,与单独的一次读写操作相比,burst只需提供一个地址,以后的地址依次加1. 地址是跳跃的,无法使用burst操作。
4.FRAME#-指示一个PCI总线事务的开始和结束,低有效。
IRAY#-有效表示PCI主设备的数据已准备完毕
TRAY#-有效表示PCI目标设备的数据已准备完毕
5.PCI定义三个物理地址空间:memory space 、I/O space、configuration space
pci设备运行之前,都须先配置configuration address space。
6.HOST处理器对PCI设备数据访问的两个方式:处理器向PCI设备发起存储器和I/O读写请求;处理器对PCI设备进行配置读写。
7.处理器对PCI设备进行存储器写使用post方式,而处理器对PCI设备进行存储器读和I/O读写使用non-post方式。为什么不能使用post方式?
8.DMA-PCI设备与存储器直接进行数据交换。两者的地址空间得通过HOST桥进行转换才能访问彼此。MIPS架构使用什么方式进行转换?
9.PCI配置读写总线事务,使用ID号寻址:总线号(Bus Number)、设备号(Device Number)、功能号(Function Number)。
10.BAR(Base Address Register)- 保存PCI设备使用的地址空间的基地址。
11.PCI总线定义两类配置请求
HOST主桥或者PCI桥使用Type 00h配置请求,访问与其直接相连的PCI Agent设备或PCI桥
HOST主桥或者PCI桥使用Type 01h配置请求,访问不与其直接连的PCI Agent设备或PCI桥
12.DFS 深度优先算法
BUS初始化,使用DFS算法遍历PCI树,初始化PCI桥配置空间中的Primary Bus Number、Secondary Bus Number、Subordinate Bus Number。
13.PCI总线的AD[31:11]信号线只可以表示一条PCI总线只能挂载21个设备。
PCI协议推荐使用AD[31:17]与Device Number的对应关系,即AD17对应设备1-AD31对应设备15.
14.常用的处理器系统,实现存储器地址与PCI总线地址的映射常用“简单相等”方法。
15.PCI配置使用IO译码方式,PCI设备的数据传输使用地址译码寻址方式。
正向译码:总线上每个设备都监视地址总线上的访问地址,判断是否落在自己的地址范围内。
反向译码:指要接受未被其他设备在正向译码中接受的所有访问。
16.PCI cache一致性操作的问题?MESI协议
17.PCIe链路使用串行方式传输数据。因此PCIe链路接口须串并转换。
18.PCIe数据报文使用数据包形式传输,需要经过多个层次,包括事务层、数据链路层、物理层。
事务层定义PCIe总线使用总线事务;封装TLP包
数据链路层,报文被添加Sequence Number前缀和CRC后缀。TLP和DLLP?
物理层,为PCIe设备间通信提供传送介质。
19.PCIe总线规定两大类复位方式-传统的复位方式、FLR方式。
传统的复位方式-cold、warn、hot。
20.PCIe设备扩展0x40-0xFF配置空间,存放一些与MSI或者MSI-X中断机制和电源管理的相关Capability结构。
还支持0x100-0xFFF配置结构,PCIe独有。
PCIe Capability结构 存放和PCIe总线相关的信息,包括PCIe链路和插槽的信息。
PCIe 4Extended Capability结构,PCIe独有结构,形成单向链路表,第一个基地址为0x100.
21.TLP由TLP Prefix、TLP头、Data Payload和TLP Digest组成。TLP头包含当前TLP的总线事务类型、路由信息等一系列信息。Data Payload长度0-1024DW。
通用TLP头由Fmt、Type、TC、Length等字段组成。
Fmt和Type确认当前TLP使用的总线事务。
Length表示Data Payload的长度。
22.TLP的路由:基于地址的路由、基于ID的路由、隐式路由。
23.原子操作:EP-to-EP、EP-to-RC、RC-to-EP
24.PCIe必须支持MSI或者MSI-X中断请求机制,而可以不支持INTx中断消息。MSI机制使用存储器写请求TLP向处理器提交中断请求。
MSI-X机制,中断请求可以使用独立的Message Address和Message Data
。MSI-X table和Pending table存于BAR空间。
25.初始化PCIe设备的MSI Capability空间:首先设置Message Address和Message Data字段,然后将MSI Enable字段置位,使能PCIe设备的MSI机制。
26.事务层的TLP发送至数据链路层,数据链路层将TLP加上Sequence前缀和LCRC后缀后,首先将这个TLP放入到Replay Buffer中,然后发送至物理层。
PCI/PCIe的学习笔记相关推荐
- hi3536 pcie驱动学习笔记
Hi3536 PCIE学习笔记2(linux3.10.y) 一.PCI总线简单介绍 1.PCI总线配置 两类配置请求:Type00h配置请求,Type 01配置请求.Type 00h配置请求:访问与H ...
- pci总线协议学习笔记——PCI总线基本概念
1.pci总线概述 (1)PCI,外设组件互连标准(Peripheral Component Interconnection),是一种由英特尔(Intel)公司1991年推出的用于定义局部总线的标准; ...
- PCIe协议学习笔记之--Configuration Overview
1 BDF (Bus, Device, Function) BDF是在PCI中就有了的概念.在PCIe 拓扑结构中,我们通过总线号(bus number), 设备号(device numer)和功能号 ...
- 支付卡行业数据安全标准(PCI DSS)学习笔记
PCI DSS 支付卡行业数据安全标准共有6个部分,分别是建立并维护安全的网络和系统(为数据构建安全的数据环境),保护持卡人数据(通过数据加密提高数据存储和传输安全性),维护漏洞管理计划(开发安全的软 ...
- pcie equalization学习笔记后续再整理
简介 ************************************************************************************************* ...
- PCIe学习笔记之MSI/MSI-x中断及代码分析
本文基于linux 5.7.0, 平台是arm64 1. MSI/MSI-X概述 PCIe有三种中断,分别为INTx中断,MSI中断,MSI-X中断,其中INTx是可选的,MSI/MSI-X是必须实现 ...
- PCIe学习笔记之Max payload size
本文基于linux 5.7.0, 平台是arm64 在平时设备的使用过程中,有可能遇到过数据通信错误(malformed tlp), 或者网卡/磁盘在进行数据读写时性能没有达到预期,这些都可能和pci ...
- 【UEFI】PCIE学习笔记
本文是本人学习记录,不保证准确,如有错误请指出.如果侵犯请联系删除. PCIE一共支持256条bus(8个bit),32个device(5个bit),8个function(3个bit), 假设负载全满 ...
- PCIe学习笔记之pcie初始化枚举和资源分配流程代码分析
本文主要是对PCIe的初始化枚举.资源分配流程进行分析.代码对应的是linux 4.19, 平台是arm64. 文章首发于这里 1. PCIe architecture 1.1 pcie的拓扑结构 在 ...
- CUDA学习笔记之程序优化
CUDA学习笔记之程序优化 标签: cuda优化conflict存储算法数学计算 2010-01-05 17:18 5035人阅读 评论(4) 收藏 举报 分类: CUDA(6) 版权声明:本文为博主 ...
最新文章
- 2017 Multi-University Training Contest 3 hdu 6063
- oracle 和 ' 特殊字符处理
- 字节码分析finally块对return返回值的影响
- 【ARM】Load Store指令
- php no input file specified.,nginx+php出现No input file specified解决办法
- 安装SQL2005只有配置工具或 错误码是29506 解决方案
- 上海交大张拳石:神经网络的变量交互可解释性研究
- Web前端笔记-画布拖动及放缩(two.js)
- bzoj1452 [JSOI2009]Count
- 毕业论文查重以后如何降重?
- 解决easyui html的写法初始化会短暂出现dialoge
- AUTOSAR NvMFee Configuration
- idea中TKK: 更新 TKK 失败,请检查网络连接
- android拍照保存照片方向,android 拍照的照片方向问题,读取图片EXIF信息
- 二、JSP常用小知识之http 403错误
- 华为除了鸿蒙麒麟,除了麒麟 华为五个厉害的芯片你知道哪些
- [BZOJ 3811]玛里苟斯(线性基)尽量理解的题解
- 神秘的西夏王朝和西夏王陵(上)
- android获取各种路径的方法
- 手机汉字输入法欲立国家标准