摘要:
在现代现场可编程门阵列(FPGA,Field Programmable Gate Array)的计算机辅助设计系统(CAD, Computer-aided Design)中,布局布线是十分重要的环节,其功能为如何将逻辑电路映射到具体 FPGA芯片的物理位置并布通相应的逻辑功能模块。随着 FPGA逻辑门数越来越多,结构越来越复杂,促使产业界必须用优化的布局布线算法来减少芯片的时延和面积,提高芯片的布通率,最终达到芯片系统性能提升的目的。 本课题在深入剖析和研究学术界FPGA芯片结构及主流CAD系统整体设计及其布局布线算法的基础上,设计并优化了多逻辑模块细颗粒 FPGA的布局布线算法,并编写了相应的软件实现和验证了这个算法。主要完成以下工作: 1.研究比较了FPGA的发展历程,主要架构特点,尤其是介绍了包含组合逻辑模块和时序逻辑模块的 FPGA逻辑单元结构,这对现行布局布线算法和工具提出了全新的挑战;接着本文简单介绍了CAD系统的关键流程,深入阐述了布局布线功能在整个系统中的重要性,初步探讨了布局布线优化的思路。 2.详细研究了基于VPR(Versatile Place and Route)的FPGA布局布线算法,阐述了由模拟退火算法模型为基础的布局算法,介绍了 FPGA的布线资源的参数化结构描述,布线资源图及全局布线方法和全局兼详细布线方法。 3.对学术界已有的布局布线算法探讨的基础上,仔细对比了快速模拟退火算法,推广型模拟退火算法,自适应模拟退火算法的优劣。结合多逻辑模块行结构细颗粒 FPGA的具体特点,总结出双模块并行自适应模拟退火算法作为布局优化算法,路径搜索算法作为双模块FPGA的布线优化算法。 4.最后编写了FPGA的架构描述文件XML和VPR布局布线工具的C语言程序,实现了细颗粒FPGA的布局布线的优化。
展开