并行实时处理系统中总线仲裁问题的研究及实现
4.1 系统总线仲裁设计中的硬件部分
多DSP总线连接结构如图6所示:



为保证低优先级的处理器发出紧急总线请求时,可以及时得到响应,这里通过中断的方式来响应该请求,当前控制总线的处理器一旦接到该中断请求时,将转入预先设计的中断服务子程序中,中断子程序完成的工作有:保护好当前的工作状态,交出总线控制权,等待紧急总线操作的结束,重新获取总线控制权,恢复原来的工作状态。这里要指出的是,必须将工作状态保存完好,并在操作结束后正确的恢复回去,否则将会引起总线仲裁的混乱,导致系统死机。
下面通过一个实际的多DSP共享总线操作例子来描述软件工作的具体流程:
在本例中,主片将数据分为n份,除自己保留一份外,将其余n-1份分发给从片,然后开始进行相应的算法处理,在处理完成后,从片将同时向主片回写数据,由于程序运行过程有严格的时间限制,所以要求数据能被快速正确的传送,并且不能发生总线冲突。程序流程如下:

采用基于分布式并行的优先级分层仲裁机制,可以满足在实时环境中多DSP共享总线结构的并行处理系统的总线仲裁要求,保证了系统总线仲裁的可靠性。
由于系统的各个DSP的总线仲裁器独立同构,即使某个处理器的总裁模块发生故障,通过适当的软件设置,将不会影响其他模块的仲裁工作,同时能满足系统正常工作状态和带故障工作状态下的不同要求,提高了整个系统的可靠性。
上面的硬件、软件设计方案和流程具有通用性,对于其他共享总线的多处理器系统也基本适用,但具体的实现方案需要参考不同芯片自身的设计手册来进行设计实现。
评论