PCI系统结构(第四版) 第5章之三

上一篇 / 下一篇  2007-12-20 13:55:42 / 个人分类:读书笔记

双主设备间的仲裁举例

   5-4显示双主设备访问PCI总线仲裁间的总线使用。为了正确解释这个例子,作出下列假设:

    总线主设备A要求总线执行两次交易,第一次交易包含三个数据段写,第二次交易类型是单数据段写。

    仲裁机理是固定的,总线主设备B比总线主设备A具有更高的优先权,或者仲裁机理是循环式且B是下一个交易。

    总线主设备B仅要求总线执行包含一个数据段的单交易。

   重要的是记住在PCI CLK信号上升沿采样的全部PCI信号。如果总线的当前所有者在完成当前交易后,要求总线执行附加交易,它应该在当前交易的FRAME#有效后,保持REQ#线有效。如果没有其他总线主设备要求使用总线,或当前总线主设备具有最高优先权,总线仲裁器在当前交易完成后,继续将总线授权给当前主设备。

   5-4中采样仲裁顺序进行如下:

时钟1在时钟边沿一之前,总线主设备A有效REQ#,请求访问PCI总线。仲裁器在时钟一的上升沿采样有效。此时,总线主设备B还没有要求总线。在时钟单元一,仲裁器有效总线主设备AGNT#,授权为总线的所有者。在同一个时钟阶段,总线主设备B有效REQ#,表示它希望执行交易。

时钟2总线主设备A在时钟二的上升沿采样GNT#有效。它也采样IRDY#FRAME#无效,表示总线在空闲状态。总线主设备A作出反应,起动两个交易的第一个。它有效FRAME#,并开始驱动起始地址到AD[310],并驱动命令到命令/字节总线。如果主设备A在这次交易后没有另一个交易要执行,它会在时钟单元二无效REQ#线。在此例中,它有另一个交易要执行,因此它保持REQ#线有效。PCI总线仲裁器在时钟二的上升沿采样主设备AB的有效请求,并开始仲裁过程,以确定下一个总线主设备。在时钟单元二,仲裁器从主设备A取走GNT#

时钟3在时钟三的上升沿,主设备A确定它先占有总线,因为它的LT(延迟定时器)还没有到期,将继续交易。在时钟单元,仲裁器有效总线主设备BGNT#。在时钟单元三,主设备A开始驱动第一个数据项到AD总线(这是一次写交易),有效适当的命令/字节使能(表示传送所使用的数据路径),同时有效IRDY#,表明在总线上存在数据的目标。

时钟4在时钟的上升沿,主设备B采样有效的GNT#,表示它可以是总线的下一个所有者。它必须在后继时钟的每个上升沿连续采样GNT#直到她获取总线。这样是必要的,因为仲裁器可以取回授权,并在总线空闲前将总线授予另一个具有更高优先权的主设备。直到总线返回空闲状态,主设备B才能开始使用总线。在时钟4的上升沿,采样到有效的IRDY#TRDY#并开始第一个数据传送。

时钟5在时钟5的上升沿,采样有效的IRDY#TRDY#并开始第二个数据传送。在时钟单元五,主设备A保持IRDY#有效并无效FRAME#,表示最后数据段在进行中。

时钟6在时钟6的上升沿,采样有效的IRDY#TRDY#,而且第三个和最后的数据传送完成。在时钟单元六,总线主设备A无效IRDY#,将总线返回空闲状态。

时钟7在时钟7的上升沿,主设备B采样无效的FRAME#IRDY#,并确定总线现在空闲。它也采样到GNT#仍有效,表示它获取总线。在时钟单元7,它作出反应,起动交易并关闭REQ#线(因为它仅要求总线执行这一个交易)。当它在时钟7有效FRAME#,主设备B也开始驱动地址到AD总线上,并驱动命令到命令/字节使能总线上。

时钟8在时钟8的上升沿,仲裁器采样到主设备BREQ#无效,且主设备AREQ#仍有效。仲裁器在时钟单元8作出反应,无效主设备BGNT#,并有效主设备AGNT#。因为主设备A想用总线作另一次交易,它保持REQ#线有效。主设备A在每个时钟的上升沿采样IRDY#FRAME#,直到总线空闲,到那时,它能开始下一个交易。在时钟单元8,主设备B无效FRAME#,表示它的第一个(也是唯一的)数据段在进行中。在时钟单元8,它也开始驱动写数据到AD总线上,以及适当的设置到命令/字节使能总线,它有效IRDY#,表明AD总线存在数据的目标。

时钟9在时钟9的上升沿,IRDY#TRDY#采用有效,并开始数据传递。然后,主设备B无效IRDY#(在时钟单元9)以返回总线空闲状态。

时钟10在时钟10的上升沿,主设备A采样总线空闲和有效的GNT#,然后在时钟单元10起动第二个交易。当它有效FRAME#时无效REQ#,通知仲裁器完成交易后它不再要求总线。

 

在复位(RST#)时请求信号(REQ#)和确认信号(GNT#)的状态

   RST#有效时,所有主设备必须使REQ#输出驱动三态,并且必须忽略GNT#输入。

 

从插入式连接器的请求信号(REQ#)上拉

   在具有PCI插入式连接器的系统中,仲裁器必须在连接到插入式连接器的REQ#输入上要求一个弱的上拉,当连接器未占用时,这有助于它们没有漂移。

 

损坏的主设备

   如果仲裁器已经发出GNT#到主设备,仲裁器可以假设主设备是坏的,总线已经16个时钟是空闲的,同时主设备未有效FRAME#以开始交易。允许仲裁器忽略来自损坏主设备的所有的进一步请求,并且向操作系统报告这一失败(可选的)。


FPGA/CPLD器件价格查询

TAG:

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

Open Toolbar