论文部分内容阅读
片上网络作为一种现时主流的片上多核互联方法,能够解决传统基于总线片上互联方式可拓展性差、通信效率低、要求全局同步等缺陷,能满足多核处理器核心间通信需求。然而,片上网络依然无法避免集成电路制造或使用中的不可靠因素,同样会遇到诸如生产缺陷、低噪声容限、电磁耦合效应等引起的故障,影响片上网络的可靠性与性能。这些故障可根据其作用区域分为数据链路故障(影响数据包内数据完整性)和控制逻辑故障(影响路由器控制功能)。其中,控制逻辑故障因其固有特性,更难被检测、判定和容忍。为此,本文将针对片上网络控制逻辑的容错方法作研究。首先,本文研究了片上网络逻辑的故障种类、故障特征及其产生原因,分析了现时针对片上网络控制逻辑容错设计的不足之处。针对这些不足,本文使用假设更合理、粒度更细的故障模型:在路由节点发生局部控制逻辑故障时并非简单地关闭整个路由节点,而是最大限度地保留并利用这个故障节点的可用资源,保持处理器数据的正常吞吐及核心上执行任务的连贯性。然后,本文分别对片上网络控制逻辑上的永久性故障和瞬时故障设计容错方案:基于冗余逻辑模块的片上网络控制逻辑容错设计和基于非最短路路由算法的片上网络控制逻辑容错设计。前者利用更精简的冗余模块,在替换原模块后维持故障区域有限而必要的服务,以更少的硬件开销提供比三模冗余更高的可靠性;后者则创新性地利用了非最短路路由在数据包转发时端口选择的多样性,对因控制逻辑故障而遭受非法转发的大部分数据包继续提供转发服务,大幅增加故障情况下数据包被成功传输的数目。最后,本文搭建用于控制逻辑容错设计的片上网络仿真平台。通过在片上网络仿真器POPNET中设计故障注入模块与并行仿真工具,为上述2套容错方案提供更准确、快捷的验证过程。对上述2种片上网络控制逻辑的容错设计作验证和分析的结果表明,在不同测试集下,本文的设计均能获得更高的网络可靠性。