1、SC_CTOR可以在类的声明中使用,代替构造函数。
2、sc_main两个参数第一个参数表示输入参数个数,第二个参数是一个数组指针。
3、SC_METHOD(func);表示组合逻辑方法,通过sensitive中的信号触发。SC_THREAD和SC_CTHREAD是定义的线程方法。
4、sc_in<类型>、sc_out<类型>和sc_inout<类型>都是端口。可以调用sc_in自己的read()函数读取sc_in端口中的数据,sc_in(a)将a写入sc_in。sc_out自己的write()实现数据在sc_out端口写数据。read和write隐含隐式类型转化。
5、sc_signal是信号,端口需要通过信号传递数据。信号是数据的载体,传输方向取决于连接部分的端口状态。
sc_signal<int> sign = 2;
sc_in<int> in;
in(sign); //将2传入in端口中
6、模块的声明:SC_MOUDLE(dcu)和class/struct dcu::public sc_moudle{}作用一样。SC_MOUDLE中的变量都是私有的,class/struct dcu::public sc_moudle{}中的变量都是公有的。
7、sc_int和sc_uint的位宽不固定。sc_int/uint<35>表示35bit数据类型。
8、sc_in_clk表示时钟输入信号,是外部引入的时钟信号。可以通过sc_signal产生时钟输出信号。
9、new sc_module实例时可以传入一个字符串参数,作为sc_module的名称。如果不传入,sc_module会为实例自动生成一个名称。