System DMA是将DMA作为中心位置挂在总线上,能够被总线上的任何设备所使用。BMD是目前为止发现的基于PCIe总线使用最多的DMA类型(使用Endpoint设备)。
Target Logic
目标逻辑在接口上响应单个双字存储写和读TLPs。MWr和MRd的TLPs会通过PIO(程控输入输出)被放松到endpoint端 并且被用来监视和控制DMA硬件.目标逻辑的功能是为了更新状态控制寄存器,所有即将到来的MWr数据包是32位宽并且包含一个双字的负载,MRd也仅仅一次需要一个双字数据。
Control和Status Registers
控制和状态寄存器包含DMA控制器的操作信息。
Initiator Logic
初始化逻辑的功能是为了根据上行链路或者下行被选择而产生内存写或者读TLPs。总线主设备在同一个时刻只支持一种数据类型产生,使能位必须被设置成初始化TLP发生器的上行链路,无事务传输时可以访问4K范围地址。
初始化逻辑在从endpoint传输数据到系统存储中时产生内存写TLPs,DMA写控制和状态寄存器指定发送的地址、大小、负载内容以及TLPs的个数。