典型的SystemC Module 写法:
SC_MODULE(module_test) {
public:
SC_CTOR(module_test) {}
};
但是如果Constructor要传入不同变量的时后必须换另一种写法
class module_test: public sc_module {
public:
module_test(sc_module_name nm, ....): sc_module(nm) {....}
};
但是在这这种情况下, 如果module里面要宣告Process
例如SC_METHOD, SC_THREAD,SC_CTHREAD 就会问题,因为Process 会用到 SC_CTOR这个macro所定义到的一些东西,所以要用下面这种写法
class module_test: public sc_module {
public:
SC_HAS_PROCESS(module_test)
module_test(sc_module_name nm, ....): sc_module(nm)
{
SC_CTHREAD(....);
}
};
阅读(2933) | 评论(0) | 转发(0) |