cu-gr:详细路由驱动的全局布线工具
cu-gr CUGR, VLSI Global Routing Tool Developed by CUHK 项目地址: https://gitcode.com/gh_mirrors/cu/cu-gr
项目介绍
cu-gr 是由香港中文大学(CUHK)的Evangeline F. Y. Young教授指导的研究团队开发的一款VLSI(超大规模集成电路)全局布线工具。它区别于传统的全局布线工具,后者通常通过连线长度和资源溢出来衡量质量。cu-gr 是一种详细的可路由性驱动的全局布线工具,其解决方案的质量完全由最终详细布线的结果决定。
项目技术分析
cu-gr 采用了多种高效有效的方法来生成一组相互连接的矩形,以指导详细布线。这些方法包括:
- 一种复杂的基于概率的成本方案
- 一种结合2D模式布线和层分配的最优3D模式布线技术
- 一种多级迷宫布线方法,使用两个级别的布线
- 一种修补技术,添加有用的路由指导以进一步改进详细的可路由性
这些技术的详细介绍可以在以下论文中找到:
- Jinwei Liu, Chak-Wa Pui, Fangzhou Wang, Evangeline F. Y. Young, "CUGR: Detailed-Routability-Driven 3D Global Routing with Probabilistic Resource Model", ACM/IEEE Design Automation Conference (DAC), San Francisco, CA, USA, July 19-23, 2020.
项目技术应用场景
cu-gr 可以在多种VLSI设计流程中使用,特别是在全局布线阶段,它能够提供高质量的全局布线解决方案。该工具支持 ICCAD'19 的基准测试,可以用于以下场景:
- VLSI设计自动化
- 学术研究和教学
- 行业中的电路设计优化
项目特点
以下是 cu-gr 的一些显著特点:
- 详细可路由性驱动:cu-gr 的解决方案质量完全基于最终详细布线的成果,而不是传统的连线长度和资源溢出。
- 高效算法:通过概率成本方案、3D模式布线技术、多级迷宫布线和修补技术,cu-gr 能够生成高质量的全局布线。
- 多线程支持:cu-gr 支持多线程,可以在多核心处理器上有效运行,提高布线效率。
- 易于使用:项目提供了简单的构建和运行流程,用户可以快速上手并使用。
- 结果可视化:cu-gr 提供了结果可视化功能,方便用户直观查看布线效果。
以下是一个使用 cu-gr 的简单示例:
$ cd run
$ ./iccad19gr -lef ../toys/iccad2019c/ispd18_sample/ispd18_sample.input.lef -def ../toys/iccad2019c/ispd18_sample/ispd18_sample.input.def -output ispd18_sample.solution.guide -threads 8
此外,cu-gr 还提供了批处理测试功能,用户可以轻松地对多个设计进行测试。
结果展示
在64位Linux工作站在Intel Xeon Silver 4114 CPU(2.20GHz,40核心)和256GB内存上进行的实验结果显示,cu-gr 在多个设计案例中都取得了良好的布线质量。
| 设计 | 线长 & via | 非首选使用 | 短 | 最小面积 & 间隔 | DR分数 | GR运行时间(sec) | |:--------:|:------------:|:------------:|:-------:|:-----------------:|:-------:|:---------------:| | ispd2018_test5 | 15613663 | 166994 | 330425 | 288500 | 16089196 | 68 | | ispd2018_test5_metal5 | 15807997 | 135293 | 261150 | 224000 | 16210303 | 85 | | ... | ... | ... | ... | ... | ... | ... |
这些结果证明了 cu-gr 在全局布线任务中的高效性和准确性。
通过上述分析,cu-gr 显然是一个值得推荐的开源项目,无论是对于学术研究还是工业应用,它都能提供强大的支持和优异的性能。
cu-gr CUGR, VLSI Global Routing Tool Developed by CUHK 项目地址: https://gitcode.com/gh_mirrors/cu/cu-gr
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考