作者ric2k1 (Ric)
看板EE_DSnP
标题[建议] Final project 要用谁的 cir?
时间Sun Dec 25 19:08:23 2011
看过 final project spec 的人都知道,
你可以选择使用自己 HW6 的 circuit parser, 或是用我提供的。
差别在哪里? 要怎麽用呢?
使用自己的 circuit parser 的好处当然是掌握度比较好,
final project 有许多地方需要对 circuit data structure 做设计,
所谓设计得好可以带你上天堂,设计不好保证让你在砍掉重练的世界里不断轮回。
所以掌握度高可以让你比较知道要如何取舍,
但也可能因为你 HW6 原来的体质不良而必须面对到底要不要砍掉重练的尴尬问题。
Anyway, 建议你好好把 spec 看一下,想一想自己要怎麽设计,
其实绝大部分都要自己设计,所以其实也不见得会差很多。
好,废话不多说,那要怎麽使用呢?
其实可以参见 spec "3. What you should do?" 的第四点。
[如果要使用我提供的 cirGate-{32,64}.o 以及 cirMgr-{32,64}.o]
1. 把 "src/cir/Makefile" 中 "
#EXTRAOBJS =..." 那行 uncomment 掉.
(i.e. 拿掉 "#")
2. make clean 之後再 make 32 or make 64。
如果先 make 32/64 再 make clean,
cirGate.o 以及 cirMgr.o 的 symbolic links 会被 delete 掉!!
3. 你的 cirGate.h 以及 cirMgr.h 一定要写在我提供的版本上面。
也就是说上面有的 functions 不要随便把他们去掉。
[如果要使用自己的 cirGate.cpp 以及 cirMgr.cpp]
1. 把 "src/cir/Makefile" 中 "
#EXTRAOBJS =..." 那行 comment out 掉。
(i.e. 开头加上 "#")
2. make clean; make 32 or 64 ==> 顺序无所谓。
3. 你可以任意的修改 cirGate.{h,cpp}, cirMgr.{h,cpp},
不过在其他 cir*.cpp 档案里头会用到的 member functions 像是:
void CirMgr::printFECPairs() const; // used in cirCmd.cpp
void CirMgr::Sweep(); void CirMgr::Optimize(); // used in cirOpt.cpp
// and cirCmd.cpp
void CirMgr::randomSim(); // used in cirSim.cpp and cirCmd.cpp
一定要包含在你的 cirGate.h 或是 cirMgr.h 里头,
否则一定会 compile error.
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.36.54.16
1F:推 michael0728n:推推! 可以有这样的选择弹性真是太棒了~ 12/25 19:24
2F:→ ric2k1:泪推... 为了这个乔 code 乔好久... 12/25 19:35
3F:推 kkrrkk100:推推!!!谢谢老师!! 12/25 22:43
4F:推 takua624:谢谢教授详细说明~! 12/25 23:16
5F:推 alextan:谢谢教授 推弹性 12/26 15:00