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

📄 _network2x2.h

📁 改进的基于6个mips核的NOC网络
💻 H
字号:
#include <systemc.h>#include "router.h"SC_MODULE(NETWORK2x2){	sc_in<bool> clk, rst;	sc_in< sc_bv<FLIT_LEN> > x0y0din;	sc_out< sc_bv<FLIT_LEN> > x0y0dout;	sc_in< bool > x0y0req_net;	sc_out< bool > x0y0ack_net;	sc_in< bool > x0y0ack_dp;	sc_out< bool > x0y0req_dp;	sc_in< sc_bv<FLIT_LEN> > x0y1din;	sc_out< sc_bv<FLIT_LEN> > x0y1dout;	sc_in< bool > x0y1req_net;	sc_out< bool > x0y1ack_net;	sc_in< bool > x0y1ack_dp;	sc_out< bool > x0y1req_dp;	sc_in< sc_bv<FLIT_LEN> > x1y0din;	sc_out< sc_bv<FLIT_LEN> > x1y0dout;	sc_in< bool > x1y0req_net;	sc_out< bool > x1y0ack_net;	sc_in< bool > x1y0ack_dp;	sc_out< bool > x1y0req_dp;	sc_in< sc_bv<FLIT_LEN> > x1y1din;	sc_out< sc_bv<FLIT_LEN> > x1y1dout;	sc_in< bool > x1y1req_net;	sc_out< bool > x1y1ack_net;	sc_in< bool > x1y1ack_dp;	sc_out< bool > x1y1req_dp;	ECUBE_ROUTER *x0y0;	ECUBE_ROUTER *x0y1;	ECUBE_ROUTER *x1y0;	ECUBE_ROUTER *x1y1;	sc_signal< sc_bv<FLIT_LEN> > x0y0_x1y0_data;	sc_signal< bool > x0y0_x1y0_ch0req, x0y0_x1y0_ch0ack, x0y0_x1y0_ch1req, x0y0_x1y0_ch1ack;	sc_signal< sc_bv<FLIT_LEN> > x0y0_x0y1_data;	sc_signal< bool > x0y0_x0y1_ch0req, x0y0_x0y1_ch0ack, x0y0_x0y1_ch1req, x0y0_x0y1_ch1ack;	sc_signal< sc_bv<FLIT_LEN> > x0y1_x1y1_data;	sc_signal< bool > x0y1_x1y1_ch0req, x0y1_x1y1_ch0ack, x0y1_x1y1_ch1req, x0y1_x1y1_ch1ack;	sc_signal< sc_bv<FLIT_LEN> > x0y1_x0y0_data;	sc_signal< bool > x0y1_x0y0_ch0req, x0y1_x0y0_ch0ack, x0y1_x0y0_ch1req, x0y1_x0y0_ch1ack;	sc_signal< sc_bv<FLIT_LEN> > x1y0_x0y0_data;	sc_signal< bool > x1y0_x0y0_ch0req, x1y0_x0y0_ch0ack, x1y0_x0y0_ch1req, x1y0_x0y0_ch1ack;	sc_signal< sc_bv<FLIT_LEN> > x1y0_x1y1_data;	sc_signal< bool > x1y0_x1y1_ch0req, x1y0_x1y1_ch0ack, x1y0_x1y1_ch1req, x1y0_x1y1_ch1ack;	sc_signal< sc_bv<FLIT_LEN> > x1y1_x0y1_data;	sc_signal< bool > x1y1_x0y1_ch0req, x1y1_x0y1_ch0ack, x1y1_x0y1_ch1req, x1y1_x0y1_ch1ack;	sc_signal< sc_bv<FLIT_LEN> > x1y1_x1y0_data;	sc_signal< bool > x1y1_x1y0_ch0req, x1y1_x1y0_ch0ack, x1y1_x1y0_ch1req, x1y1_x1y0_ch1ack;	sc_signal< sc_uint<ADDRESS_LEN> > addr0;	sc_signal< sc_uint<ADDRESS_LEN> > addr1;	SC_CTOR(NETWORK2x2){		x0y0 = new ECUBE_ROUTER("x0y0");		x0y1 = new ECUBE_ROUTER("x0y1");		x1y0 = new ECUBE_ROUTER("x1y0");		x1y1 = new ECUBE_ROUTER("x1y1");		addr0 = 0;		addr1 = 1;		x0y0->clk(clk); x0y0->rst(rst);		x0y0->xaddr(addr0); x0y0->yaddr(addr0);		x0y0->din(x0y0din); x0y0->dout(x0y0dout);		x0y0->dreq_in(x0y0req_net); x0y0->dack_out(x0y0ack_net);		x0y0->dreq_out(x0y0req_dp); x0y0->dack_in(x0y0ack_dp);		x0y0->xin(x1y0_x0y0_data);		x0y0->x0req_in(x1y0_x0y0_ch0req); x0y0->x0ack_out(x1y0_x0y0_ch0ack);		x0y0->xout(x0y0_x1y0_data);		x0y0->x0req_out(x0y0_x1y0_ch0req); x0y0->x0ack_in(x0y0_x1y0_ch0ack);		x0y0->yin(x0y1_x0y0_data);		x0y0->y0req_in(x0y1_x0y0_ch0req); x0y0->y0ack_out(x0y1_x0y0_ch0ack);		x0y0->yout(x0y0_x0y1_data);		x0y0->y0req_out(x0y0_x0y1_ch0req); x0y0->y0ack_in(x0y0_x0y1_ch0ack);		x0y0->x1req_in(x1y0_x0y0_ch1req); x0y0->x1ack_out(x1y0_x0y0_ch1ack);		x0y0->x1req_out(x0y0_x1y0_ch1req); x0y0->x1ack_in(x0y0_x1y0_ch1ack);		x0y0->y1req_in(x0y1_x0y0_ch1req); x0y0->y1ack_out(x0y1_x0y0_ch1ack);		x0y0->y1req_out(x0y0_x0y1_ch1req); x0y0->y1ack_in(x0y0_x0y1_ch1ack);		x0y1->clk(clk); x0y1->rst(rst);		x0y1->xaddr(addr0); x0y1->yaddr(addr1);		x0y1->din(x0y1din); x0y1->dout(x0y1dout);		x0y1->dreq_in(x0y1req_net); x0y1->dack_out(x0y1ack_net);		x0y1->dreq_out(x0y1req_dp); x0y1->dack_in(x0y1ack_dp);		x0y1->xin(x1y1_x0y1_data);		x0y1->x0req_in(x1y1_x0y1_ch0req); x0y1->x0ack_out(x1y1_x0y1_ch0ack);		x0y1->xout(x0y1_x1y1_data);		x0y1->x0req_out(x0y1_x1y1_ch0req); x0y1->x0ack_in(x0y1_x1y1_ch0ack);		x0y1->yin(x0y0_x0y1_data);		x0y1->y0req_in(x0y0_x0y1_ch0req); x0y1->y0ack_out(x0y0_x0y1_ch0ack);		x0y1->yout(x0y1_x0y0_data);		x0y1->y0req_out(x0y1_x0y0_ch0req); x0y1->y0ack_in(x0y1_x0y0_ch0ack);		x0y1->x1req_in(x1y1_x0y1_ch1req); x0y1->x1ack_out(x1y1_x0y1_ch1ack);		x0y1->x1req_out(x0y1_x1y1_ch1req); x0y1->x1ack_in(x0y1_x1y1_ch1ack);		x0y1->y1req_in(x0y0_x0y1_ch1req); x0y1->y1ack_out(x0y0_x0y1_ch1ack);		x0y1->y1req_out(x0y1_x0y0_ch1req); x0y1->y1ack_in(x0y1_x0y0_ch1ack);		x1y0->clk(clk); x1y0->rst(rst);		x1y0->xaddr(addr1); x1y0->yaddr(addr0);		x1y0->din(x1y0din); x1y0->dout(x1y0dout);		x1y0->dreq_in(x1y0req_net); x1y0->dack_out(x1y0ack_net);		x1y0->dreq_out(x1y0req_dp); x1y0->dack_in(x1y0ack_dp);		x1y0->xin(x0y0_x1y0_data);		x1y0->x0req_in(x0y0_x1y0_ch0req); x1y0->x0ack_out(x0y0_x1y0_ch0ack);		x1y0->xout(x1y0_x0y0_data);		x1y0->x0req_out(x1y0_x0y0_ch0req); x1y0->x0ack_in(x1y0_x0y0_ch0ack);		x1y0->yin(x1y1_x1y0_data);		x1y0->y0req_in(x1y1_x1y0_ch0req); x1y0->y0ack_out(x1y1_x1y0_ch0ack);		x1y0->yout(x1y0_x1y1_data);		x1y0->y0req_out(x1y0_x1y1_ch0req); x1y0->y0ack_in(x1y0_x1y1_ch0ack);		x1y0->x1req_in(x0y0_x1y0_ch1req); x1y0->x1ack_out(x0y0_x1y0_ch1ack);		x1y0->x1req_out(x1y0_x0y0_ch1req); x1y0->x1ack_in(x1y0_x0y0_ch1ack);		x1y0->y1req_in(x1y1_x1y0_ch1req); x1y0->y1ack_out(x1y1_x1y0_ch1ack);		x1y0->y1req_out(x1y0_x1y1_ch1req); x1y0->y1ack_in(x1y0_x1y1_ch1ack);		x1y1->clk(clk); x1y1->rst(rst);		x1y1->xaddr(addr1); x1y1->yaddr(addr1);		x1y1->din(x1y1din); x1y1->dout(x1y1dout);		x1y1->dreq_in(x1y1req_net); x1y1->dack_out(x1y1ack_net);		x1y1->dreq_out(x1y1req_dp); x1y1->dack_in(x1y1ack_dp);		x1y1->xin(x0y1_x1y1_data);		x1y1->x0req_in(x0y1_x1y1_ch0req); x1y1->x0ack_out(x0y1_x1y1_ch0ack);		x1y1->xout(x1y1_x0y1_data);		x1y1->x0req_out(x1y1_x0y1_ch0req); x1y1->x0ack_in(x1y1_x0y1_ch0ack);		x1y1->yin(x1y0_x1y1_data);		x1y1->y0req_in(x1y0_x1y1_ch0req); x1y1->y0ack_out(x1y0_x1y1_ch0ack);		x1y1->yout(x1y1_x1y0_data);		x1y1->y0req_out(x1y1_x1y0_ch0req); x1y1->y0ack_in(x1y1_x1y0_ch0ack);		x1y1->x1req_in(x0y1_x1y1_ch1req); x1y1->x1ack_out(x0y1_x1y1_ch1ack);		x1y1->x1req_out(x1y1_x0y1_ch1req); x1y1->x1ack_in(x1y1_x0y1_ch1ack);		x1y1->y1req_in(x1y0_x1y1_ch1req); x1y1->y1ack_out(x1y0_x1y1_ch1ack);		x1y1->y1req_out(x1y1_x1y0_ch1req); x1y1->y1ack_in(x1y1_x1y0_ch1ack);	}};

⌨️ 快捷键说明

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