pcie协议_PCI/PCIE协议中的Posted与NonPosted事务

我们为什么要定义一条总线,或者更确切的来说,我们定义PCI总线的目的何在? 在我看来,PCI总线的意义在于可以更高效的让CPU/Memory和外部设备进行数据传送,说白了,PCI总线就是个传数据的。为了应付不同的数据传送场景,PCI总线规定了两种数据传送方式:Posted和Non-Posted。 Post翻译过来就是邮寄的意思,当我们写了一封信然后丢进邮筒,那就要做好一去不复返遥遥无回应的准备。按照这样理解的话,如果不需要对方响应的数据传输,就是Posted;如果需要对方立即或者稍后响应响应的就是Non-Post。 Non-Posted总线事务是指PCI主设备向PCI目标设备进行数据传送的时候,数据必须到达目的地之后,才能结束当前总线事务。PCI总线在没有结束当前总线事务时必须等待。PCI总线规定Memory Read, I/O Read/Write, Config Read/Write都只能采用Non-Posted方式传输。首先读操作肯定得是Non-Posted,读操作需要目标设备返回读回来的数据,如果在返回数据的过程中运行插入其他的操作,这样主设备就很可能接收不到读回来的这笔数据了;其次,IO Write也是需要等待IO设备的响应的,不能允许中间插入其他操作,而Config Read/Write的本质其实是IO Read/Write。这样看来,将Memory Read, I/O Read/Write, Config Read/Write规定为Non-Posted传输就十分容易理解了。 Posted总线事务指PCI主设备向PCI目标设备进行数据传输时,当数据到达PCI桥后,即由PCI桥接
  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值