dc使用教程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
DC使用说明
文件说明:在进行下面的演示时需要用到两个文件,一个是example1.v,它是描述一个电路的verilog代码,我们的目标就是用DC综合这个代码得到满足约束条件的电路网表;另一个是dc.scr,它是综合example1.v的脚本文件。这两个文件都在/home/student1000目录下,大家把它们拷贝到自己的目录下,以备使用。DC既可使用图形界面,也可不使用图形界面而直接运行脚本来综合电路。
一、DC图形界面的使用。
1.DC图形界面的启动
1.1 打开一个终端窗口,写入命令dv –db_mode,敲入回车。
则DC图形界面启动,如下图所示
红框处是DC的命令输入框,以下在图形界面上的操作都可以在命令输入框中输入相应的命令来完成。
选择Help----- Man Pages可以查看DC的联机帮助。相应指令:man。例:man man表示
查看man命令的帮助。man create_clock表示查看creat_clock命令的帮助。
2.设置库文件
选择File---- Setup
需要设置以下库文件,如下图。
相应指令:
set search_path [list /tools/lib/smic25/feview_s/version1/STD/Synopsys \
/tools/lib/smic25/feview_s/version1/STD/Symbol/synopsys] set target_library { smic25_ff.db }
set link_library { smic25_ff.db smic25_ss.db }
set symbol_library { smic25.sdb }
点OK,设置完成。
3.读入verilog文件
选择File--- Read
在打开文件对话框中选中要打开的文件,在这里我们选中example1.v文件。
在Log框中出现successfully字样表明读入文件成功。相应命令:read_file
点击红色箭头所指的按钮可以查看该电路的symbol图。
4.设置约束条件
设置时钟约束
在symbol图上选中clk端口
选择Attributes----- Specify Clock
出来设置时钟约束的对话框,按下图设置,给时钟取名为clock,周期20ns,上升沿0ns,下降沿10ns。
点击OK,时钟约束设置完成。相应命令:creat_clock
设置复位信号约束
在symblo图中选中rst_n端口(在本例中它是复位端口),选择Attributes-----→Optimization Directives-----→Input Port
勾选Don’t touch network选项,点击OK。相应命令:set_dont_touch_network
4.3 设置输入信号延迟约束
同时选中输入端口a,b,c
选择Attributes----→Operating Environment-----→Input Delay
设置Relative to clock为clock(即我们刚才加约束的时钟信号),并设置上升延迟为8ns(根据经验,该值是时钟周期的40%,本例中设置了时钟周期为20ns,20*0.4=8ns)
相应命令:set_input_delay
在symblo图上选中输出端口o。
选择Attributes-----→Operating Environment-----→Output Delay
相应指令:set_output_delay
4.5设置面积约束
选择Attributes-----→Optimization Constraints-----→Design Constraints
设置Max area的值为0,表明让DC向电路面积为0的方向来优化电路,使面积最小。当然,面积为0是达不到的。Max fanout为4,Max transition为0.5(具体含义参见SYNTHESIS.pdf)
相应命令:set_max_area,set_max_fanout,set_max_transition。
5.综合优化
选择Design----- Compile Design
点击OK,相应命令:compile
在Log框中出现Optimization Complete字样表明优化完成,如下图所示。
6.查看报告
查看面积报告
选择Design----- Report Area
点击OK,相应命令:report_area。
报告总面积为180.223999,单位是平方微米。
查看约束报告
选择Design----- Report Constraints
在这里我们只查看all violators选项(勾选show all violators),该选项是报告综合后所有不满足原先设置的约束条件的条款。
从下图可以看出只有max_area(最大面积)约束不满足,因为我们设置的最大面积约束是0(见 4.5),而实际综合出的电路面积是180.22。该项violator是合理的。如果还存在其它violators,说明前面的约束设置不合理或电路设计不合理,需要对其修改,最终要求除
max_area violator外没有其它violators。相应命令:report_constraint
时序报告
选择Timing----- Report Timing
报告的是最大延迟路径。相应命令:report_timing