并行总线仲裁方式
并行仲裁方式如图5.2所示。
图中的BRI、BR2。。。BRn分别是部件1、部件2…部件n的“总线请求”信号;BG1、BG2BGn分别是部件1、部件2…部件n的“总线同意”信号;BS是“忙”信号。从图中可以看出,各模块之间是完全独立的,没有任何联系。当总线忙信号无效时,任何模块都可以单独提出总线申请。当某一个模块需要使用总线时,首先检测“忙”信号BS是否有效,如果有效,说明目前有模块正在使用总线,必须等待,直到BS为无效,才可以提出申请。总线控制器内部有优先权编码器和优先权译码器。总线请求信号经优先权编码器产生优先权编码,并由优先权编码器向优先权最高的模块发出“总线同意”信号。得到总线同意的模块撤销总线请求信号,并由控制器置总线“忙”信号为有效。当该模块使用总线完成后,即置总线“忙”信号为无效,以备别的模块使用总线。
并行总线仲裁方式对优先权控制是比较灵活的,它可以预先固定优先权,例如可以使BR1优先权最高,BR2次之等;也可以通过程序来改变优先权:也可以屏蔽(禁止)某个请求以拒绝来自某个被屏蔽部件的请求。