我是靠谱客的博主 背后香氛,最近开发中收集的这篇文章主要介绍Design compiler综合教程,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

一、逻辑综合的主要步骤

synthesis = translation + logic optimization + gate mapping

DC工作流程主要分为这三步

Translation :主要把描述RTL级的HDL语言,在约束下转换成DC内部的统一用门级描述的电路(Generic Boolean Gates)(DC自己的库表现),以GTECH或者没有映射的ddc形式展现。也就是说此阶段没有用到工艺库。

Logic optimization :就是把统一用门级描述的电路进行优化,就是把路径调整一下,门给改一下等等。

Gate mapping :门级映射,把优化了的统一门级描述,DC用工艺厂商的工艺库把电路给映射出来,得到一个.ddc文件。这个.ddc文件可以包含许多丰富的信息,比如映射的门电路信息网表.v格式的网表延时信息(sdf)工作约束(sdc)等信息。(.ddc不能用文本编辑器打开)。.ddc这个包含的网表文件是实际意义的网表文件,而.v这个形式的网表文件是用来做后仿真的文件。

二、逻辑综合的具体步骤

1、在Linux下,启动DC。打开命令行,输入 dc_shellgui

2、设置库文件。

点击File - Setup

设置

(1)Search path :当在Link Library中无法找到某些模块时,DC会在Search Path下的库中自动找对应的模块。比如Synopsis的DesignWare中的库就缺省包含在了Search Path下,这也就是为什么一般不需要手动设置Synthetic Library的原因。在Verilog源文件中,如果找不到include的文件,也会在Search Path下寻找。

(2)Link library 和 Target library :Link library 和 target library 统称为 technology library(即工艺库,习惯称之为综合库),technology library 由半导体制造商提供,包含相关 cell 的信息及设计约束标准,后缀一般为".db",其中:

 Target library: 在门级优化及映射的时候提供生成网表的 cell,即DC 用于创建实际电路的库。

 Link library: 提供设计网表中的 cell,可以跟target_library使用同一个库,但是 DC 不用 link library中的 cell 来综合设计。

当 DC 读入设计时,它自动读入由 link library 变量指定的库。当连接设计时,DC 先搜寻其内存中已经有的库,然后在搜寻由 link library 指定的库。

注:当读入的文件是门级网表时,需要把 link library 指向生成该门级网表的库文件,否则 DC 因不知道网表中门单元电路的功能而报错。 

(3)Symbol library :Symbol library 提供 Design Vision GUI 中设计实现的图形符号,如果你使用脚本模式而不使用 GUI,此库可不指定 Symbol library

(4)Synthetic library :即为 Designware library ,名字上翻译是综合库,但却常称之为IP库,而不是直译。特殊的 Designware library 是需要授权的(比如使用多级流水线的乘法器),默认的标准 Designware 由 DC 软件商提供,无需指定。

 

3、读入verilog RTL文件

点击 File - Read 选择自己的verilog文件

 

4、Check Design 检查设计

点击 Design - Check Design 

5、在下方dc shell命令行输入set_max_area 0(按最小的面积综合)

6、在下方dc shell命令行输入compile –map_effort medium –area_effort medium(为优化面积而做出的努力程度

7、在下方dc shell命令行输入report_cell

8、查看综合后的电路面积

面积为3468.54719um^{2},这个面积是电路中的门级器件的面积,不包括内部金属线的面积,根据经验,最终的电路面积 ≈ 此面积/0.7。

 

因为我们实验室不需要自己做后仿真,所以跑DC的唯一目的就是看面积,我暂时也没搞清楚为什么不需要设置时钟约束,环境约束等。

 

参考链接:

https://www.jianshu.com/p/a891ef3fe71e

https://zhuanlan.zhihu.com/p/82716151

 

最后

以上就是背后香氛为你收集整理的Design compiler综合教程的全部内容,希望文章能够帮你解决Design compiler综合教程所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部