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

📄 ex_mem.h

📁 SystemC 实现 MIPS 处理器 源代码
💻 H
字号:
#ifndef EX_MEM_H
#define EX_MEM_H

#include "STDAFX.h"

SC_MODULE(EX_MEM)
{
	sc_in_clk clk;

	sc_in<sc_uint<32> > EX_MEM_instr_in;
	sc_in<sc_uint<32> > EX_MEM_ALU_result_in;
	sc_in<sc_uint<32> > EX_MEM_regdata2_in;

	sc_out<sc_uint<32> > EX_MEM_instr_out;
	sc_out<sc_uint<32> > EX_MEM_ALU_result_out;
	sc_out<bool> EX_MEM_MemRead,EX_MEM_MemWrite;
	sc_out<sc_uint<32> > EX_MEM_regdata2_out;

	void entry()
	{
		EX_MEM_instr_out.write(EX_MEM_instr_in.read());
		EX_MEM_regdata2_out.write(EX_MEM_regdata2_in.read());
		EX_MEM_ALU_result_out.write(EX_MEM_ALU_result_in.read());

		bool memread,memwrite;
		memread=false;
		memwrite=false;

		unsigned op=EX_MEM_instr_in.read().range(31,26).to_uint();
		switch (op)
		{
		case 35:
			memread=true;
			break;
		case 43:
			memwrite=true;
			break;
		}
		EX_MEM_MemRead.write(memread);
		EX_MEM_MemWrite.write(memwrite);


		fout<<"Current Time: ";
		fout<<sc_simulation_time()<<endl;
		fout<<"EX_MEM:"<<endl;
		fout<<"Instr: ";PrintInstr(EX_MEM_instr_in.read(),fout);
		fout<<"-----------------------"<<endl;
	}

	SC_CTOR(EX_MEM)
	{
		SC_METHOD(entry);
		sensitive_pos<<clk;
		dont_initialize();
	}
};


#endif

⌨️ 快捷键说明

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