一种基于FPGA的静态时序分析延迟计算加速系统及方法技术方案

技术编号:31513220 阅读:21 留言:0更新日期:2021-12-22 23:55
一种基于FPGA的静态时序分析延迟计算加速系统,包括,上位机和FPGA加速卡,其中,所述上位机,其通过文件读写,向所述FPGA加速卡发送延迟计算请求数据并从所述FPGA加速卡读取计算结果;所述FPGA加速卡,其接收上位机发送的延迟计算请求数据并进行计算,将计算结果发送给所述上位机;在系统内虚拟负责请求的文件和负责输出结果的文件,供所述上位机完成延迟计算请求数据的发送和计算结果的读取。本发明专利技术还提供了一种基于FPGA的静态时序分析延迟计算加速方法,大大提高了计算吞吐率,降低了资源消耗;降低了触发器和寄存器资源的消耗,有利于FPGA实现时的时序收敛。利于FPGA实现时的时序收敛。利于FPGA实现时的时序收敛。

【技术实现步骤摘要】
一种基于FPGA的静态时序分析延迟计算加速系统及方法


[0001]本专利技术涉及数字电路EDA工具领域,具体来说,涉及一种数字电路静态时序分析延迟计算部分的加速方法。

技术介绍

[0002]静态时序分析(STA)工具是芯片数字后端电子设计自动化(EDA)工具链中的重要一环。用户查看时序报告、布局、布线等环节都需要使用到STA,尤其是布局布线环节,STA会被频繁反复地调用。因此,STA的性能(计算速度)对后端设计的迭代速度的影响举足轻重。而随着数字芯片规模日益提高,STA的计算复杂度进一步加大,这对STA的计算速度也提出了更高的要求。提高STA的计算速度能极大加快研发人员的迭代速度,降低上市时间(time

to

market),对提高社会生产效率和企业产品竞争力,具有重要意义。
[0003]现有技术中,STA往往将目标电路用有向无环图来进行建模。有向无环图中的顶点代表元器件的管脚,边则代表管脚之间的连接关系。STA的主要计算工作则是计算所有边两端的管脚之间的信号延迟。随着工艺节点不断提高,特征尺寸不断变小,数字电路的寄生效应作用越来越显著,因此STA的延迟计算模型变得越来越复杂,计算速度越来越慢。因此对延迟计算过程进行加速成为STA计算加速的关键。
[0004]在以往的研究项目和商用产品中,CPU多线程技术常常被用来对STA进行计算加速,并取得了明显的加速效果。这种纯软件的方法易于开发、可移植性和维护性强,目前市面上所有的商用STA工具均支持多线程。但用户并不能通过无节制地增加线程数来提升加速效果,计算任务之间的依赖性和对全局共享资源的争夺使得多线程的加速比在线程数增长到一定程度后趋于饱和甚至适得其反。因此研究者开始寻求其他方法来进行突破。通过硬件辅助计算来获得更快的计算速度在近些年得到了广泛关注。
[0005]图形计算单元(Graphics Processing Unit,GPU)是常见的计算辅助设备,并在许多领域都取得了显著的计算加速效果(比如神经网络计算加速)。随着GPU计算能力的提高,研究者开始尝试将GPU运用在STA领域中。比如Zizheng Guo等人使用GPU对STA工具OpenTimer进行计算加速并取得了约3.69X的加速效果;Guannan Guo等人利用GPU对基于路径的STA工具进行计算加速并取得了25X

45X的加速效果。在可大规模并行计算,尤其是单指令多数据流(Single Instruction Multiple Data)的应用场景中,GPU能取得显著的加速效果。但对于逻辑分支较多的应用场景,GPU的加速效果将大打折扣。另外,GPU的能效相对较低。
[0006]现场可编程门阵列(FPGA)是另一种比较常见的计算辅助硬件设备。FPGA能通过流水化和并行处理的方式对计算密集型应用进行加速,与GPU相比更擅长处理逻辑分支较多的场景,且拥有比GPU高的能效。但利用FPGA来对STA进行计算加速的研究较少。Jason Cong和Hiroshi Yuasa等人曾利用FPGA对基于蒙特卡洛方法的SSTA(Statistical Static Timing Analysis)进行加速,而对主流的基于图的STA和基于路径的STA则缺少研究。

技术实现思路

[0007]为了解决现有技术中存在的缺陷,本专利技术的目的在于提供一种基于FPGA的静态时序分析延迟计算加速系统及方法,利用现场可编程门阵列(FPGA)的可定制、并行处理能力,对STA中的延迟计算进行加速。
[0008]为了实现上述目的,本专利技术提供的基于FPGA的静态时序分析延迟计算加速系统,包括,上位机以及FPGA加速卡,其中,所述上位机,其通过文件读写,向所述FPGA加速卡发送延迟计算请求数据并从所述FPGA加速卡读取计算结果;所述FPGA加速卡,其接收上位机发送的延迟计算请求数据并进行计算,将计算结果发送给所述上位机;在系统内虚拟负责请求的文件和负责输出结果的文件,供所述上位机完成延迟计算请求数据的发送和计算结果的读取。
[0009]进一步地,所述延迟计算请求数据,包括,单元延迟查找表和索引表,单元压摆查找表和索引表,查找表大小,输入压摆,负载π模型的C1、C2、参数,高低及阈值电压百分比,连线延迟计算的elmore参数。
[0010]进一步地,所述FPGA加速卡,还包括,多个延时计算单元、PCIE DMA通信单元、请求分发单元,以及AXIS交换单元,其中,所述PCIE DMA通信单元,其将所述上位机的延迟计算请求数据进行协议转换后发送给所述请求分发单元,并将计算结果发送给所述上位机;所述请求分发单元,其将所述延迟计算请求数据均衡地分发给多个所述延迟计算单元;所述延迟计算单元,对所述延迟计算请求数据进行计算,并将计算结果发送给所述AXIS交换单元;所述AXIS交换单元,对来自多个所述延迟计算单元的计算结果进行选通后发送给所述PCIE DMA通信单元。
[0011]进一步地,所述PCIE DMA通信单元,其将所述上位机的延迟计算请求数据转换为AXI Stream总线协议格式;其最高数据吞吐率应高于8GB/s。
[0012]进一步地,所述延迟计算单元,将所述延迟计算请求数据进行预处理、等效电容计算、门延迟计算和线延迟计算,并将计算结果发送给所述AXIS交换单元。
[0013]进一步地,所述延迟计算单元,还包括,预处理模块、等效电容计算模块、门延迟计算模块,以及线延迟计算模块,其中,所述预处理模块,其从所述延迟计算请求数据中,获取等效电容计算、门延迟计算和线延迟计算所需的参数,并存储在三个不同的分布式RAM中;对所述延迟计算请求数据进行简化。
[0014]所述等效电容计算模块,其通过牛顿

拉夫森迭代方法求解三元非线性方程组求得等效电容,获取等效电容对应的单元门延迟和压摆;所述门延迟计算模块,其根据负载π模型,通过牛顿

拉夫森迭代方法计算单元输出压摆,并结合所述等效电容所对应的单元门延迟和压摆,输出门延迟时间和压摆;所述线延迟计算模块,其根据所述门延迟时间和压摆,利用elmore参数计算出线
延迟时间和压摆,并结合所述等效电容所对应的单元门延迟和压摆,输出最终的延迟计算结果。
[0015]更进一步地,所述预处理模块,其通过将延迟查找表和压摆查找表分别简化为1x8一维数组,实现所述延迟计算请求数据的简化。
[0016]为了实现上述目的,本专利技术还提供一种基于FPGA的静态时序分析延迟计算加速方法,包括以下步骤,接收延迟计算请求数据并将其转换为AXI Stream总线协议格式;将所述延迟计算请求数据分发后进行延迟计算;将计算结果发送给上位机。
[0017]进一步地,所述将所述延迟计算请求数据分发后进行延迟计算步骤,还包括,从所述延迟计算请求数据中,获取等效电容计算、门延迟计算和线延迟计算所需的参数,并存储在三个不同的分布式RAM中;对所述延迟计算请求数据进行简化;通过牛本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于FPGA的静态时序分析延迟计算加速系统,其特征在于,包括,上位机以及FPGA加速卡,其中,所述上位机,其通过文件读写,向所述FPGA加速卡发送延迟计算请求数据并从所述FPGA加速卡读取计算结果;所述FPGA加速卡,其接收上位机发送的延迟计算请求数据并进行计算,将计算结果发送给所述上位机;在系统内虚拟负责请求的文件和负责输出结果的文件,供所述上位机完成延迟计算请求数据的发送和计算结果的读取。2.根据权利要求1所述的基于FPGA的静态时序分析延迟计算加速系统,其特征在于,所述延迟计算请求数据,包括,单元延迟查找表和索引表,单元压摆查找表和索引表,查找表大小,输入压摆,负载π模型的C1、C2、参数,高低及阈值电压百分比,连线延迟计算的elmore参数。3.根据权利要求2所述的基于FPGA的静态时序分析延迟计算加速系统,其特征在于,所述FPGA加速卡,还包括,多个延时计算单元、PCIE DMA通信单元、请求分发单元,以及AXIS交换单元,其中,所述PCIE DMA通信单元,其将所述上位机的延迟计算请求数据进行协议转换后发送给所述请求分发单元,并将计算结果发送给所述上位机;所述请求分发单元,其将所述延迟计算请求数据均衡地分发给多个所述延迟计算单元;所述延迟计算单元,对所述延迟计算请求数据进行计算,并将计算结果发送给所述AXIS交换单元;所述AXIS交换单元,对来自多个所述延迟计算单元的计算结果进行选通后发送给所述PCIE DMA通信单元。4.根据权利要求3所述的基于FPGA的静态时序分析延迟计算加速系统,其特征在于,所述PCIE DMA通信单元,其将所述上位机的延迟计算请求数据转换为AXI Stream总线协议格式;其最高数据吞吐率应高于8GB/s。5.根据权利要求3所述的基于FPGA的静态时序分析延迟计算加速系统,其特征在于,所述延迟计算单元,将所述延迟计算请求数据进行预处理、等效电容计算、门延迟计算和线延迟计算,并将计算结果发送给所述AXIS交换单元。6.根据权利要求3所述的基于FPGA的静态时序分析延迟计算加速系统,其特征在于,所述延迟计算单元,还包括,预处理模块、等效电容计算模块、门延迟计算模块,以及线延迟计算模块,其中,所述预处理模块,其从所述延迟计算请求数据中,获取等效电容计算、门延迟计算和线延迟计算所需的参数,并存储在三个不同的分布式RAM中;对所述延迟计算请求数据进行简化;所述等效电容计算模块,其通过牛顿

拉...

【专利技术属性】
技术研发人员:罗召建陈刚
申请(专利权)人:南京集成电路设计服务产业创新中心有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1