逻辑综合重点解析(Design Compiler篇)

前言
本文摘录自微信公众号 “数字芯片实验室”
欢迎关注
在这里插入图片描述

1、逻辑综合(Logic Synthesis)分为哪三个步骤?
在这里插入图片描述
逻辑综合的行为是将数字电路的寄存器传输级描述(RTL,Register Transfer Level)“综合”成门级网表(Gate-Level Netlist)。Design Compiler将RTL和根据设计需求编写的约束文件作为输入综合出门级网表,在性能、面积和功耗之间进行trade-offs。后端Place&Route工具(ICC、Innovus)将门级网表作为输入生成GDSII文件用于芯片制造。
逻辑综合 = 翻译 + 优化+ 映射。其中,read_verilog将RTL翻译成GTECH,compile进行综合,也就是优化和映射成工艺相关的门级网表。

2、当你拿到一个ddc格式的文件,你是否能够知道这是一个已经综合过的设计?
False
综合前和综合后的设计都能够保存为.ddc格式。一般保存在unmapped和mapped 文件夹下。

3、使用Design Compiler进行逻辑综合出现下述log,请问gtech.db和standard.sldb包含哪些信息?

在这里插入图片描述
gtech.db和standard.db是synopsys提供的默认库,分别包含了GTECH逻辑单元和基本的DesignWare IP模块。在使用read命令时,这些库都被自动地加载。

4、Design Compiler综合过程中,target_library是如何被使用的?
target_library使用在"compile"过程中,用来生成工艺相关的门级网表。Design Compiler尽量选择面积最小的逻辑门去满足设计功能和时序的要求。
如果不通过“set target_library *”指定目标工艺库,默认值是your_library.db,同时工具会报出warning

5、Design Compiler 综合过程中 “link”命令完成了什么功能?
link是Design Compiler ”resolve”设计中例化模块的过程。Design Compiler通过变量“link_library”指定例化模块库的位置,和target_library一样,默认为your_library.db。建议显式地使用link命令,否则工具可能带着“unresolved references”进行综合,产生没有意义的结果,同时浪费时间。

6、link_library = “ * $target_library”中的 "*"指的是什么 ?
DC memory 。Design Compiler 首先会在DC memory中寻找匹配的例化模块。

7、Design Compiler 逻辑综合中 search_path变量的作用是什么?
DC在search_path指定的目录底下寻找设计代码和库文件。建议在search_path中使用相对路径,增强脚本环境的可移植性

8、Design Compiler 逻辑综合流程中,下述脚本的意义是?
在这里插入图片描述
避免某些设计者只使用run 脚本综合设计,不仔细查看log和reoport。基于错误的link或者check_design结果run完整个综合流程会浪费大量不必要的时间。

9、将综合前的设计保存为.ddc的格式文件有什么好处?
read命令将rtl(unmapped)翻译成GTECH格式。对于一个较大的设计,rtl to ddc需要花费很长的时间。当我们需要对设计重新进行compile时,只要读取保存的unmapped的设计(.ddc)就能节省很多时间。如果rtl已经被更新,还是要重新读入rtl.

10、请问在Design Compiler综合过程中,下述命令的作用是什么?
在这里插入图片描述
Design Compiler 完成了ASIC设计流程中的rtl to netlist过程,后续需要有第三方工具完成netlist to GDSII的实现。而第三方工具对于netlist有字符语法上的限制,所以需要使用change_names 命令,才能让第三方工具正确识别netlist。

11、下面哪个是关于target_library和link_library变量正确的表述?

a)所有在设计中例化的宏模块都应该在target_library中设置
b) 在compile期间,DC从link_library中选择最小的逻辑门去满足时序要求
c) link_library用于resolve例化模块,target_library用于在compile
d) link_library自动加载.ddc文件

C
a) 应该是 link_library
b) 应该是 target_library
d) 应该是 link

12、在设计中,port和pin有什么异同&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值