diff options
Diffstat (limited to 'hdl/mips_system.v')
-rw-r--r-- | hdl/mips_system.v | 94 |
1 files changed, 48 insertions, 46 deletions
diff --git a/hdl/mips_system.v b/hdl/mips_system.v index fa01da1..b829c24 100644 --- a/hdl/mips_system.v +++ b/hdl/mips_system.v @@ -2,54 +2,56 @@ MIPS System: CPU Core + Memory */ -module mips_system - ( - input wire clk, - input wire rst, +module mips_system ( input wire clk, + input wire rst, + + output mem_instr_read, + output [31:0] mem_instr_addr_bus, mem_instr_read_bus, + + output mem_data_write, mem_data_read, + output [31:0] mem_data_addr_bus, mem_data_read_bus, mem_data_write_bus ); - output ext_write_en, - output ext_read_en, - output [31:0] ext_addr, - output [31:0] ext_write_data, - input [31:0] ext_data_in - ) ; - - wire i_read_en; - wire [31:0] i_addr; - wire [31:0] i_instr; - wire d_read_en; - wire d_write_en; - wire [31:0] d_addr; - wire [31:0] d_write_data; - wire [31:0] d_read_data; - - pipeline pipeline_inst - ( - .clk(clk), - .rst(rst), - .i_read_en(i_read_en), - .i_addr(i_addr), - .i_instr_in(i_instr), - .d_read_en(d_read_en), - .d_write_en(d_write_en), - .d_addr(d_addr), - .d_write_data(d_write_data), - .d_data_in(d_read_data) - ); + wire i_read_en; + wire [31:0] i_addr; + wire [31:0] i_instr; + wire d_read_en; + wire d_write_en; + wire [31:0] d_addr; + wire [31:0] d_write_data; + wire [31:0] d_read_data; + + assign mem_instr_read = i_read_en; + assign mem_instr_addr_bus = i_addr; + assign mem_instr_read_bus = i_instr; + + assign mem_data_write = d_write_en; + assign mem_data_read = d_read_en; + + assign mem_data_addr_bus = d_addr; + assign mem_data_read_bus = d_read_data; + assign mem_data_write_bus = d_write_data; + pipeline pipeline_inst ( + .clk(clk), + .rst(rst), + .i_read_en(i_read_en), + .i_addr(i_addr), + .i_instr_in(i_instr), + .d_read_en(d_read_en), + .d_write_en(d_write_en), + .d_addr(d_addr), + .d_write_data(d_write_data), + .d_data_in(d_read_data)); - dp_memory memory_inst - ( - .clk(clk), - .i_read_en(i_read_en), - .i_addr(i_addr), - .i_instr_out(i_instr), - .d_read_en(d_read_en), - .d_write_en(d_write_en), - .d_addr(d_addr), - .d_write_data(d_write_data), - .d_data_out(d_read_data) - ); - + dp_memory memory_inst ( + .clk(clk), + .i_read_en(i_read_en), + .i_addr(i_addr), + .i_instr_out(i_instr), + .d_read_en(d_read_en), + .d_write_en(d_write_en), + .d_addr(d_addr), + .d_write_data(d_write_data), + .d_data_out(d_read_data)); endmodule // mips_system |