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中,然后发送至物理层。