随着大规模集成电路器件复杂度与容量的不断提升,现场可编程门阵列(Field Programmable Gate Array, FPGA)以高度的并行、可定制和可重构的特性得到了广泛的关注与应用. 在制约FPGA发展的众多因素中,最为关键的便是电子设计自动化(Electronic Design Automation, EDA)技术,作为FPGA EDA流程中的关键环节,布局和布线技术的研究对于FPGA的重要性不言而喻. 本文综述了面向FPGA的布局和布线技术,包括基于划分的布局、基于启发式的布局、基于解析式的布局、FPGA串行布线和FPGA并行布线等技术,分析对比了不同技术方法的优缺点,在此基础上,本文还展望了未来FPGA布局和布线技术的发展趋势,将为FPGA未来健康可持续的发展提供有力支撑.
1984年,Xilinx公司首次提出现场可编程门阵列(Field Programmable Gate Array, FPGA)的概念,作为一种半定制电路,FPGA凭借其设计成本低、速度快、异构逻辑资源丰富等优势,一经面世便广泛应用于现代数字系统的设计中[1,2]. 随着各种新兴技术的不断涌现,FPGA的应用范围也在逐步从普通的消费电子向物联网(Internet of Things, IoTs)[3]、高性能运算[4]、云计算[5]、人工智能[6,7]等领域不断拓展.FPGA的集成度也在不断增大,从最初只含有64个逻辑单元发展到迄今为止的超过900万个逻辑单元以及350亿个晶体管. 集成度的不断提升使得FPGA能够被用于设计更加复杂的电路系统,但同时也对FPGA电子设计自动化(Electronic Design Automation, EDA)软件工具造成了负担[8]. FPGA的研发离不开EDA工具的支持,以硬件描述语言(Hardware Description Language, HDL)设计的电路,通过FPGA EDA工具会被编译为二进制的码流文件,通过该码流文件能够完成对FPGA芯片的配置最终实现所需的电路功能[9]. 但随着FPGA芯片集成度以及电路规模的不断提高,FPGA EDA工具将电路描述文件编译为二进制格式的文件所需花费的时间也越来越长,这将直接降低FPGA在设计阶段的开发效率、增加时间成本,制约FPGA芯片的健康发展[10,11].
FPGA EDA工具的设计流程主要包括设计输入、行为综合、逻辑映射、打包、布局、布线以及二进制码流生成.其中,布局与布线作为FPGA EDA工具设计流程中至关重要的环节,其最终结果直接决定了所设计的电路在FPGA芯片上实现后的性能.因此,布局和布线技术的研究对于FPGA的健康可持续发展具有重大的意义. 本文全面综述了FPGA布局、布线问题的研究现状与进展,完成了相关理论成果和技术方法的梳理,对FPGA布局和布线的关键技术进行了详细阐述,最后对FPGA布局、布线技术未来的发展趋势进行了展望.