在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 5120|回复: 6

[求助] 请教一个DC综合面积优化问题

[复制链接]
发表于 2013-2-22 10:31:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
在我的设计中有些操作是重复的,于是我把该操作编写成一个module,然后通过调用此模块实现多次操作。我又尝试把每一次操作重复编写,来实现同样的过程。结果发现DC综合出来的面积不一样,后者的面积较小。 请问有什么方法能够使得这两种编写方法综合出来的面积相同?
      我重新做了一次DC实验,首先对需要例化的模块进行综合、并写出网表;然后再顶层例化此网表;最后对顶层综合时,我设置了set_dont_dont_touch [get_cells {例化的名字}]。但是综合后的面积还是没有改善。
             谢谢!
 楼主| 发表于 2013-2-22 10:46:40 | 显示全部楼层
麻烦走过路过的朋友们发表一下自己的想法!谢谢!!!
 楼主| 发表于 2013-2-22 15:55:24 | 显示全部楼层
谢谢!不知道楼主说的是set_flatten还是no_map;我尝试用no_map以及先把顶层所有的例化模块group然后再ungroup,面积仍然很大;用ungroup_all会小一点,但是仍然比后者面积大
 楼主| 发表于 2013-2-22 15:58:18 | 显示全部楼层
本帖最后由 edayz 于 2013-3-7 19:49 编辑

我用的代码如下:
方法一:


module q_sub_10b1(in_a_,
                 in_b_,
                 out_
               );
input [8:0] in_a_;
input [8:0] in_b_;

output [9:0] out_;

q_add_1b u_q_add_b0(.da(in_a_[0]), .db(b_inv_[0]), .ci(carry_in   ), .do(out_[0]), .co(carry_b_[0]));
.
.
.

endmodule

module q_add_1b(da,
                 db,
                 ci,
                 
                 do,
                 co
                );
.
.
.
.
endmodule
方法二:



module q_sub_10b2(in_a_,
                 in_b_,
                 out_
               );
.
.
.
.

endmodule
 楼主| 发表于 2013-2-28 09:08:40 | 显示全部楼层
各位大侠有没有遇到过类似的问题,也有可能顶层模块例化多种子模块,期待高人指点迷津!
发表于 2014-10-7 10:18:08 | 显示全部楼层
也在try这个set_dont_touch [get_cells {例化的名字}
发表于 2020-3-2 16:57:17 | 显示全部楼层
DC无法优化for循环的逻辑,只是单纯进行展开和复制,这可能降低电路的面积和性能
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

×

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-22 14:43 , Processed in 0.026147 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表