论文部分内容阅读
容错技术是片上网络(Network on Chip,NoC)提供可靠性数据通信的关键技术之一,是影响网络吞吐量和延迟性能的重要因素。容错路由算法是NoC容错技术中容忍永久性故障的主要方法。研究容错路由算法必须基于一定的故障模型,2D Mesh NoC容错路由算法采用的故障模型按照故障粒度的大小可以分为区域故障模型、单故障模型和细粒度故障模型。然而,当前针对不同粒度故障模型NoC容错路由算法的研究还存在一些不足,主要体现在以下三个方面:(1)单故障模型容错路由算法采用“一步一比较”的数据传输方式,导致整个网络的平均延迟较高;(2)现有细粒度故障模型处理链路故障的方式过于粗犷,使得节点内的很多有效资源无法得到充分的利用;(3)细粒度故障模型容错路由算法采用传统的“避绕容错”方式处理通道故障,导致数据的路由路径过长,整个NoC的网络性能较低。本文针对现有不同粒度故障模型中容错路由算法存在的不足,结合NoC与传统计算机网络的不同特性,研究了2D Mesh NoC单故障模型和细粒度故障模型中的自适应容错路由技术。论文的主要研究工作如下:1、提出了一种基于单故障模型的低延迟自适应NoC容错路由算法。算法摒弃传统基于单故障模型容错路由算法“一步一比较”的传输方式,结合2D Mesh结构的特点,采用“跳步比较”的方式来传输数据包,同时算法使用一种易于采用简单逻辑电路实现的模糊优先级策略来保证自适应性。实验结果表明,该算法是一种适用于大规模NoC的低延迟容错路由算法;ISE综合结果显示,实现该算法的硬件成本较低。2、建立了一种基于细粒度故障模型改进的微粒度故障模型。针对当前细粒度故障模型将链路故障等效处理所带来的有效资源浪费问题,微粒度故障模型在记录的故障类型中增加链路故障,以便能有效区分模型中的链路故障和通道故障;模型在描述的故障类型中增加缓存故障,使得再利用NoC中被丢弃的缓存资源成为可能。本文以可用资源率作为性能指标对比了微粒度故障模型和两种常用的细粒度故障模型,并分析了基于三种故障模型的系统级硬件开销情况,结果显示,微粒度故障模型是一种“性价比”较高的故障模型。3、提出了一种基于缓存再利用的微粒度故障模型NoC容错路由算法。算法在本文建立的微粒度故障模型的基础上,采用“通道替代容错”来代替传统的“通道避绕容错”;“通道替代容错”使用节点内因为链路故障而被丢弃的正常通道来替代故障通道,提高了NoC缓存资源利用率和采用最优端口输出数据包的概率,增加了整个NoC用于“正常通信”的路由路径的数量,从而有效提升了NoC的网络性能。实验和ISE综合结果表明,该算法是一种适用于高故障率NoC,具有高可靠性和高性价比特点的容错路由算法。