作者spock ()
看板EE_DSnP
标题[问题] 有关 level 的问题
时间Fri Jun 13 15:00:27 2008
不好意思,我尝试用 ref 做下列的操作:
bsetv 3 a
bsetv 3 b
band and_ab a b
brep a -addr -ref
brep b -addr -ref
brep and_ab -addr -ref
三个 brep 会印出完全一样的结果:
[3](+) 0x9d5a8c8 (2)
[0](+) 0x9d5aeb8 (23)
[0](-) 0x9d5aeb8 (23) (*)
==> Total #BddNodes : 2
如果用 xor 或 xnor:
[0](+) 0x9d5aeb8 (24)
==> Total #BddNodes : 1
如果做了 or 与 and:
"or_ab" and "and_ab" are equivalent.
请问一下这样代表什麽意思呢?
是不是表示同一个 level 的 nodes 做任何运算都无效或错误?
只有不同 level 的 nodes 运算才有效或合法?
还是说,我对於 level 的观念错误?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.4.235
1F:推 timrau:自己和自己AND起来当然还是自己 XOR起来就const 1 06/13 15:05
2F:→ spock:所以设定成同一个 level 的变数就会视为同一个罗? 06/13 15:07
3F:→ spock:看来我耍笨了,原来一个 level 只能有一个变数。 06/13 15:09
4F:推 ric2k1:yes, different variables with same level are just alias 06/13 15:38
5F:→ ric2k1:xor ==> 0; xnor ==> 1 06/13 15:42
6F:→ timrau:算错了...orz 06/13 15:56
7F:推 ric2k1:正确的说, 同一个 level 只能有一个 supporting variable, 06/13 16:11
8F:→ ric2k1:不过可以有许多的 BddNode assign 到这个 variable 06/13 16:12
9F:→ ric2k1:而这些 BddNode 都可以有自己的名字 06/13 16:13
10F:推 ric2k1:同一个 level 可以有许多的 BddNodeInt, 代表不同的 functi 06/13 16:14
11F:→ ric2k1:而同一个 function 可以有许多的 BddNode (with diff names 06/13 16:15
12F:→ ric2k1:map 到他 06/13 16:15