作者vincere (vin)
看板EE_DSnP
標題[問題] 關於老師的code
時間Thu Jan 5 18:31:53 2012
想要請問一下教授或是知道的人
關於老師提供的code中幾個自己比較不清楚的部份:
1.cirGate.h中class CirAigGate:getIn0Gate return的_in0.gate()
關於gate(),不是很清楚它的功能
以及像是AIG_PTR_MASK,AIG_EDGE_BITS等所代表的意義
2.老師似乎沒有在cirGate中把fanoutlist存起來(還是我沒看到?),
想知道說每個gate的fanout是存在哪還是說根本就沒存?
因為很好奇說如果沒存的話,執行一些會用到fanout功能如output fanout的話
是如何找到自己的fanout?
另外關於cirMgr.h中的*_fanoutInfo存的是什麼東西呢?
感謝大家的回答
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.25.108
1F:→ alvin1019127:你印一下每個i的 _fanoutInfo[i][j]->getGid() 01/05 18:41
2F:→ alvin1019127:第一個你看一下in0/1然後看一下CirGateV就會懂的 01/05 18:43
3F:→ alvin1019127:我也是用老師的code看不太懂的部份就印出來看看吧 01/05 18:51
4F:→ e124553423:fanout info應該就是存每個GATE的fanout吧 01/05 19:14
5F:→ e124553423:寫到現在發現基本上只有cirg -fanout會用到fanout 01/05 19:14
6F:→ e124553423:其他好像沒什麼動到,要去maintain他反而很麻煩 01/05 19:15
7F:推 ric2k1:1. 你要搞清楚 CirGate 以及 CirGateV 的差別,這個上課 01/05 23:04
8F:→ ric2k1:應該有提到很多次吧? 就是把 pointer 轉成 size_t 然後用 01/05 23:05
9F:→ ric2k1:LSB 多存一些東西 (像是 inv, float 等資訊)。 01/05 23:05
10F:→ ric2k1:2. Fanout 沒有存在 gate 裡面,而是存在 CirMgr 的 01/05 23:06
11F:→ ric2k1:_fanoutInfo, 利用 gate id 去拿到他的 fanout list 01/05 23:06
12F:→ vincere:謝謝教授 我知道他們的差別 只是沒有很瞭解AIG_EDGE_BITS 01/06 01:13
13F:→ vincere:及AIG_PTR_MASK所存的資訊 01/06 01:14
14F:推 ric2k1:這兩個 MACRO 只是用來做 mask 取得需要的 bit information 01/06 01:31
15F:→ vincere:想要再請教一下 cirMgr.h中getNumTots()這個函示 自己臆測 01/07 20:07
16F:→ vincere:是拿來知道_totGateList的大小 只是沒想通為什麼會有+1? 01/07 20:10
17F:→ vincere:還是我根本想錯了? 01/07 20:12
18F:推 ric2k1:+1 is for CONST-0. _totGateList[0] is a CONST gate. 01/07 20:50
19F:→ vincere:噢對耶感謝教授 所以在_totGateList中 我們最多只能拿到 01/07 20:58
20F:→ vincere:_totGateList[_numDecl[VARS]+_numDecl[PO]]的element 01/07 21:00
21F:→ vincere:如果沒定義到的id 該array 的element就是0對吧? 01/07 21:02
※ 編輯: vincere 來自: 140.112.25.108 (01/07 21:05)
22F:推 ric2k1:是的, 01/07 22:00