⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.cpp

📁 systemc源码
💻 CPP
字号:
/************************************************************************
 * file name:		main.cpp 
 * description:		使用类摸板,使你的信号可以方便地更改为各种数据类型。		  
 *
 * modification history
 * --------------------
 * 2003-8-6, created by zhuwei
 */

/* includes----------------------------------------------------------- */
#include "systemc.h"

/* defines------------------------------------------------------------ */
/* typedefs----------------------------------------------------------- */
template <int L> class DFF: public sc_module
{
public:
	sc_in<bool>			clk;
	sc_in<sc_bv<L> >	din; 
	sc_out<sc_bv<L> >	dout; 
	
	void run()
	{
		dout = din;
		cout << dout.read().to_uint() << endl;
	}

	// Constructor
	SC_CTOR(DFF) 
	{
		SC_METHOD(run);
		sensitive_pos << clk;
	}
};

struct output: sc_module
{
	sc_in<bool>			clk;
	sc_out<sc_bv<3> >	dout; 
	
	sc_bv<3>	bv;

	void run()
	{
		dout = bv;
	}

	// Constructor
	SC_CTOR(output): bv(7) 
	{
		SC_METHOD(run);
		sensitive_pos << clk;
	}
};

/* externs------------------------------------------------------------ */
/* globals------------------------------------------------------------ */
/* forward declarations----------------------------------------------- */

int sc_main(int argc, char *argv[])
{
	sc_clock	clk("clk", 10, SC_NS);
	sc_signal<sc_bv<3> >	din; //如果你的din,dout是整型的,申明为“sc_signal<int>	din”即可。
	sc_signal<sc_bv<3> >	dout;

	output op1("op1");
	op1(clk, din);

	DFF<3> dff1("dff1");
	dff1(clk, din, dout);

	sc_start(100, SC_NS);
	
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -