作者OckhamsRazor (魏格纳的友人)
看板EE_DSnP
标题[问题] DFT
时间Thu Dec 15 01:14:56 2011
cirp的netlist是用DFT来印的吗?
怎麽觉得怪怪的...
像是opt06.aag
aag 14 2 0 1 12
2
4
28
28 22 27
26 21 24
20 12 14
22 12 16
24 12 18
12 11 16
10 0 8
8 6 1
16 15 15
18 14 14
6 0 2
14 2 5
c
它的cirp -n是:
[0] CONST0
[1] PI 1
[2] AIG 3 0 1
[3] AIG 4 3 !0
[4] AIG 5 0 4
[5] PI 2
[6] AIG 7 1 !2
[7] AIG 8 !7 !7
[8] AIG 6 !5 8
[9] AIG 11 6 8
[10] AIG 10 6 7
[11] AIG 9 7 7
[12] AIG 12 6 9
[13] AIG 13 !10 12
[14] AIG 14 11 !13
[15] PO 15 14
为什麽[10]不是"AIG 7 1 !2"呢?
明明就能再向下 为什麽要跳回去呢?
拜托大家了<(_ _)>
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.244.51
1F:→ e124553423:cirp是从PO跑回去没错,但是是跑到底之後才开始印 12/15 07:12
2F:→ e124553423:(fanin都印完才会印自己) 12/15 07:12
3F:→ e124553423:因为7 1 !2在前面出现过了 不需要再印 12/15 07:14
4F:推 ric2k1:嗯,是从 PO 开始做 post-order 的 DFS, 所以 inputs 会比 12/15 14:04
5F:→ ric2k1:outputs 先印,而且有用 mark(或ref)之後印过的不应该再印 12/15 14:05
感谢说明
大致理解netlist的原理了
但下列AIGER码:
aag 16 5 0 3 2
2
4
6
8
10
0
14
24
14 4 6
24 10 8
c
ref的cirp -n如下:
[0] CONST0
[1] PO 17 0
[2] PI 2
[3] PI 3
[4] AIG 7 2 3
[5] PO 18 7
[6] PI 5
[7] PI 4
[8] AIG 12 5 4
[9] PO 19 12
这可能太trivial了
但我想知道为何[6][7]的顺序是那样
如果我把他们反过来
算是错吗?
※ 编辑: OckhamsRazor 来自: 140.112.244.51 (12/15 20:14)
6F:推 ric2k1:"24 10 8" 这个 AIG gate 会把 "[6] PI 5" 放在 fanin[0], 12/15 21:02
7F:→ ric2k1:而把 "[7] PI 4" 放在 fanin[1], 因此,根据 spec, [6]会比 12/15 21:03
8F:→ ric2k1:[7] 先被 traverse 到,所以会是这样的顺序。 12/15 21:04
9F:→ OckhamsRazor:了解了!!!谢谢教授!!! 12/15 21:18