论文部分内容阅读
第一片可编程逻辑器件研发于1984年,随后,现场可编程门阵列(FPGA)在消费、工业、医用、军用、无线与固网等方向非常普及,具有低功耗、高能效、可编程性、面市速度快和成本低等优势。 随着市场需求增长,FPGA器件尺寸不断增大,计算机辅助设计(CAD)工具运行时间成为突出的问题。布线是FPGA的CAD工具中所占运行时间比例最高的阶段。由于FPGA上晶体管数量呈指数增长,提高布线算法性能很有必要。并行布线是一种能够提高布线效率的方式。 本文提出一种减少FPGA时序驱动布线算法运行时间的多线程方法。本文中的布线算法是基于通用布局布线工具(VPR)程序中的传统时序驱动布线算法并行化而成。时序驱动布线算法能有效减少关键路径延时,提高电路性能。 该算法首先将信号按照线网的扇出数量进行排序,再将排序后的线网均匀分配到各个线程中,最后再并发执行所有的线程。为了减少通信,可以将信号线分成独立的组。主线程创造各子线程,子线程采用共享存储的方式通信,在布线前使用路障同步。每个线程对自己的一组线网进行布线,子线程的数据结构除了相关联的拥塞信息外相互独立。多线程部分是用可移植操作系统接口(POSIX)线程库实现的。 在布线质量没有受到显著影响的前提下,即线长增加2.58%、关键路径延时增加1.78%的情况下,相对于传统时序驱动布线算法,8线程下的加速比为2.46。实验结果显示,布通率与串行布线器相同,且布线质量没有受到显著影响。