《PCI EXPRESS体系结构导读》读书笔记之PCI总线的存储器读写总线事务

来源:互联网 发布:蓝牙与单片机通信 编辑:程序博客网 时间:2024/04/29 11:04

PCI总线的存储器读写总线事务

  PCI总线使用单端并行数据线,采用地址译码方式进行数据传递,而采用ID译码方式进行配置信息的传递。其中,地址译码方式使用地址信号,而ID译码方式使用PCI设备的ID号,包括Bus Number、Device Number、Function Number和Register Number。
  值得注意的是,PCI设备只有在系统软件初始化配置空间之后,才能被其他主设备访问。
  当PCI设备的配置空间被初始化之后,该设备在当前的PCI总线树上将拥有一个独立的PCI总线地址空间,即BAR(Base Address Register)寄存器所描述的空间。
这里写图片描述

  PCI总线支持以下几类存储器读写总线事务:
这里写图片描述

PCI总线事务的时序

  (鉴于我不是要从头开始用FPGA或者MCU模仿一个PCI总线,而是要用现成的PCI总线,这部分工作应该是由硬件完成的,所以先不做深入了解)
这里写图片描述
这里写图片描述
这里写图片描述

Posted和Non-Posted传送方式

这里写图片描述
这里写图片描述
这里写图片描述

HOST处理器访问PCI设备

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

PCI设备读写主存储器

  PCI设备与存储器直接进行数据交换的过程也被称为DMA(直接存储器存取,direct memory access)。PCI设备进行DMA操作时,需要获得数据传递的目的地址和传送大小。支持DMA传递的PCI设备可以在其BAR空间中设置两个寄存器,分别保存这个目标地址和传送大小。这两个寄存器也是PCI设备DMA控制器的组成部件。
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

Delayed传送方式

  PCI总线规定,只有Non-Posted总线事务可以使用Delayed总线事务。PCI总线的Delay总线事务由Delay读写请求和Delay读写完成总线事务组成:
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

1 0
原创粉丝点击