Line 94... |
Line 94... |
parameter APP_DW = 32; // Application Data Width
|
parameter APP_DW = 32; // Application Data Width
|
parameter APP_BW = 4; // Application Byte Width
|
parameter APP_BW = 4; // Application Byte Width
|
|
|
parameter SDR_DW = 16; // SDR Data Width
|
parameter SDR_DW = 16; // SDR Data Width
|
parameter SDR_BW = 2; // SDR Byte Width
|
parameter SDR_BW = 2; // SDR Byte Width
|
// 12 bit subtractor is not feasibile for FPGA, so changed to 8 bits
|
|
parameter REQ_BW = (`TARGET_DESIGN == `FPGA) ? 8 : 12; // Request Width
|
|
|
|
input clk, reset_n;
|
input clk, reset_n;
|
|
|
/* Req from bank_ctl */
|
/* Req from bank_ctl */
|
input r2b_req, r2b_start, r2b_last,
|
input r2b_req, r2b_start, r2b_last,
|
r2b_write, r2b_wrap;
|
r2b_write, r2b_wrap;
|
input [`SDR_REQ_ID_W-1:0] r2b_req_id;
|
input [`SDR_REQ_ID_W-1:0] r2b_req_id;
|
input [11:0] r2b_raddr;
|
input [11:0] r2b_raddr;
|
input [11:0] r2b_caddr;
|
input [11:0] r2b_caddr;
|
input [REQ_BW-1:0] r2b_len;
|
input [`REQ_BW-1:0] r2b_len;
|
output b2r_ack;
|
output b2r_ack;
|
input sdr_dma_last;
|
input sdr_dma_last;
|
|
|
/* Req to xfr_ctl */
|
/* Req to xfr_ctl */
|
output b2x_req, b2x_start, b2x_last,
|
output b2x_req, b2x_start, b2x_last,
|
tras_ok, b2x_wrap;
|
tras_ok, b2x_wrap;
|
output [`SDR_REQ_ID_W-1:0] b2x_id;
|
output [`SDR_REQ_ID_W-1:0] b2x_id;
|
output [11:0] b2x_addr;
|
output [11:0] b2x_addr;
|
output [REQ_BW-1:0] b2x_len;
|
output [`REQ_BW-1:0] b2x_len;
|
output [1:0] b2x_cmd;
|
output [1:0] b2x_cmd;
|
input x2b_ack;
|
input x2b_ack;
|
|
|
/* Status from xfr_ctl */
|
/* Status from xfr_ctl */
|
input x2b_refresh, x2b_act_ok, x2b_rdok,
|
input x2b_refresh, x2b_act_ok, x2b_rdok,
|
Line 142... |
Line 140... |
reg l_start, l_last;
|
reg l_start, l_last;
|
reg b2x_req, b2r_ack;
|
reg b2x_req, b2r_ack;
|
wire [`SDR_REQ_ID_W-1:0] b2x_id;
|
wire [`SDR_REQ_ID_W-1:0] b2x_id;
|
reg [`SDR_REQ_ID_W-1:0] l_id;
|
reg [`SDR_REQ_ID_W-1:0] l_id;
|
reg [11:0] b2x_addr;
|
reg [11:0] b2x_addr;
|
reg [REQ_BW-1:0] l_len;
|
reg [`REQ_BW-1:0] l_len;
|
wire [REQ_BW-1:0] b2x_len;
|
wire [`REQ_BW-1:0] b2x_len;
|
reg [1:0] b2x_cmd_t;
|
reg [1:0] b2x_cmd_t;
|
reg bank_valid;
|
reg bank_valid;
|
reg [11:0] bank_row;
|
reg [11:0] bank_row;
|
reg [3:0] tras_cntr, timer0;
|
reg [3:0] tras_cntr, timer0;
|
reg l_wrap, l_write;
|
reg l_wrap, l_write;
|