论文部分内容阅读
静态时序分析(Static Timing Analysis, STA)是一种不需要输入激励的时序性能分析技术,在现场可编程门阵列FPGA的CAD软件系统中它位于设计流程的后端,是整个流程的重要组成部分。其作用是检查FPGA芯片中设计电路的延时和速度等性能指标,分析电路时序的最坏情况,验证此时的电路性能是否能满足用户的时序要求,这样就可以确保在任何情况下电路都能正常可靠地工作。静态时序分析技术在功能上和性能上都有很大的优越性,由于它基于电路的拓扑结构,因此在分析时不需要任何激励信号,运行速度快、验证充分。目前几乎所有数字集成电路在设计完成之后都会进行静态时序分析以验证电路的时序性能。针对FPGA芯片电路的静态时序分析与专用集成电路ASIC有所不同,在FPGA芯片中,基本逻辑元件相对较少,而互连资源相对于ASIC则十分复杂,占芯片资源比重也更高。所以相对于ASIC, FPGA芯片中互连延时对整个电路的时序而言更为重要,针对互连延时的软件建模也就尤为关键。此外,对于不同的FPGA芯片,其互连资源属性也各不相同,导致互连资源的延时信息也完全不同,故除了要设计合适的STA软件外,还需要针对不同的FPGA芯片建立准确的互连资源时序库。为解决以上问题,本文做了如下工作:本文深入研究了FPGA的芯片架构及互连资源的结构,根据具体的电路针对互连线网建立树型数据结构,从而计算出电路中互连线的延时,再利用关键路径法计算出电路的时序信息。本文利用HSpice仿真针对FPGA中的可编程开关资源建立了互连资源时序库,并将可编程开关在不同负载电容、不同输入信号跳变时间下对应时序信息以二维查找表的形式存储在互连资源时序库中,供STA模块运行时使用。本文利用Perl编写测试脚本,实现对静态时序分析模块的自动化高效测试。