quartus projects

This commit is contained in:
Blaise Tine
2020-04-21 12:28:37 -07:00
parent 5798cf6e15
commit f53256f854
29 changed files with 75504 additions and 119 deletions

View File

@@ -309,11 +309,11 @@ module VX_bank #(
`DEBUG_END
wire [31:0] addr_st1 [STAGE_1_CYCLES-1:0];
integer p_stage;
integer i;
always @(*) begin
is_fill_in_pipe = 0;
for (p_stage = 0; p_stage < STAGE_1_CYCLES; p_stage=p_stage+1) begin
if (is_fill_st1[p_stage]) begin
for (i = 0; i < STAGE_1_CYCLES; i=i+1) begin
if (is_fill_st1[i]) begin
is_fill_in_pipe = 1;
end
end

View File

@@ -50,15 +50,15 @@ module VX_cache_core_req_bank_sel #(
);
generate
integer curr_req;
integer i;
always @(*) begin
per_bank_valids = 0;
for (curr_req = 0; curr_req < NUM_REQUESTS; curr_req = curr_req + 1) begin
for (i = 0; i < NUM_REQUESTS; i = i + 1) begin
if (NUM_BANKS == 1) begin
// If there is only one bank, then only map requests to that bank
per_bank_valids[0][curr_req] = core_req_valid[curr_req];
per_bank_valids[0][i] = core_req_valid[i];
end else begin
per_bank_valids[core_req_addr[curr_req][`BANK_SELECT_ADDR_RNG]][curr_req] = core_req_valid[curr_req];
per_bank_valids[core_req_addr[i][`BANK_SELECT_ADDR_RNG]][i] = core_req_valid[i];
end
end
end

View File

@@ -91,43 +91,43 @@ module VX_cache_wb_sel_merge #(
assign core_rsp_write = per_bank_wb_wb[main_bank_index];
assign core_rsp_warp_num = per_bank_wb_warp_num[main_bank_index];
integer this_bank;
integer i;
generate
always @(*) begin
core_rsp_valid = 0;
core_rsp_data = 0;
core_rsp_pc = 0;
core_rsp_valid = 0;
core_rsp_data = 0;
core_rsp_pc = 0;
core_rsp_addr = 0;
for (this_bank = 0; this_bank < NUM_BANKS; this_bank = this_bank + 1) begin
for (i = 0; i < NUM_BANKS; i = i + 1) begin
if ((FUNC_ID == `L2FUNC_ID) || (FUNC_ID == `L3FUNC_ID)) begin
if (found_bank
&& !core_rsp_valid[per_bank_wb_tid[this_bank]]
&& per_bank_wb_valid[this_bank]
&& ((main_bank_index == `LOG2UP(NUM_BANKS)'(this_bank))
|| (per_bank_wb_tid[this_bank] != per_bank_wb_tid[main_bank_index]))) begin
core_rsp_valid[per_bank_wb_tid[this_bank]] = 1;
core_rsp_data[per_bank_wb_tid[this_bank]] = per_bank_wb_data[this_bank];
core_rsp_pc[per_bank_wb_tid[this_bank]] = per_bank_wb_pc[this_bank];
core_rsp_addr[per_bank_wb_tid[this_bank]] = per_bank_wb_addr[this_bank];
per_bank_wb_pop_unqual[this_bank] = 1;
&& !core_rsp_valid[per_bank_wb_tid[i]]
&& per_bank_wb_valid[i]
&& ((main_bank_index == `LOG2UP(NUM_BANKS)'(i))
|| (per_bank_wb_tid[i] != per_bank_wb_tid[main_bank_index]))) begin
core_rsp_valid[per_bank_wb_tid[i]] = 1;
core_rsp_data[per_bank_wb_tid[i]] = per_bank_wb_data[i];
core_rsp_pc[per_bank_wb_tid[i]] = per_bank_wb_pc[i];
core_rsp_addr[per_bank_wb_tid[i]] = per_bank_wb_addr[i];
per_bank_wb_pop_unqual[i] = 1;
end else begin
per_bank_wb_pop_unqual[this_bank] = 0;
per_bank_wb_pop_unqual[i] = 0;
end
end else begin
if (((main_bank_index == `LOG2UP(NUM_BANKS)'(this_bank))
|| (per_bank_wb_tid[this_bank] != per_bank_wb_tid[main_bank_index]))
if (((main_bank_index == `LOG2UP(NUM_BANKS)'(i))
|| (per_bank_wb_tid[i] != per_bank_wb_tid[main_bank_index]))
&& found_bank
&& !core_rsp_valid[per_bank_wb_tid[this_bank]]
&& (per_bank_wb_valid[this_bank])
&& (per_bank_wb_rd[this_bank] == per_bank_wb_rd[main_bank_index])
&& (per_bank_wb_warp_num[this_bank] == per_bank_wb_warp_num[main_bank_index])) begin
core_rsp_valid[per_bank_wb_tid[this_bank]] = 1;
core_rsp_data[per_bank_wb_tid[this_bank]] = per_bank_wb_data[this_bank];
core_rsp_pc[per_bank_wb_tid[this_bank]] = per_bank_wb_pc[this_bank];
core_rsp_addr[per_bank_wb_tid[this_bank]] = per_bank_wb_addr[this_bank];
per_bank_wb_pop_unqual[this_bank] = 1;
&& !core_rsp_valid[per_bank_wb_tid[i]]
&& (per_bank_wb_valid[i])
&& (per_bank_wb_rd[i] == per_bank_wb_rd[main_bank_index])
&& (per_bank_wb_warp_num[i] == per_bank_wb_warp_num[main_bank_index])) begin
core_rsp_valid[per_bank_wb_tid[i]] = 1;
core_rsp_data[per_bank_wb_tid[i]] = per_bank_wb_data[i];
core_rsp_pc[per_bank_wb_tid[i]] = per_bank_wb_pc[i];
core_rsp_addr[per_bank_wb_tid[i]] = per_bank_wb_addr[i];
per_bank_wb_pop_unqual[i] = 1;
end else begin
per_bank_wb_pop_unqual[this_bank] = 0;
per_bank_wb_pop_unqual[i] = 0;
end
end
end