mirror of
https://github.com/vortexgpgpu/vortex.git
synced 2025-04-24 05:47:35 -04:00
code refactoring
This commit is contained in:
parent
4626389ee2
commit
a7eb9a0c38
4 changed files with 84 additions and 104 deletions
|
@ -127,7 +127,7 @@
|
|||
|
||||
`define NUMBER_CORES (`NUMBER_CORES_PER_CLUSTER*`NUMBER_CLUSTERS)
|
||||
|
||||
//`define SINGLE_CORE_BENCH
|
||||
`define SINGLE_CORE_BENCH
|
||||
|
||||
`define GLOBAL_BLOCK_SIZE_BYTES 16
|
||||
|
||||
|
|
|
@ -12,7 +12,6 @@
|
|||
// L2 Cache size
|
||||
`define LLCACHE_SIZE_BYTES 8192
|
||||
|
||||
|
||||
// `define QUEUE_FORCE_MLAB 1
|
||||
|
||||
// Use l3 cache (required for cluster behavior)
|
||||
|
|
170
rtl/Vortex.v
170
rtl/Vortex.v
|
@ -2,110 +2,92 @@
|
|||
`include "VX_cache_config.v"
|
||||
|
||||
module Vortex
|
||||
#(
|
||||
#(
|
||||
parameter CORE_ID = 0
|
||||
)
|
||||
(
|
||||
`ifdef SINGLE_CORE_BENCH
|
||||
input wire clk,
|
||||
input wire reset,
|
||||
// IO
|
||||
output wire io_valid,
|
||||
output wire[31:0] io_data,
|
||||
) (
|
||||
`ifdef SINGLE_CORE_BENCH
|
||||
|
||||
// DRAM Dcache Req
|
||||
output wire dram_req,
|
||||
output wire dram_req_write,
|
||||
output wire dram_req_read,
|
||||
output wire [31:0] dram_req_addr,
|
||||
output wire [31:0] dram_req_size,
|
||||
output wire [31:0] dram_req_data[`DBANK_LINE_SIZE_RNG],
|
||||
output wire [31:0] dram_expected_lat,
|
||||
// Clock
|
||||
input wire clk,
|
||||
input wire reset,
|
||||
|
||||
// DRAM Dcache Res
|
||||
output wire dram_fill_accept,
|
||||
input wire dram_fill_rsp,
|
||||
input wire [31:0] dram_fill_rsp_addr,
|
||||
input wire [31:0] dram_fill_rsp_data[`DBANK_LINE_SIZE_RNG],
|
||||
// IO
|
||||
output wire io_valid,
|
||||
output wire[31:0] io_data,
|
||||
|
||||
// DRAM Dcache Req
|
||||
output wire dram_req,
|
||||
output wire dram_req_write,
|
||||
output wire dram_req_read,
|
||||
output wire [31:0] dram_req_addr,
|
||||
output wire [31:0] dram_req_size,
|
||||
output wire [31:0] dram_req_data[`DBANK_LINE_SIZE_RNG],
|
||||
output wire [31:0] dram_expected_lat,
|
||||
|
||||
// DRAM Dcache Res
|
||||
output wire dram_fill_accept,
|
||||
input wire dram_fill_rsp,
|
||||
input wire [31:0] dram_fill_rsp_addr,
|
||||
input wire [31:0] dram_fill_rsp_data[`DBANK_LINE_SIZE_RNG],
|
||||
|
||||
// LLC Snooping
|
||||
input wire snp_req,
|
||||
input wire [31:0] snp_req_addr,
|
||||
output wire snp_req_delay,
|
||||
|
||||
output wire out_ebreak
|
||||
|
||||
`else
|
||||
|
||||
input wire clk,
|
||||
input wire reset,
|
||||
// IO
|
||||
output wire io_valid,
|
||||
output wire[31:0] io_data,
|
||||
|
||||
// DRAM Dcache Req
|
||||
output wire dram_req,
|
||||
output wire dram_req_write,
|
||||
output wire dram_req_read,
|
||||
output wire [31:0] dram_req_addr,
|
||||
output wire [31:0] dram_req_size,
|
||||
output wire [`DBANK_LINE_SIZE_RNG][31:0] dram_req_data,
|
||||
output wire [31:0] dram_expected_lat,
|
||||
|
||||
// DRAM Dcache Res
|
||||
output wire dram_fill_accept,
|
||||
input wire dram_fill_rsp,
|
||||
input wire [31:0] dram_fill_rsp_addr,
|
||||
input wire [`DBANK_LINE_SIZE_RNG][31:0] dram_fill_rsp_data,
|
||||
|
||||
|
||||
// DRAM Icache Req
|
||||
output wire I_dram_req,
|
||||
output wire I_dram_req_write,
|
||||
output wire I_dram_req_read,
|
||||
output wire [31:0] I_dram_req_addr,
|
||||
output wire [31:0] I_dram_req_size,
|
||||
output wire [31:0] I_dram_req_data[`IBANK_LINE_SIZE_RNG],
|
||||
output wire [31:0] I_dram_expected_lat,
|
||||
// DRAM Icache Req
|
||||
output wire I_dram_req,
|
||||
output wire I_dram_req_write,
|
||||
output wire I_dram_req_read,
|
||||
output wire [31:0] I_dram_req_addr,
|
||||
output wire [31:0] I_dram_req_size,
|
||||
output wire [`IBANK_LINE_SIZE_RNG][31:0] I_dram_req_data,
|
||||
output wire [31:0] I_dram_expected_lat,
|
||||
|
||||
// DRAM Icache Res
|
||||
output wire I_dram_fill_accept,
|
||||
input wire I_dram_fill_rsp,
|
||||
input wire [31:0] I_dram_fill_rsp_addr,
|
||||
input wire [31:0] I_dram_fill_rsp_data[`IBANK_LINE_SIZE_RNG],
|
||||
|
||||
input wire snp_req,
|
||||
input wire [31:0] snp_req_addr,
|
||||
output wire snp_req_delay,
|
||||
|
||||
input wire I_snp_req,
|
||||
input wire [31:0] I_snp_req_addr,
|
||||
output wire I_snp_req_delay,
|
||||
|
||||
output wire out_ebreak
|
||||
|
||||
`else
|
||||
|
||||
input wire clk,
|
||||
input wire reset,
|
||||
// IO
|
||||
output wire io_valid,
|
||||
output wire[31:0] io_data,
|
||||
|
||||
// DRAM Dcache Req
|
||||
output wire dram_req,
|
||||
output wire dram_req_write,
|
||||
output wire dram_req_read,
|
||||
output wire [31:0] dram_req_addr,
|
||||
output wire [31:0] dram_req_size,
|
||||
output wire [`DBANK_LINE_SIZE_RNG][31:0] dram_req_data,
|
||||
output wire [31:0] dram_expected_lat,
|
||||
|
||||
// DRAM Dcache Res
|
||||
output wire dram_fill_accept,
|
||||
input wire dram_fill_rsp,
|
||||
input wire [31:0] dram_fill_rsp_addr,
|
||||
input wire [`DBANK_LINE_SIZE_RNG][31:0] dram_fill_rsp_data,
|
||||
// DRAM Icache Res
|
||||
output wire I_dram_fill_accept,
|
||||
input wire I_dram_fill_rsp,
|
||||
input wire [31:0] I_dram_fill_rsp_addr,
|
||||
input wire [`IBANK_LINE_SIZE_RNG][31:0] I_dram_fill_rsp_data,
|
||||
|
||||
|
||||
// DRAM Icache Req
|
||||
output wire I_dram_req,
|
||||
output wire I_dram_req_write,
|
||||
output wire I_dram_req_read,
|
||||
output wire [31:0] I_dram_req_addr,
|
||||
output wire [31:0] I_dram_req_size,
|
||||
output wire [`IBANK_LINE_SIZE_RNG][31:0] I_dram_req_data,
|
||||
output wire [31:0] I_dram_expected_lat,
|
||||
input wire snp_req,
|
||||
input wire [31:0] snp_req_addr,
|
||||
output wire snp_req_delay,
|
||||
|
||||
// DRAM Icache Res
|
||||
output wire I_dram_fill_accept,
|
||||
input wire I_dram_fill_rsp,
|
||||
input wire [31:0] I_dram_fill_rsp_addr,
|
||||
input wire [`IBANK_LINE_SIZE_RNG][31:0] I_dram_fill_rsp_data,
|
||||
input wire I_snp_req,
|
||||
input wire [31:0] I_snp_req_addr,
|
||||
output wire I_snp_req_delay,
|
||||
|
||||
|
||||
input wire snp_req,
|
||||
input wire [31:0] snp_req_addr,
|
||||
output wire snp_req_delay,
|
||||
|
||||
input wire I_snp_req,
|
||||
input wire [31:0] I_snp_req_addr,
|
||||
output wire I_snp_req_delay,
|
||||
|
||||
|
||||
output wire out_ebreak
|
||||
`endif
|
||||
);
|
||||
output wire out_ebreak
|
||||
`endif
|
||||
);
|
||||
|
||||
wire scheduler_empty;
|
||||
wire out_ebreak_unqual;
|
||||
|
|
|
@ -3,9 +3,9 @@
|
|||
|
||||
module Vortex_SOC (
|
||||
|
||||
// System Clock
|
||||
input wire clk,
|
||||
input wire reset,
|
||||
// Clock
|
||||
input wire clk,
|
||||
input wire reset,
|
||||
|
||||
// IO
|
||||
output wire io_valid[`NUMBER_CORES-1:0],
|
||||
|
@ -13,7 +13,7 @@ module Vortex_SOC (
|
|||
|
||||
output wire[31:0] number_cores,
|
||||
|
||||
// DRAM Dcache Req
|
||||
// DRAM Req
|
||||
output wire out_dram_req,
|
||||
output wire out_dram_req_write,
|
||||
output wire out_dram_req_read,
|
||||
|
@ -22,12 +22,13 @@ module Vortex_SOC (
|
|||
output wire [31:0] out_dram_req_data[`DBANK_LINE_SIZE_RNG],
|
||||
output wire [31:0] out_dram_expected_lat,
|
||||
|
||||
// DRAM Dcache Res
|
||||
// DRAM Res
|
||||
output wire out_dram_fill_accept,
|
||||
input wire out_dram_fill_rsp,
|
||||
input wire [31:0] out_dram_fill_rsp_addr,
|
||||
input wire [31:0] out_dram_fill_rsp_data[`DBANK_LINE_SIZE_RNG],
|
||||
|
||||
// LLC Snooping
|
||||
input wire llc_snp_req,
|
||||
input wire llc_snp_req_addr,
|
||||
output wire llc_snp_req_delay,
|
||||
|
@ -529,7 +530,7 @@ module Vortex_SOC (
|
|||
|
||||
assign io_valid[curr_core] = per_core_io_valid[curr_core];
|
||||
assign io_data [curr_core] = per_core_io_data [curr_core];
|
||||
|
||||
|
||||
Vortex #(.CORE_ID(curr_core)) vortex_core(
|
||||
.clk (clk),
|
||||
.reset (reset),
|
||||
|
@ -605,8 +606,6 @@ module Vortex_SOC (
|
|||
// end
|
||||
// endgenerate
|
||||
|
||||
|
||||
|
||||
//
|
||||
genvar l2c_curr_core;
|
||||
generate
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue