mirror of
https://github.com/corundum/corundum.git
synced 2025-01-16 08:12:53 +08:00
Example design parameter clean-up
Signed-off-by: Alex Forencich <alex@alexforencich.com>
This commit is contained in:
parent
84eef7b90c
commit
2306e51522
@ -54,7 +54,6 @@ export PARAM_AXIS_PCIE_RQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_
|
|||||||
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
||||||
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
||||||
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
||||||
export PARAM_RQ_SEQ_NUM_WIDTH := 6
|
|
||||||
|
|
||||||
ifeq ($(SIM), icarus)
|
ifeq ($(SIM), icarus)
|
||||||
PLUSARGS += -fst
|
PLUSARGS += -fst
|
||||||
|
@ -396,7 +396,6 @@ def test_fpga_core(request):
|
|||||||
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
||||||
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
||||||
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
||||||
parameters['RQ_SEQ_NUM_WIDTH'] = 6
|
|
||||||
|
|
||||||
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
||||||
|
|
||||||
|
@ -54,7 +54,6 @@ export PARAM_AXIS_PCIE_RQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_
|
|||||||
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
||||||
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
||||||
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
||||||
export PARAM_RQ_SEQ_NUM_WIDTH := 6
|
|
||||||
|
|
||||||
ifeq ($(SIM), icarus)
|
ifeq ($(SIM), icarus)
|
||||||
PLUSARGS += -fst
|
PLUSARGS += -fst
|
||||||
|
@ -398,7 +398,6 @@ def test_fpga_core(request):
|
|||||||
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
||||||
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
||||||
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
||||||
parameters['RQ_SEQ_NUM_WIDTH'] = 6
|
|
||||||
|
|
||||||
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
||||||
|
|
||||||
|
@ -54,7 +54,6 @@ export PARAM_AXIS_PCIE_RQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_
|
|||||||
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
||||||
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
||||||
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
||||||
export PARAM_RQ_SEQ_NUM_WIDTH := 6
|
|
||||||
|
|
||||||
ifeq ($(SIM), icarus)
|
ifeq ($(SIM), icarus)
|
||||||
PLUSARGS += -fst
|
PLUSARGS += -fst
|
||||||
|
@ -398,7 +398,6 @@ def test_fpga_core(request):
|
|||||||
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
||||||
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
||||||
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
||||||
parameters['RQ_SEQ_NUM_WIDTH'] = 6
|
|
||||||
|
|
||||||
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
||||||
|
|
||||||
|
@ -54,7 +54,6 @@ export PARAM_AXIS_PCIE_RQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_
|
|||||||
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
||||||
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
||||||
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
||||||
export PARAM_RQ_SEQ_NUM_WIDTH := 6
|
|
||||||
|
|
||||||
ifeq ($(SIM), icarus)
|
ifeq ($(SIM), icarus)
|
||||||
PLUSARGS += -fst
|
PLUSARGS += -fst
|
||||||
|
@ -396,7 +396,6 @@ def test_fpga_core(request):
|
|||||||
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
||||||
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
||||||
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
||||||
parameters['RQ_SEQ_NUM_WIDTH'] = 6
|
|
||||||
|
|
||||||
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
||||||
|
|
||||||
|
@ -54,7 +54,6 @@ export PARAM_AXIS_PCIE_RQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_
|
|||||||
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
||||||
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
||||||
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
||||||
export PARAM_RQ_SEQ_NUM_WIDTH := 6
|
|
||||||
|
|
||||||
ifeq ($(SIM), icarus)
|
ifeq ($(SIM), icarus)
|
||||||
PLUSARGS += -fst
|
PLUSARGS += -fst
|
||||||
|
@ -396,7 +396,6 @@ def test_fpga_core(request):
|
|||||||
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
||||||
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
||||||
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
||||||
parameters['RQ_SEQ_NUM_WIDTH'] = 6
|
|
||||||
|
|
||||||
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
||||||
|
|
||||||
|
@ -54,7 +54,6 @@ export PARAM_AXIS_PCIE_RQ_USER_WIDTH := 60
|
|||||||
export PARAM_AXIS_PCIE_RC_USER_WIDTH := 75
|
export PARAM_AXIS_PCIE_RC_USER_WIDTH := 75
|
||||||
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := 85
|
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := 85
|
||||||
export PARAM_AXIS_PCIE_CC_USER_WIDTH := 33
|
export PARAM_AXIS_PCIE_CC_USER_WIDTH := 33
|
||||||
export PARAM_RQ_SEQ_NUM_WIDTH := 4
|
|
||||||
|
|
||||||
ifeq ($(SIM), icarus)
|
ifeq ($(SIM), icarus)
|
||||||
PLUSARGS += -fst
|
PLUSARGS += -fst
|
||||||
|
@ -370,7 +370,6 @@ def test_fpga_core(request):
|
|||||||
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75
|
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75
|
||||||
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 85
|
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 85
|
||||||
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33
|
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33
|
||||||
parameters['RQ_SEQ_NUM_WIDTH'] = 4
|
|
||||||
|
|
||||||
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
||||||
|
|
||||||
|
@ -54,7 +54,6 @@ export PARAM_AXIS_PCIE_RQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_
|
|||||||
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
||||||
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
||||||
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
||||||
export PARAM_RQ_SEQ_NUM_WIDTH := 6
|
|
||||||
|
|
||||||
ifeq ($(SIM), icarus)
|
ifeq ($(SIM), icarus)
|
||||||
PLUSARGS += -fst
|
PLUSARGS += -fst
|
||||||
|
@ -396,7 +396,6 @@ def test_fpga_core(request):
|
|||||||
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
||||||
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
||||||
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
||||||
parameters['RQ_SEQ_NUM_WIDTH'] = 6
|
|
||||||
|
|
||||||
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
||||||
|
|
||||||
|
@ -57,6 +57,10 @@ module fpga (
|
|||||||
|
|
||||||
parameter AXIS_PCIE_DATA_WIDTH = 256;
|
parameter AXIS_PCIE_DATA_WIDTH = 256;
|
||||||
parameter AXIS_PCIE_KEEP_WIDTH = (AXIS_PCIE_DATA_WIDTH/32);
|
parameter AXIS_PCIE_KEEP_WIDTH = (AXIS_PCIE_DATA_WIDTH/32);
|
||||||
|
parameter AXIS_PCIE_RC_USER_WIDTH = 75;
|
||||||
|
parameter AXIS_PCIE_RQ_USER_WIDTH = 60;
|
||||||
|
parameter AXIS_PCIE_CQ_USER_WIDTH = 85;
|
||||||
|
parameter AXIS_PCIE_CC_USER_WIDTH = 33;
|
||||||
|
|
||||||
// Clock and reset
|
// Clock and reset
|
||||||
wire pcie_user_clk;
|
wire pcie_user_clk;
|
||||||
@ -107,33 +111,33 @@ ibufds_gte3_pcie_mgt_refclk_inst (
|
|||||||
.ODIV2 (pcie_sys_clk)
|
.ODIV2 (pcie_sys_clk)
|
||||||
);
|
);
|
||||||
|
|
||||||
wire [AXIS_PCIE_DATA_WIDTH-1:0] axis_rq_tdata;
|
wire [AXIS_PCIE_DATA_WIDTH-1:0] axis_rq_tdata;
|
||||||
wire [AXIS_PCIE_KEEP_WIDTH-1:0] axis_rq_tkeep;
|
wire [AXIS_PCIE_KEEP_WIDTH-1:0] axis_rq_tkeep;
|
||||||
wire axis_rq_tlast;
|
wire axis_rq_tlast;
|
||||||
wire axis_rq_tready;
|
wire axis_rq_tready;
|
||||||
wire [59:0] axis_rq_tuser;
|
wire [AXIS_PCIE_RQ_USER_WIDTH-1:0] axis_rq_tuser;
|
||||||
wire axis_rq_tvalid;
|
wire axis_rq_tvalid;
|
||||||
|
|
||||||
wire [AXIS_PCIE_DATA_WIDTH-1:0] axis_rc_tdata;
|
wire [AXIS_PCIE_DATA_WIDTH-1:0] axis_rc_tdata;
|
||||||
wire [AXIS_PCIE_KEEP_WIDTH-1:0] axis_rc_tkeep;
|
wire [AXIS_PCIE_KEEP_WIDTH-1:0] axis_rc_tkeep;
|
||||||
wire axis_rc_tlast;
|
wire axis_rc_tlast;
|
||||||
wire axis_rc_tready;
|
wire axis_rc_tready;
|
||||||
wire [74:0] axis_rc_tuser;
|
wire [AXIS_PCIE_RC_USER_WIDTH-1:0] axis_rc_tuser;
|
||||||
wire axis_rc_tvalid;
|
wire axis_rc_tvalid;
|
||||||
|
|
||||||
wire [AXIS_PCIE_DATA_WIDTH-1:0] axis_cq_tdata;
|
wire [AXIS_PCIE_DATA_WIDTH-1:0] axis_cq_tdata;
|
||||||
wire [AXIS_PCIE_KEEP_WIDTH-1:0] axis_cq_tkeep;
|
wire [AXIS_PCIE_KEEP_WIDTH-1:0] axis_cq_tkeep;
|
||||||
wire axis_cq_tlast;
|
wire axis_cq_tlast;
|
||||||
wire axis_cq_tready;
|
wire axis_cq_tready;
|
||||||
wire [84:0] axis_cq_tuser;
|
wire [AXIS_PCIE_CQ_USER_WIDTH-1:0] axis_cq_tuser;
|
||||||
wire axis_cq_tvalid;
|
wire axis_cq_tvalid;
|
||||||
|
|
||||||
wire [AXIS_PCIE_DATA_WIDTH-1:0] axis_cc_tdata;
|
wire [AXIS_PCIE_DATA_WIDTH-1:0] axis_cc_tdata;
|
||||||
wire [AXIS_PCIE_KEEP_WIDTH-1:0] axis_cc_tkeep;
|
wire [AXIS_PCIE_KEEP_WIDTH-1:0] axis_cc_tkeep;
|
||||||
wire axis_cc_tlast;
|
wire axis_cc_tlast;
|
||||||
wire axis_cc_tready;
|
wire axis_cc_tready;
|
||||||
wire [32:0] axis_cc_tuser;
|
wire [AXIS_PCIE_CC_USER_WIDTH-1:0] axis_cc_tuser;
|
||||||
wire axis_cc_tvalid;
|
wire axis_cc_tvalid;
|
||||||
|
|
||||||
// ila_0 rq_ila (
|
// ila_0 rq_ila (
|
||||||
// .clk(pcie_user_clk),
|
// .clk(pcie_user_clk),
|
||||||
@ -357,7 +361,12 @@ pcie3_ultrascale_inst (
|
|||||||
);
|
);
|
||||||
|
|
||||||
fpga_core #(
|
fpga_core #(
|
||||||
.AXIS_PCIE_DATA_WIDTH(AXIS_PCIE_DATA_WIDTH)
|
.AXIS_PCIE_DATA_WIDTH(AXIS_PCIE_DATA_WIDTH),
|
||||||
|
.AXIS_PCIE_KEEP_WIDTH(AXIS_PCIE_KEEP_WIDTH),
|
||||||
|
.AXIS_PCIE_RC_USER_WIDTH(AXIS_PCIE_RC_USER_WIDTH),
|
||||||
|
.AXIS_PCIE_RQ_USER_WIDTH(AXIS_PCIE_RQ_USER_WIDTH),
|
||||||
|
.AXIS_PCIE_CQ_USER_WIDTH(AXIS_PCIE_CQ_USER_WIDTH),
|
||||||
|
.AXIS_PCIE_CC_USER_WIDTH(AXIS_PCIE_CC_USER_WIDTH)
|
||||||
)
|
)
|
||||||
core_inst (
|
core_inst (
|
||||||
/*
|
/*
|
||||||
|
@ -34,89 +34,93 @@ THE SOFTWARE.
|
|||||||
module fpga_core #
|
module fpga_core #
|
||||||
(
|
(
|
||||||
parameter AXIS_PCIE_DATA_WIDTH = 256,
|
parameter AXIS_PCIE_DATA_WIDTH = 256,
|
||||||
parameter AXIS_PCIE_KEEP_WIDTH = (AXIS_PCIE_DATA_WIDTH/32)
|
parameter AXIS_PCIE_KEEP_WIDTH = (AXIS_PCIE_DATA_WIDTH/32),
|
||||||
|
parameter AXIS_PCIE_RC_USER_WIDTH = 75,
|
||||||
|
parameter AXIS_PCIE_RQ_USER_WIDTH = 60,
|
||||||
|
parameter AXIS_PCIE_CQ_USER_WIDTH = 85,
|
||||||
|
parameter AXIS_PCIE_CC_USER_WIDTH = 33
|
||||||
)
|
)
|
||||||
(
|
(
|
||||||
/*
|
/*
|
||||||
* Clock: 250 MHz
|
* Clock: 250 MHz
|
||||||
* Synchronous reset
|
* Synchronous reset
|
||||||
*/
|
*/
|
||||||
input wire clk,
|
input wire clk,
|
||||||
input wire rst,
|
input wire rst,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* GPIO
|
* GPIO
|
||||||
*/
|
*/
|
||||||
input wire btnu,
|
input wire btnu,
|
||||||
input wire btnl,
|
input wire btnl,
|
||||||
input wire btnd,
|
input wire btnd,
|
||||||
input wire btnr,
|
input wire btnr,
|
||||||
input wire btnc,
|
input wire btnc,
|
||||||
input wire [3:0] sw,
|
input wire [3:0] sw,
|
||||||
output wire [7:0] led,
|
output wire [7:0] led,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* PCIe
|
* PCIe
|
||||||
*/
|
*/
|
||||||
output wire [AXIS_PCIE_DATA_WIDTH-1:0] m_axis_rq_tdata,
|
output wire [AXIS_PCIE_DATA_WIDTH-1:0] m_axis_rq_tdata,
|
||||||
output wire [AXIS_PCIE_KEEP_WIDTH-1:0] m_axis_rq_tkeep,
|
output wire [AXIS_PCIE_KEEP_WIDTH-1:0] m_axis_rq_tkeep,
|
||||||
output wire m_axis_rq_tlast,
|
output wire m_axis_rq_tlast,
|
||||||
input wire m_axis_rq_tready,
|
input wire m_axis_rq_tready,
|
||||||
output wire [59:0] m_axis_rq_tuser,
|
output wire [AXIS_PCIE_RQ_USER_WIDTH-1:0] m_axis_rq_tuser,
|
||||||
output wire m_axis_rq_tvalid,
|
output wire m_axis_rq_tvalid,
|
||||||
|
|
||||||
input wire [AXIS_PCIE_DATA_WIDTH-1:0] s_axis_rc_tdata,
|
input wire [AXIS_PCIE_DATA_WIDTH-1:0] s_axis_rc_tdata,
|
||||||
input wire [AXIS_PCIE_KEEP_WIDTH-1:0] s_axis_rc_tkeep,
|
input wire [AXIS_PCIE_KEEP_WIDTH-1:0] s_axis_rc_tkeep,
|
||||||
input wire s_axis_rc_tlast,
|
input wire s_axis_rc_tlast,
|
||||||
output wire s_axis_rc_tready,
|
output wire s_axis_rc_tready,
|
||||||
input wire [74:0] s_axis_rc_tuser,
|
input wire [AXIS_PCIE_RC_USER_WIDTH-1:0] s_axis_rc_tuser,
|
||||||
input wire s_axis_rc_tvalid,
|
input wire s_axis_rc_tvalid,
|
||||||
|
|
||||||
input wire [AXIS_PCIE_DATA_WIDTH-1:0] s_axis_cq_tdata,
|
input wire [AXIS_PCIE_DATA_WIDTH-1:0] s_axis_cq_tdata,
|
||||||
input wire [AXIS_PCIE_KEEP_WIDTH-1:0] s_axis_cq_tkeep,
|
input wire [AXIS_PCIE_KEEP_WIDTH-1:0] s_axis_cq_tkeep,
|
||||||
input wire s_axis_cq_tlast,
|
input wire s_axis_cq_tlast,
|
||||||
output wire s_axis_cq_tready,
|
output wire s_axis_cq_tready,
|
||||||
input wire [84:0] s_axis_cq_tuser,
|
input wire [AXIS_PCIE_CQ_USER_WIDTH-1:0] s_axis_cq_tuser,
|
||||||
input wire s_axis_cq_tvalid,
|
input wire s_axis_cq_tvalid,
|
||||||
|
|
||||||
output wire [AXIS_PCIE_DATA_WIDTH-1:0] m_axis_cc_tdata,
|
output wire [AXIS_PCIE_DATA_WIDTH-1:0] m_axis_cc_tdata,
|
||||||
output wire [AXIS_PCIE_KEEP_WIDTH-1:0] m_axis_cc_tkeep,
|
output wire [AXIS_PCIE_KEEP_WIDTH-1:0] m_axis_cc_tkeep,
|
||||||
output wire m_axis_cc_tlast,
|
output wire m_axis_cc_tlast,
|
||||||
input wire m_axis_cc_tready,
|
input wire m_axis_cc_tready,
|
||||||
output wire [32:0] m_axis_cc_tuser,
|
output wire [AXIS_PCIE_CC_USER_WIDTH-1:0] m_axis_cc_tuser,
|
||||||
output wire m_axis_cc_tvalid,
|
output wire m_axis_cc_tvalid,
|
||||||
|
|
||||||
input wire [2:0] cfg_max_payload,
|
input wire [2:0] cfg_max_payload,
|
||||||
input wire [2:0] cfg_max_read_req,
|
input wire [2:0] cfg_max_read_req,
|
||||||
|
|
||||||
output wire [18:0] cfg_mgmt_addr,
|
output wire [18:0] cfg_mgmt_addr,
|
||||||
output wire cfg_mgmt_write,
|
output wire cfg_mgmt_write,
|
||||||
output wire [31:0] cfg_mgmt_write_data,
|
output wire [31:0] cfg_mgmt_write_data,
|
||||||
output wire [3:0] cfg_mgmt_byte_enable,
|
output wire [3:0] cfg_mgmt_byte_enable,
|
||||||
output wire cfg_mgmt_read,
|
output wire cfg_mgmt_read,
|
||||||
input wire [31:0] cfg_mgmt_read_data,
|
input wire [31:0] cfg_mgmt_read_data,
|
||||||
input wire cfg_mgmt_read_write_done,
|
input wire cfg_mgmt_read_write_done,
|
||||||
|
|
||||||
input wire [3:0] cfg_interrupt_msi_enable,
|
input wire [3:0] cfg_interrupt_msi_enable,
|
||||||
input wire [7:0] cfg_interrupt_msi_vf_enable,
|
input wire [7:0] cfg_interrupt_msi_vf_enable,
|
||||||
input wire [11:0] cfg_interrupt_msi_mmenable,
|
input wire [11:0] cfg_interrupt_msi_mmenable,
|
||||||
input wire cfg_interrupt_msi_mask_update,
|
input wire cfg_interrupt_msi_mask_update,
|
||||||
input wire [31:0] cfg_interrupt_msi_data,
|
input wire [31:0] cfg_interrupt_msi_data,
|
||||||
output wire [3:0] cfg_interrupt_msi_select,
|
output wire [3:0] cfg_interrupt_msi_select,
|
||||||
output wire [31:0] cfg_interrupt_msi_int,
|
output wire [31:0] cfg_interrupt_msi_int,
|
||||||
output wire [31:0] cfg_interrupt_msi_pending_status,
|
output wire [31:0] cfg_interrupt_msi_pending_status,
|
||||||
output wire cfg_interrupt_msi_pending_status_data_enable,
|
output wire cfg_interrupt_msi_pending_status_data_enable,
|
||||||
output wire [3:0] cfg_interrupt_msi_pending_status_function_num,
|
output wire [3:0] cfg_interrupt_msi_pending_status_function_num,
|
||||||
input wire cfg_interrupt_msi_sent,
|
input wire cfg_interrupt_msi_sent,
|
||||||
input wire cfg_interrupt_msi_fail,
|
input wire cfg_interrupt_msi_fail,
|
||||||
output wire [2:0] cfg_interrupt_msi_attr,
|
output wire [2:0] cfg_interrupt_msi_attr,
|
||||||
output wire cfg_interrupt_msi_tph_present,
|
output wire cfg_interrupt_msi_tph_present,
|
||||||
output wire [1:0] cfg_interrupt_msi_tph_type,
|
output wire [1:0] cfg_interrupt_msi_tph_type,
|
||||||
output wire [8:0] cfg_interrupt_msi_tph_st_tag,
|
output wire [8:0] cfg_interrupt_msi_tph_st_tag,
|
||||||
output wire [3:0] cfg_interrupt_msi_function_number,
|
output wire [3:0] cfg_interrupt_msi_function_number,
|
||||||
|
|
||||||
output wire status_error_cor,
|
output wire status_error_cor,
|
||||||
output wire status_error_uncor
|
output wire status_error_uncor
|
||||||
);
|
);
|
||||||
|
|
||||||
parameter PCIE_ADDR_WIDTH = 64;
|
parameter PCIE_ADDR_WIDTH = 64;
|
||||||
|
@ -377,7 +377,6 @@ def test_fpga_core(request):
|
|||||||
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75
|
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75
|
||||||
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 85
|
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 85
|
||||||
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33
|
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33
|
||||||
parameters['RQ_SEQ_NUM_WIDTH'] = 4
|
|
||||||
|
|
||||||
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
||||||
|
|
||||||
|
@ -54,7 +54,6 @@ export PARAM_AXIS_PCIE_RQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_
|
|||||||
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
||||||
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
||||||
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
||||||
export PARAM_RQ_SEQ_NUM_WIDTH := 6
|
|
||||||
|
|
||||||
ifeq ($(SIM), icarus)
|
ifeq ($(SIM), icarus)
|
||||||
PLUSARGS += -fst
|
PLUSARGS += -fst
|
||||||
|
@ -403,7 +403,6 @@ def test_fpga_core(request):
|
|||||||
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
||||||
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
||||||
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
||||||
parameters['RQ_SEQ_NUM_WIDTH'] = 6
|
|
||||||
|
|
||||||
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
||||||
|
|
||||||
|
@ -54,7 +54,6 @@ export PARAM_AXIS_PCIE_RQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_
|
|||||||
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
||||||
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
||||||
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
||||||
export PARAM_RQ_SEQ_NUM_WIDTH := 6
|
|
||||||
|
|
||||||
ifeq ($(SIM), icarus)
|
ifeq ($(SIM), icarus)
|
||||||
PLUSARGS += -fst
|
PLUSARGS += -fst
|
||||||
|
@ -398,7 +398,6 @@ def test_fpga_core(request):
|
|||||||
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
||||||
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
||||||
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
||||||
parameters['RQ_SEQ_NUM_WIDTH'] = 6
|
|
||||||
|
|
||||||
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
||||||
|
|
||||||
|
@ -54,7 +54,6 @@ export PARAM_AXIS_PCIE_RQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_
|
|||||||
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
||||||
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
||||||
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
||||||
export PARAM_RQ_SEQ_NUM_WIDTH := 6
|
|
||||||
|
|
||||||
ifeq ($(SIM), icarus)
|
ifeq ($(SIM), icarus)
|
||||||
PLUSARGS += -fst
|
PLUSARGS += -fst
|
||||||
|
@ -403,7 +403,6 @@ def test_fpga_core(request):
|
|||||||
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
||||||
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
||||||
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
||||||
parameters['RQ_SEQ_NUM_WIDTH'] = 6
|
|
||||||
|
|
||||||
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
||||||
|
|
||||||
|
@ -54,7 +54,6 @@ export PARAM_AXIS_PCIE_RQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_
|
|||||||
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
export PARAM_AXIS_PCIE_RC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),75,161)
|
||||||
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
export PARAM_AXIS_PCIE_CQ_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),88,183)
|
||||||
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
export PARAM_AXIS_PCIE_CC_USER_WIDTH := $(if $(filter-out 512,$(PARAM_AXIS_PCIE_DATA_WIDTH)),33,81)
|
||||||
export PARAM_RQ_SEQ_NUM_WIDTH := 6
|
|
||||||
|
|
||||||
ifeq ($(SIM), icarus)
|
ifeq ($(SIM), icarus)
|
||||||
PLUSARGS += -fst
|
PLUSARGS += -fst
|
||||||
|
@ -396,7 +396,6 @@ def test_fpga_core(request):
|
|||||||
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
parameters['AXIS_PCIE_RC_USER_WIDTH'] = 75 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 161
|
||||||
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
parameters['AXIS_PCIE_CQ_USER_WIDTH'] = 88 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 183
|
||||||
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
parameters['AXIS_PCIE_CC_USER_WIDTH'] = 33 if parameters['AXIS_PCIE_DATA_WIDTH'] < 512 else 81
|
||||||
parameters['RQ_SEQ_NUM_WIDTH'] = 6
|
|
||||||
|
|
||||||
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
extra_env = {f'PARAM_{k}': str(v) for k, v in parameters.items()}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user