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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 2714|回复: 10

[求助] 关于innvous buf扇出插入位置的问题。

[复制链接]
发表于 2022-5-21 10:45:10 | 显示全部楼层 |阅读模式
50资产
现在有这样一个问题:
PR数字模块时,需要和3个模拟模块连接,由于数字区域不是一个标准长方形结构,因此采用模拟提供LEF文件,写top顶层模块,把数字和这3个模拟模块连接起来,然后再进行整体的PR.其中数字模块IG1,3个模拟模块:ANA1,ANA2,ANA3;
module DIG1(AOUT1,AOUT2, AOUT3....)
   output AOUT1, AOUT2, AOUT3;
...............
endmodule

module ANA1(AIN,......)
   input AIN;
.................
endmodule

module ANA2(AIN,......)
   input AIN;
.................
endmodule

module ANA3(AIN,......)
   input AIN;
.................
endmodule

module top()
  wire A1, A2, A3;
DIG1 i_DIG1(.AOUT1(A1),.AOUT2(A2),.AOUT3(A3),.........);
ANA1 i_ANA1(.AIN(A1),.......);
ANA2 i_ANA2(.AIN(A2),.....);
ANA3 i_ANA3(.AIN(A3),.....);
endmodule

PR后,由于模拟RC参数以及走线长短驱动的原因,会在top层增加buf的instance,导出的网表就变成如下了:
module top()
  wire A1, A2, A3;
  wire FE_TTT_A1, FE_TTT_A2,FE_TTT_A3;

DIG1 i_DIG1(.AOUT1(A1),.AOUT2(A2),.AOUT3(A3),.........);
  BUFX1 U1(.A(A1), .Y(FE_TTT_A1));
  BUFX1 U2(.A(A2), .Y(FE_TTT_A2));
  BUFX1 U3(.A(A3), .Y(FE_TTT_A3));
ANA1 i_ANA1(.AIN(FE_TTT_A1),.......);
ANA2 i_ANA2(.AIN(FE_TTT_A2),.....);
ANA3 i_ANA3(.AIN(FE_TTT_A3),.....);
endmodule


现在我的问题是,如何让这些BUF,插入到DIG1中,而不是插入到top中?






发表于 2022-5-21 10:57:08 | 显示全部楼层
要这样做的前提是两个模块要够近,然后你可以
1)把现有的buf推入数字模块,或者
2)在插入buf之前,设置顶层(注意,只是顶层)net为 dont_touch,迫使工具在数字模块里面插buf
 楼主| 发表于 2022-5-21 11:58:58 | 显示全部楼层


陈涛 发表于 2022-5-21 10:57
要这样做的前提是两个模块要够近,然后你可以
1)把现有的buf推入数字模块,或者
2)在插入buf之前,设置顶 ...


“set_dont_touch top”吗?这样是否会影响DIG1内的buf插入?

发表于 2022-5-21 12:04:43 | 显示全部楼层
top net 名字是 xxxx,数字模块的net名字是 i_DIG1/xxxx,你只能对xxxx set_dont_touch,而不是i_DIG1/xxxx
 楼主| 发表于 2022-5-21 14:36:45 | 显示全部楼层


陈涛 发表于 2022-5-21 12:04
top net 名字是 xxxx,数字模块的net名字是 i_DIG1/xxxx,你只能对xxxx set_dont_touch,而不是i_DIG1/xxxx ...


如我举例所示,顶层是top,数字是top/i_DIG1,现在我只希望top这一层不要插入任何buf,是不是设置为set_dont_touch top?这是否会导致i_DIG1内也dont_touch了?

发表于 2022-5-22 22:44:27 | 显示全部楼层
自己试试吧
 楼主| 发表于 2022-5-23 18:04:05 | 显示全部楼层


如果我对顶层top设置了set_dont_touch,那么i_DIG1这样的数字子模块也会为dont_touch,这样时序会有问题。

发表于 2022-5-24 13:35:47 | 显示全部楼层
数量不多,手动插
 楼主| 发表于 2022-5-24 14:28:26 | 显示全部楼层


martinlyj 发表于 2022-5-24 13:35
数量不多,手动插


pin太多,插入的buf也很多,手动修改花费太多时间了。
发表于 2022-5-25 15:44:44 | 显示全部楼层
给一个dig_top再加一个chip的top把模拟和数字连接起来,这样综合一般不会有,如果有的话,对chip top 级别的net 设置dont touch 属性。。记得后端需要知道这个
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

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

GMT+8, 2024-11-5 19:36 , Processed in 0.021512 second(s), 5 queries , Gzip On, Redis On.

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