Line 161... |
Line 161... |
wire ch0_hit_s, ch1_hit_s, ch2_hit_s, ch3_hit_s;
|
wire ch0_hit_s, ch1_hit_s, ch2_hit_s, ch3_hit_s;
|
wire ch4_hit_s, ch5_hit_s, ch6_hit_s, ch7_hit_s;
|
wire ch4_hit_s, ch5_hit_s, ch6_hit_s, ch7_hit_s;
|
wire ch0_hit_ne, ch5_hit_ne;
|
wire ch0_hit_ne, ch5_hit_ne;
|
|
|
always_ff @(posedge mem_ui_clk)
|
always_ff @(posedge mem_ui_clk)
|
|
if (app_rd_data_valid)
|
rd_data_r <= app_rd_data;
|
rd_data_r <= app_rd_data;
|
always_ff @(posedge mem_ui_clk)
|
always_ff @(posedge mem_ui_clk)
|
rd_data_valid_r <= app_rd_data_valid;
|
rd_data_valid_r <= app_rd_data_valid;
|
|
|
reg [19:0] rst_ctr;
|
reg [19:0] rst_ctr;
|
Line 396... |
Line 397... |
always_comb
|
always_comb
|
begin
|
begin
|
ld.bte <= wishbone_pkg::LINEAR;
|
ld.bte <= wishbone_pkg::LINEAR;
|
ld.cti <= wishbone_pkg::CLASSIC;
|
ld.cti <= wishbone_pkg::CLASSIC;
|
ld.blen <= 'd0;
|
ld.blen <= 'd0;
|
ld.cyc <= fifoo.stb && !fifoo.we && rd_data_valid_r && (uch!=4'd0 && uch!=4'd5 && uch!=4'd15);
|
ld.cyc <= fifoo.cyc && !fifoo.we && rd_data_valid_r && (uch!=4'd0 && uch!=4'd5 && uch!=4'd15);
|
ld.stb <= fifoo.stb && !fifoo.we && rd_data_valid_r && (uch!=4'd0 && uch!=4'd5 && uch!=4'd15);
|
ld.stb <= fifoo.stb && !fifoo.we && rd_data_valid_r && (uch!=4'd0 && uch!=4'd5 && uch!=4'd15);
|
ld.we <= 1'b0;
|
ld.we <= 1'b0;
|
ld.adr <= {app_waddr[31:4],4'h0};
|
ld.adr <= {app_waddr[31:4],4'h0};
|
ld.dat <= {app_waddr[31:14],8'h00,rd_data_r}; // modified=false,tag = high order address bits
|
ld.dat <= rd_data_r;
|
ld.sel <= {36{1'b1}}; // update all bytes
|
ld.sel <= {16{1'b1}}; // update all bytes
|
end
|
end
|
|
|
reg ch0wack;
|
reg ch0wack;
|
reg ch1wack;
|
reg ch1wack;
|
reg ch2wack;
|
reg ch2wack;
|
Line 695... |
Line 696... |
.strip_cnt(resp_strip_cnt),
|
.strip_cnt(resp_strip_cnt),
|
.addr_base(adr),
|
.addr_base(adr),
|
.addr(app_waddr)
|
.addr(app_waddr)
|
);
|
);
|
|
|
mpmc10_set_write_mask_wb uswm1
|
|
(
|
|
.clk(mem_ui_clk),
|
|
.state(state),
|
|
.we(fifoo.we),
|
|
.sel(req_fifoo.sel[15:0]),
|
|
.adr(adr|{req_strip_cnt[0],4'h0}),
|
|
.mask(wmask)
|
|
);
|
|
|
|
mpmc10_mask_select unsks1
|
mpmc10_mask_select unsks1
|
(
|
(
|
.rst(mem_ui_rst),
|
.rst(mem_ui_rst),
|
.clk(mem_ui_clk),
|
.clk(mem_ui_clk),
|
.state(state),
|
.state(state),
|
.wmask(wmask),
|
.we(fifoo.we),
|
|
.wmask(req_fifoo.sel[15:0]),
|
.mask(app_wdf_mask),
|
.mask(app_wdf_mask),
|
.mask2(mem_wdf_mask2)
|
.mask2(mem_wdf_mask2)
|
);
|
);
|
|
|
mpmc10_data_select #(.WID(128)) uds1
|
mpmc10_data_select #(.WID(128)) uds1
|