论文部分内容阅读
现场可编程逻辑门阵列FPGA(Field-Programmable Gate Array)被广泛地应用到各个领域中,如工业控制、嵌入式系统、密码学、航空飞船、网络等。这主要源于FPGA可提供高性能、低一次性工程费用成本,非常适合大电路的实现以及快速的上市时间。随着性能和容量的指数增长,集成电路的噪声容限减少,电源电压降低,低能量的粒子诱发SEU的可能性增大,使得SRAM型FPGA(简称SFPGA)容易受SEU影响而发生软错误。另一方面,FPGA的设计规模不断增大、复杂度不断上升,在应用中故障发生的可能性也随之提高,其设计可靠性直接影响产品的可靠性,因此必须对FPGA设计进行高效和充分的验证。本文的主要贡献包括:1.由于SFPGA中互连资源的容软错误能力对电路整体可靠性的提高至关重要,本文提出了一种基于软错误率评估的SFPGA装箱方法SER-Tvpack,旨在自动逻辑综合阶段降低电路整体互连上的软错误敏感性,提高电路的可靠性,该方法可分为以下三个方面:a)装箱作为逻辑综合中关键的一步,直接影响到FPGA电路的性能。本文根据可编程逻辑块CLB(Configuration Logic Block)之间的互连上的软错误敏感性远大于CLB内部的这一事实,在装箱阶段增加了一个约束目标,即尽可能将敏感性强的线网打包为CLB内部连线;b)线网的节点错误率在装箱阶段是未知的,所以在该阶段对其进行估算。通过分析SFPGA的结构,发现节点错误率与其长度之间存在着一定的关系,从而通过估算线网的长度得到节点错误率的估算值;c)结合软错误率的两个组成部分,即错误传播率和节点错误率,得到软错误率的估算值,并将该值作为可靠性因子加入到代价函数中指导装箱过程,以减少装箱后CLB之间互连的软错误率,实验表明该方法能够有效提高设计的容软错误能力。2.采用基于定向测试和约束随机的验证策略,对多款FPGA设计进行了验证工程实践,重点针对模块级验证,包括功能验证和时序验证两个部分,发现了若干设计错误并进行了分析总结,提高了设计的质量和可靠性。