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

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

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 1058|回复: 5

[求助] 如何在encounter 中手动去除元件

[复制链接]
发表于 2019-5-9 15:34:39 | 显示全部楼层 |阅读模式

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

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

x
芯片有一个clock 管脚,属性为 inout, 当芯片作为Master 运行时,  芯片内部的时钟模块产生一个时钟, 该时钟一方面通过clock  管脚送到芯片外, 另一方面还驱动芯片内部模块A。
内部时钟模块的时钟出口(也是inout)设计成三态Buffer,在以Master 运行时,三态 buffer是导通的。以slave运行时,三态buffer关断, 以免与外部进来的时钟冲突。
当芯片作为Slave 运行时, 外部时钟通过clock管脚传入内部,驱动芯片内部模块A。 此时,内部时钟模块由于三态Buffer关断,不起作用。
该设计在RTL仿真和DC 综合后仿真都没有问题, 不管是Master 还是Slave 都正确。 但是在用encounter 加入时钟树后,做post-PR仿真,Master 时仿真是对的, 但Slave 时时钟信号就变成红线(未知)了。 查了半天, 发现时钟模块的三态buffer后面由于时钟树综合又多了一个正常的buffer。 该buffer的加入在master时没有问题, 但slave状态时,该buffer的输出端会与外部导入的时钟冲突。
我想解决这个问题大概有两个方法:
1)        使时钟树综合时不产生该buffer, 试了几下,没成功。
2)        手动去除该buffer
我试着用encounter interactive CEO 去掉这个buffer, 但出现“can’t delete because it is fixed” 不知还有没其它办法能去除一个元件,并且能相应修改placement & route
这个问题困扰我很多天了,恳请各位大牛指点。非常感谢。
发表于 2019-5-9 15:50:22 | 显示全部楼层
你这个是设计的问题,不是后端的问题,clock的inout管脚已经可以避免内外时钟冲突了,内部时钟模块就不要做三态buffer了。不要把内部时钟直接接到模块A。芯片内部模块A的时钟直接来自于clock管脚,不管是内部时钟还是外部时钟。
 楼主| 发表于 2019-5-9 16:02:26 | 显示全部楼层
非常感谢,我也觉得设计可能有问题。 但如果内部时钟没有三态buffer, slave时不就和外部时钟冲突了吗
 楼主| 发表于 2019-5-9 21:16:48 | 显示全部楼层
理解了, 非常感谢 moonforest.
发表于 2019-5-27 09:36:26 | 显示全部楼层
dbDeleteBuffer
发表于 2019-5-27 17:06:10 | 显示全部楼层
鼠标选择要删除的cell,按deleted删除
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

×

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

GMT+8, 2024-4-26 10:49 , Processed in 0.022572 second(s), 7 queries , Gzip On, Redis On.

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