我正在编写一个应用程序来模拟使用SystemC库的硬件系统。
我的问题是处理sc_logic
类型。
考虑一个简单的模块
SC_MODULE(MyModule) {
sc_in_clk clk;
sc_out<sc_logic> outsig;
void main_process();
SC_CTOR(MyModule) {
SC_METHOD(main_process);
sensitive << clk;
}
};
考虑过程的实施:
void MyModule::main_process() {
this->outsig.write(SC_LOGIC_1);
}
好 啊。
问题:
outsig
总是'0'
且从不更改其值。我在我的模拟中写了很多信号,但是这个问题只在
sc_logic
端口中的sc_out
值出现。有人能帮我吗?
最佳答案
在构造函数中将sensitive << clk
置于SC_METHOD
之前。