一、总线仲裁
●连接到总线上的功能模块有主动和被动两种形态,其中主方可以启动一个总线周期,而从方只能响应主方请求。每次总线操作,只能有一个主方,但是可以有多个从方。
●为了解决多个功能模块争用总线的问题,必须设置总线仲裁部件。
●总线占用期:主方持续控制总线的时间。
●按照总线仲裁电路的位置不同,仲裁方式分为集中式和分布式两种。
1.集中式仲裁
链式查询方式:离中央仲裁器最近的设备具有最高优先权,离总线控制器越远,优先权越低。
优点:只用很少几根线就能按一定优先次序实现总线控制,并且这种链式结构很容易扩充设备。
缺点:是对询问链的电路故障很敏感,优先级固定。
●计数器定时查询方式:总线上的任一设备要求使用总线时,通过 BR 线发出总线请求。中央仲裁器接到请求信号以后,在 BS 线为“0”的情况下让计数器开始计数,计数值通过一组地址线发向各设备。每个设备接口都有一个设备地址判别电路,当地址线上的计数值与请求总线的设备地址相一致时,该设备置“1" BS 线,获得了总线使用权,此时中止计数查询。每次计数可以从“0”开始,也可以从中止点开发始。如果从“0"开始,各设备的优先次序与链式查询法相同,优先级的顺序是固定的。如果从中止点开始,则每个设备使用总线的优级相等。
●计数器的初值也可用程序来设置,这可以方便地改变优先次序,但这种灵活性是以增加线数为代价的。可方便的改变优先级。
●在独立请求方式中,每一个共享总线的设备均有一对总线请求线 BR 和总线授权线 BGi 。当设备要求使用总线时,便发出该设备的请求信号。总线仲裁器中有一个排队电路,它根据一定的优先次序决定首先响应哪个设备的请求,给设备以授权信号 BGi 。独立请求方式的优点是响应时间快,即确定优先响应的设备所花费的时间少,用不着一个设备接一个设备地查询。其次,对优先次序的控制相当灵活。它可以预先固定,例如 BRO 优先级最高,BR1次之... BRn 最低;也可以通过程序来改变优先次序;还可以用屏蔽(禁止)某个请求的办法,不响应来自无效设备的请求。因此当代总线标准普遍采用独立请求方式。
优点是响应时间快,即确定优先响应的设备所花费的时间少。对优先次序的控制也是相当灵活的。
2.分布式仲裁
分布式仲裁:不需要中央仲裁器,而是多个仲裁器竞争使用总线。当它们有总线请求时,把它们唯一的仲裁号发送到共享的仲裁总线上,每个仲裁器将仲裁总线上得到的号与自己的号进行比较。如果仲裁总线上的号大,则它的总线请求不予响应,并撤消它的仲裁号。最后,获胜者的仲裁号保留在仲裁总线上。显然,分布式仲裁是以优先级仲裁策略为基础。
二、总线的定时
●总线的信息传送过程:请求总线、总线仲裁、寻址、信息传送、状态返回。
●定时:事件出现在总线上的时序关系。
1.同步定时(由统一的时序信号控制总线上的传输操作)
2.异步定时(无固定时钟周期划分;总线周期由传送操作的实际需求决定)