码农老规矩,先写一个hello world并输出,语法什么的后面再说,先能编译运行再说。
test1.cpp中编写如下代码,逻辑很简单,就是在Main函数中创建一个Module,Module中实现一个function来输出一句话,其他语法以后再说:
#include <systemc.h>
SC_MODULE (hello_world) {
SC_CTOR (hello_world) {
SC_THREAD(say_hello);
}
void say_hello() {
cout << "Hello systemc world!" << endl;
}
};
int sc_main(int argc, char* argv[]) {
hello_world hello("HELLO");
sc_start();
return (0);
}
Makefile也很简单,如下, 其实就是使用build-unix目录下的Makefile规则,来编译test1目录下的cpp文件。
include ../../../build-unix/Makefile.config
PROJECT = test1
SRCS = $(wildcard *.cpp)
OBJS = $(SRCS:.cpp=.o)
include ../../../build-unix/Makefile.rules
不废话,直接上图
Hello world其实还是挺简单的,下面应该就是需要理解SystemC的运行机制了。