论文部分内容阅读
二维网状结构的处理器阵列具有简单、规整的特性,在实际的应用中具有良好的性能,因而被广泛应用在信号、图像处理等复杂数据计算领域以快速、高效地实现数据处理。随着技术的发展,大量的处理单元可被集成到单一的芯片上从而构成一个多核系统。这种结构型的处理器阵列可以快速地检查故障单元,因而,多核系统被广泛应用以满足现实世界中某些领域内复杂问题的计算需求。然而,集成度的倍增导致芯片在制造以及投入使用后,芯片内部的处理器单元发生故障的情况将不可避免。因此,为了提高芯片的可靠性急需高效的容错技术。 虽然学术界已有相关理论成果与近似求解算法,但许多技术仍未成熟并具有一定的局限性,目前重构技术均侧重于串行重构,而对于并行重构算法的研究尚属空白。本文从VLSI阵列的特点入手,根据其简单、规整的结构,对VLSI结构进行横向和纵向的划分并结合分治策略提出了对应的并行重构算法。实验结果表明,对VLSI阵列进行横向划分,通过并行操作得到一条逻辑列。该算法在256×256阵列上重构目标阵列在不丢失逻辑列的情况下加速了27倍;对VLSI阵列进行纵向划分,通过获得的逻辑列作为划分物理子阵列的边界线从而在这些划分后得到的最终的物理阵列同时使用算法GCR操作,该算法相对于GCR算法加速了10倍多并且逻辑列的丢失率不超过5%。 另外,从GCR算法得到启发,从VLSI阵列第一行的无故障处理器单元同时向下进行选路重构逻辑阵列,提出了并行贪心列选路算法。使用硬件描述语言实现该算法的设计,并在Modelsim仿真软件中进行模拟实验。该算法的所有选路过程并不需要等待前面选路过程达到一定条件才可以开始,对于相邻的选路过程,只需要通过引脚便可协调选路过程之间的矛盾,同时易于移植到FPGA上。实验结果表明,与现有的串行算法相比,本文提出的并行算法同样能够生成最大规模的目标阵列并且当物理阵列大小为48×48,故障率为1%时,本文提出的并行算法在不丢失逻辑列的情况下加速重构将近20倍。