您的位置:首页 > 其它

数字逻辑综合工具-DC-11——一些其它命令和综合之后的文件

2020-01-11 14:50 1041 查看



对于reset 和clock这种大扇出的信号来说,必须要人为设置为ideal network,不要让DC动它,因为线负载模型对于这些大扇出的情况估算不准。


如果不添加don’t touch属性的话,DC会在很长的一根线上插入很多负载。

一般set_ideal_network 的对象是port或者pin,net也有,比较少见。
全是ideal network的信号经过一些逻辑还是ideal的,如果有一个不是ideal的,那输出就不是ideal的。

下面这条语句的意思是驱动这个net的所有的pin或者port是理想的。
针对net设置的有另外一条命令:set_ideal_net


设置为ideal network之后,可以选择设置latency 和transition ,像set_clock_latency之类

.ddc:交给后端工具ICC
.def:交给做DFT的
.v:交给做后仿的
.sdc:约束(standard design constraint)

sdc:约束,其它公司的EDA工具做后端的时候会用到这个文件,只有synopsys的后端工具才能读入自家的ddc文件。


SCAN-DEF.def存放了一些关于扫描链的信息。做DFT的会用到。


.v网表文件可能会综合出assign语句,这是不正常的。应该都是用单元例化的形式。
(tri类型的不要用,很可能生成这种assign语句。)
怎么让DC把它弄掉:
【多端口连线】

同一个输出写了两个端口会导致网表里出现assign语句。
端口输入直接连到了输出。
内部固定接到0或者1的(常数)。

增加这样一个命令:set_fix_multiple_port_nets -all -buffer_constants
插入一些buffer,不用net直连。

针对tri产生的问题:

(强制把代码中的tri转成wire。)

【特殊字符】

打开看网表的时候,经常在总线的前面加入一些反斜杠表示,对其他的工具而言,可能不认识。在保存的时候要把网表给拿掉。


compile之后、保存网表之前加入change_names命令
-rules verilog表示按照verilog的命名规则去命名

【【实操】】


这里有条命令,在设置输出的外部延时的时候:
set_isolate_ports设置隔离单元
在输出的时候插入buffer让输出端口和内部隔离开。
不加这个选项:当电路出现反馈结构的时候,输出端会影响电路的结果。


Step12:
第一条:不要用tri,如果用了,转换为wire类型的
第二条:如果某一个端口,没有用到,在报告的时候也显示出来

sdf文件长这样:


(把端口(all_outputs)展开成最基本的信息)

sdf文件:
时序信息

如果不用change_names,综合一些总线就会出现这样反斜杠的东西:

  • 点赞
  • 收藏
  • 分享
  • 文章举报
万里独行田伯光大侠 发布了18 篇原创文章 · 获赞 4 · 访问量 649 私信 关注
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: