main.cpp

来自「systemc源码」· C++ 代码 · 共 58 行

CPP
58
字号
/************************************************************************
 * file name:		main.cpp 
 * description:  
 *
 * modification history
 * --------------------
 * 2003-7-7 19:39:49, created by zhuwei
 */

/* includes----------------------------------------------------------- */
#include "sync_fifo.h"
#include "producer.h"
#include "consumer.h"
#include "config.h"

/* defines------------------------------------------------------------ */
/* typedefs----------------------------------------------------------- */
/* externs------------------------------------------------------------ */
/* globals------------------------------------------------------------ */
/* forward declarations----------------------------------------------- */

int sc_main(int argc, char *argv[])
{
	sc_signal<int>	dout, din;
	sc_signal<bool>	wen, ren, full, empty, reset;
	sc_clock		clk("clk", CLK_CYCLE, SC_NS);

	reset = 1;
	dout = -1;
	din = -1;

	sync_fifo<int>	fifo("fifo");
	fifo(reset, clk, wen, ren, din, dout, full, empty);

	producer	p1("p1");
	p1(clk, reset, wen, full, din);

	consumer	c1("c1");
	c1(clk, reset, empty, dout, ren);

	sc_trace_file *tf = sc_create_vcd_trace_file("sync_fifo");
	sc_trace(tf, clk, "clk");
	sc_trace(tf, reset, "reset");
	sc_trace(tf, wen, "wen");
	sc_trace(tf, ren, "ren");
	sc_trace(tf, full, "full");
	sc_trace(tf, empty, "empty");
	sc_trace(tf, din, "din");
	sc_trace(tf, dout, "dout");
	sc_trace(tf, fifo.count, "fifo.count");

	sc_start(CLK_CYCLE * 500, SC_NS);

	sc_close_vcd_trace_file(tf);

	cout << "end of simulation" << endl;
	return 0;
}

⌨️ 快捷键说明

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