数字IC设计之DC篇:DC流程介绍
- 综合概念
综合是使用软件的方法来设计硬件, 然后将门级电路实现与优化的工作留给综合工具的 一种设计方法。它是根据一个系统逻辑功能与性能的要求,在一个包含众多结构、功能、性能均已知的逻辑元件的单元库的支持下,寻找出一个逻辑网络结构的最佳实现方案。即实现 在满足设计电路的功能、速度及面积等限制条件下,将行为级描述转化为指定的技术库中单元电路的连接。
数字电路的逻辑综合包括三个步骤:综合=转化+映射+逻辑优化,具体的流程如下图所示;
转换阶段:综合工具将 HDL 语言描述的电路或未映射的电路用工艺独立的 RTL 级的逻辑来实现,对于Synopsys的综合工具DC来说,就是使用 gtech.db 库中的 RTL 级单元来组成一个中间的网表。
映射阶段:是指将网表文件映射到特定的工艺库,此工艺库包含了工艺技术参数和单元的功能和延时;
优化阶段:综合工具将网表文件根据设计者的约束进行电路性能的优化;
- DC入门学习
DC的入门学习建议通过书籍掌握基本的概念,之后通过Sysnopsys提供的WorkShop对工具和综合流程进行基本的掌握,最近我学习DC的资源就是DC200703_LabGuide,需要此资源的可以百度搜索或者后台联系我;在通过WorkShop掌握了基本操作后,建议大家实际操作一个工程,进行逻辑的综合,以达到独立进行综合的最终目的。
在DC综合中,首先需要设置综合的环境,在.synopsys_dc.setup文件中需要设置库的位置和环境变量,DC综合设计的库文件如下所示:
- Target_library:由半导体厂商提供,包含工艺技术参数和单元的功能,DC使用库里的单元构成电路。工艺库一般是.dbDE 的格式,这种格式是DC认识的一种内部文件格式;
- Link_library:设置模块或者单元电路的引用,对于所有DC可能用到的库,都需要在Link_library中进行指定,包括要使用到的IP文件。此处还要将search_path添加进来,这样才能找到.db文件;
- Symbol_library:包含工艺库中的单元图形表示的库名称;
后续会进行一个实际综合的实例来进行综合过程的演示,敬请期待~