作者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