论文部分内容阅读
高性能处理器的集成度和设计复杂度越来越高,硅前验证因其仿真速度慢和电气模型不够准确等原因,已经不足以在流片前找出全部故障,因此硅后验证技术受到了越来越多的重视,其中硅后调试作为硅后验证过程中最困难也最耗时的步骤,已经成为高性能处理器领域的研究热点之一。众核处理器作为高性能处理器系统结构的一个重要发展方向,在验证和调试领域面临着同样的困境,而且由于众核处理器的设计更加复杂,需要验证的状态边角和工作模式也呈爆炸式增长,给验证和调试带来了前所未有的挑战。本文针对处理器硅后调试中遇到的跨时钟域信号亚稳态、时钟停顿情况下的DRAM内容失效及访存延时变化等问题,提出了确定性单步可调硅后验证系统;以此为基础,设计了基于NoC(Network-on-Chip)的高带宽、低开销众核处理器调试系统架构,对支撑众核处理器中可调性设计的关键组件进行了详细设计;开发了支持单步调试功能的高速串行接口适配器以及硅后测试故障屏蔽等关键结构与技术,以增强处理器硅片的可观察性和可控制性。本文的主要工作和创新体现在:(1)提出了基于NoC的高带宽、低资源开销众核调试系统架构。硅后调试过程困难的根本原因在于硅片的可观察性和可控制性弱,通过片上踪迹捕获等DFD(Design For Debug)技术,可以提高对硅片内部状态的观察能力,但仍不能满足调试过程对于快速定位的需求,进一步提高观察能力则会占用过多的硬件资源。本文面向众核处理器,提出了一套基于NoC技术的高带宽、低资源开销的众核调试系统结构,并针对此结构的关键支撑技术进行了深入研究,提出了基于硬件队列的快速故障检测、基于分布式低硬件开销嵌入式逻辑分析仪的信号踪迹捕获、基于确定性执行和检查点机制的软件踪迹捕获、延迟均衡的交叉触发信号网络和高精度时标信号网络等设计技术。在某国产众核处理器基础上设计实现了本文提出的调试系统结构,实验结果表明,所提出系统结构能够有效改善处理器可调性,各支撑组件的功能均达到了预期效果,而调试系统资源占全芯片资源比例仅约为0.39%。(2)提出了一种确定性单步可调的众核处理器硅后验证系统设计技术。影响硅后验证系统确定性单步可调的关键因素有三个方面:亚稳态引起跨时钟域信号延迟不确定的传输、单步调试过程中时钟停顿过程引入非确定性、时钟停顿情况下存储控制器的DRAM内容丢失和访存延迟不确定。受近期跨时钟域信号确定性传输研究进展的启发,本文深入开展了针对后两个问题的研究,基于有限状态机理论推导了硅后芯片实现确定性单步可调的各项条件,提出了一种确定性单步可调的众核处理器硅后验证系统设计技术,包含两项创新技术:基于时钟抖动范围控制的确定性单步调试方法和基于延迟预测机制的确定性单步可调存储控制器的设计方法。FPGA平台上的实验结果表明,为实现上述方法而增加的资源面积,相对全芯片逻辑增加的比例不超过0.36%,对系统平均性能的降低仅1.60%。同时,基于本创新点构建的确定性单步可调硅后验证系统,也是本文众核调试系统架构设计的基础。(3)提出了支持单步调试功能的高速串行接口适配器设计方法。在硅后调试过程中,硬件仿真器是调试硅后故障的重要辅助工具。但是现有硬件仿真器在连接高速串行接口IO设备的情况下,不支持单步调试功能,导致在调试硅后芯片中的IO相关故障时,硬件仿真器的功能不能被有效利用。本文针对此问题提出了一种支持单步调试功能的高速串行接口适配器设计方法,并针对仿真器上高速IO通道延迟不准确的问题,提出了在适配器上进行补偿的方法。基于FPGA平台的实验结果表明,所设计的适配器能够在仿真器时钟停顿期间有效维护与真实设备的连接状态,在合适的延时补偿配置下,系统IO性能仿真的结果与真实设备更加接近。(4)提出了基于系统状态备份与恢复技术的故障屏蔽方法和基于数据流量控制的硅后故障在线屏蔽方法。已经定位的硅后故障会破坏部分验证激励的正常执行,这可能导致其他硅后故障被隐藏,逃逸到下一次流片阶段。针对此问题,本文首先设计实现了处理器的状态备份与恢复方法。基于此方法并依据硅后验证平台的确定性特征,本文提出了一种基于系统状态备份与恢复技术的故障屏蔽方法。首先利用硬件仿真器获取系统在故障修复后的正确状态,然后在硅片上的故障发生时刻,使用硬件仿真器的正确状态覆盖硅片的错误状态,消除故障带来的影响,进而实现屏蔽故障的目标。另外,针对实际应用环境,本文还提出了一种通过控制数据流量实现在线屏蔽部分硅后故障的方法,该方法主要适用于IO部件等处理器内核以外的逻辑部件中的故障。基于FPGA平台的实验结果表明,针对DMA控制器中的一处逻辑故障,上述两种方法均能够有效屏蔽该故障,并且流量控制方法引起的数据带宽损失不超过2.5%。