作者ric2k1 (Ric)
看板EE_DSnP
标题Re: [问题] 关於standardize中处理complement edge …
时间Sun Jan 7 23:26:17 2007
※ 引述《karate362 (最近腰不痛的卡拉特)》之铭言:
: ※ 引述《karate362 (最近腰不痛的卡拉特)》之铭言:
: : 我看DAC90的paper中提到
: : 在计算ITE(F,G,H)的时候,应该要standardize成
: : [第一和第二个参数不可以有complement edge]
: : 的型式...
: : 不过我就有点不了这个规则是哪来的
: : 可以请老师或哪位通晓的同学再说明一下吗?
: 我困扰的地方主要是说 有个规定是每个node跟left child相连的不能是complement edge
: 但是使用上面[第一和第二个参数不可以有complement edge]这个规则就能搞定吗??
: 应该没这回事吧 所以其实是要在ite()函式return之前再去检查并且move bubble罗?
ITE(F, G, H) standardize() 的 complement rule (rule #3)
(i.e. [第一和第二个参数不可以有complement edge])
与
BddNodeInt::_left 不能有 bubble
是两件不同的事情!!
前者是
要增加 computed cache 的 hit rate,
在 ITE recursive call 之前检查,
在讲义 pp. 46 ~ 48.
後者是
要维持 BDD canonicity 的 property,
在 ITE recursive call 之後才检查,
在讲义 pp. 44 ~ 45.
千万不要搞混啊!!!!!
每年都有不少人"葬身"在这个问题上...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 59.121.129.139