PCI总线协议

一.传输控制
概括地说,PCI总线的数据传输遵循以下管理规则:
1. FRAME和IRDY定义了总线的忙/閒状态。隻要其中一个有效,总线就是忙的,两者都无效时,总线才处於空閒状态。
2. 一旦FRAME信号被设置成无效后,在同一传输期间就不能再次改变设置。
3. 一般情况下不能设置FRAME信号无效,除非设置了IRDY信号。
4. 一旦主控设备设置了IRDY信号,直到当前数据节拍结束為止,主控设备就不能再改变IRDY信号和FRAME信号的状态。
二.地址空间
数据传输过程
PCI的总线管理器必须為总线上的每一次访问执行仲裁,也就是说,一个总线主控设备要在总线上进行访问就必须首先提出仲裁请求,履行批準手续才能获得总线控制权。因此,每个主控设备都应有各自的请求线REQ和批準线GNT。当总线忙时,仲裁採用隐含的方式,一次仲裁可以在上一次访问期间完成,从而无需佔用专门的时鐘周期。但在总线空閒期间,就不一定採用这种隐含的方式。
   在同一时刻可以膾 有多台设备请求总继续革命使用权,此时中心仲裁机构就必须採用专门的仲裁算法。由於PCI总线规范未对仲裁算法做统一规定,因此系统设计者可以灵活地考虑与设计具体的算法,但一定要保障任何时候都隻能有一个GNT信号有效。以下是PCI总继续革命仲裁遵循的几点基本规则:
1. 如果设置了GNT信号与FRAME信号有效,则当前的的数据传输是合法的且可继续进行下去。
2. 如果总线不是处於空閒状态,则置一个设备的GNT信号有效与置另一个设备的GNT信号无效之间必须有一个延迟时鐘,否则会在AD线和PAR线上出现时序竞争。
3. 当FRAME信号无效时,為了响应更高优先级主控设备的服务,可以在任意时刻置GNT和REQ无效。另一方面,如果总线佔用者在16时鐘后还未开始数据传输,仲裁器可以打破这种浪费资源的状况。
如图所示的时序描述了对A、B两个设备实现仲裁的过程。 时鐘1处A设备已经以REQ_a有效的低电平请求使用总线,时鐘2处发出有效的GNT_a一直未撤消,表明A设备还要继续传送数据。然而在时鐘2处B设备就以REQ_b有效请求使用总线,仲裁器判定由B设备使用总线,故在第4个时鐘时置GNT_a无效面GNT_b有效,时鐘5处设备B拥有总线权,啟动FRAME,并於时鐘7处正式传输数据。由此也可看出,正如前面所讲的一样,仲裁过程是隐含的,并没有佔用专门的时鐘。

发表评论

您必须 登录 才能发表留言!