综合基础知识(二)

时间:2024-03-24 20:43:03

综合基础知识(二)

上图是DC逻辑综合的流程图以及各个过程中会用到的命令,上一篇我们讲到了Specify libraries,这一次我们再讲一讲Read Design。

Read design是指将设计文件载入内存,并将其转化为通用的Boolean等式即GETCH格式。GTECH格式由“soft macros”如“adders,comparators”。读入设计主要有两种实现方式:analyze + elaborate,read。下面我们就依次讲讲他俩之间的区别:

(1)analyze -library ‘库名称’ -format ‘文件类型’ ‘文件名称’

-library ‘库名称’ :指定中间结果所存放的库,这个‘库名称’须用‘define_design_lib’命令事先建立。

-format ‘文件类型’:文件类型,如verilog,hdl,sverilog

-文件名称:需要分析的源文件名,多个文件可用{}

综合基础知识(二)

综合基础知识(二)

elaborate ‘设计名称’ -library ‘库名称’ -architecture ‘架构名称’ -parameter ‘参数’

‘设计名称’:需要描述的设计

-library ‘库名称’:设计的分析结果所在的库

-architecture ‘架构名称’:需要分析的构造体,针对VHDL描述同一个实体对应多个构造体的情况;对于Verilog描述,该选项可缺省或为verilog。

-parameter ‘参数’:在这里给设计中的参数重新赋值,若缺省则参数使用缺省值。

-update:要求综合器自动跟新所有过期的文件。

这个我们一般就用elaborate + current_design名字。。。。

(2)read命令,可以一次完成analyze+elaborate的工作,而且除了verilog,VHDL之外还能读取EDIF,db等所有格式。

read -format ‘文件类型’ ‘文件名’

-format ‘文件类型’:源文件的个格式

‘文件名’:需要 读入的源文件名称,多个可用{}

我们是直接用的read_verilog 命令,这个根据个人所需。

综合基础知识(二)

(3)两者的区别

综合基础知识(二)

(4)current_design,link,uniquify

current_design :设定当前设计的名字,一般为top层模块名字

link : 解析设计中调用的子模块与链接库中定义的模块建立对应关系

uniquify :为每一个实例化创建唯一的标识解决模块多次实例化的问题

综合基础知识(二)