diff --git a/src/cndm/rtl/cndm_lite_core.sv b/src/cndm/rtl/cndm_lite_core.sv index d48defc..832c004 100644 --- a/src/cndm/rtl/cndm_lite_core.sv +++ b/src/cndm/rtl/cndm_lite_core.sv @@ -35,6 +35,8 @@ module cndm_lite_core #( // Structural configuration parameter PORTS = 2, + parameter SYS_CLK_PER_NS_NUM = 4, + parameter SYS_CLK_PER_NS_DEN = 1, // Queue configuration parameter WQN_W = 5, @@ -44,7 +46,7 @@ module cndm_lite_core #( parameter logic PTP_TS_EN = 1'b1, parameter logic PTP_TS_FMT_TOD = 1'b0, parameter PTP_CLK_PER_NS_NUM = 512, - parameter PTP_CLK_PER_NS_DENOM = 165 + parameter PTP_CLK_PER_NS_DEN = 165 ) ( input wire logic clk, @@ -324,8 +326,8 @@ cndm_micro_dp_mgr #( // Structural configuration .PORTS(PORTS), - .SYS_CLK_PER_NS_NUM(4), - .SYS_CLK_PER_NS_DENOM(1), + .SYS_CLK_PER_NS_NUM(SYS_CLK_PER_NS_NUM), + .SYS_CLK_PER_NS_DEN(SYS_CLK_PER_NS_DEN), // Queue configuration .WQN_W(WQN_W), @@ -334,7 +336,7 @@ cndm_micro_dp_mgr #( // PTP configuration .PTP_EN(PTP_TS_EN), .PTP_CLK_PER_NS_NUM(PTP_CLK_PER_NS_NUM), - .PTP_CLK_PER_NS_DENOM(PTP_CLK_PER_NS_DENOM), + .PTP_CLK_PER_NS_DEN(PTP_CLK_PER_NS_DEN), // Addressing .PTP_BASE_ADDR_DP(0), @@ -390,7 +392,7 @@ if (PTP_TS_EN) begin : ptp taxi_ptp_td_phc_apb #( .PTP_CLK_PER_NS_NUM(PTP_CLK_PER_NS_NUM), - .PTP_CLK_PER_NS_DENOM(PTP_CLK_PER_NS_DENOM) + .PTP_CLK_PER_NS_DENOM(PTP_CLK_PER_NS_DEN) ) ptp_inst ( .clk(clk), diff --git a/src/cndm/rtl/cndm_lite_pcie_us.sv b/src/cndm/rtl/cndm_lite_pcie_us.sv index a15ccf8..127a96f 100644 --- a/src/cndm/rtl/cndm_lite_pcie_us.sv +++ b/src/cndm/rtl/cndm_lite_pcie_us.sv @@ -35,15 +35,18 @@ module cndm_lite_pcie_us #( // Structural configuration parameter PORTS = 2, + parameter SYS_CLK_PER_NS_NUM = 4, + parameter SYS_CLK_PER_NS_DEN = 1, // Queue configuration - parameter CQN_W = 5, + parameter WQN_W = 5, + parameter CQN_W = WQN_W, // PTP configuration parameter logic PTP_TS_EN = 1'b1, parameter logic PTP_TS_FMT_TOD = 1'b0, parameter PTP_CLK_PER_NS_NUM = 512, - parameter PTP_CLK_PER_NS_DENOM = 165, + parameter PTP_CLK_PER_NS_DEN = 165, // PCIe interface configuration parameter RQ_SEQ_NUM_W = 6, @@ -512,6 +515,8 @@ cndm_lite_core #( // Structural configuration .PORTS(PORTS), + .SYS_CLK_PER_NS_NUM(SYS_CLK_PER_NS_NUM), + .SYS_CLK_PER_NS_DEN(SYS_CLK_PER_NS_DEN), // Queue configuration .CQN_W(CQN_W), @@ -520,7 +525,7 @@ cndm_lite_core #( .PTP_TS_EN(PTP_TS_EN), .PTP_TS_FMT_TOD(PTP_TS_FMT_TOD), .PTP_CLK_PER_NS_NUM(PTP_CLK_PER_NS_NUM), - .PTP_CLK_PER_NS_DENOM(PTP_CLK_PER_NS_DENOM) + .PTP_CLK_PER_NS_DEN(PTP_CLK_PER_NS_DEN) ) core_inst ( .clk(pcie_clk), diff --git a/src/cndm/rtl/cndm_micro_core.sv b/src/cndm/rtl/cndm_micro_core.sv index 1193da7..91826fe 100644 --- a/src/cndm/rtl/cndm_micro_core.sv +++ b/src/cndm/rtl/cndm_micro_core.sv @@ -35,6 +35,8 @@ module cndm_micro_core #( // Structural configuration parameter PORTS = 2, + parameter SYS_CLK_PER_NS_NUM = 4, + parameter SYS_CLK_PER_NS_DEN = 1, // Queue configuration parameter WQN_W = 5, @@ -44,7 +46,7 @@ module cndm_micro_core #( parameter logic PTP_TS_EN = 1'b1, parameter logic PTP_TS_FMT_TOD = 1'b0, parameter PTP_CLK_PER_NS_NUM = 512, - parameter PTP_CLK_PER_NS_DENOM = 165 + parameter PTP_CLK_PER_NS_DEN = 165 ) ( input wire logic clk, @@ -324,8 +326,8 @@ cndm_micro_dp_mgr #( // Structural configuration .PORTS(PORTS), - .SYS_CLK_PER_NS_NUM(4), - .SYS_CLK_PER_NS_DENOM(1), + .SYS_CLK_PER_NS_NUM(SYS_CLK_PER_NS_NUM), + .SYS_CLK_PER_NS_DEN(SYS_CLK_PER_NS_DEN), // Queue configuration .WQN_W(WQN_W), @@ -334,7 +336,7 @@ cndm_micro_dp_mgr #( // PTP configuration .PTP_EN(PTP_TS_EN), .PTP_CLK_PER_NS_NUM(PTP_CLK_PER_NS_NUM), - .PTP_CLK_PER_NS_DENOM(PTP_CLK_PER_NS_DENOM), + .PTP_CLK_PER_NS_DEN(PTP_CLK_PER_NS_DEN), // Addressing .PTP_BASE_ADDR_DP(0), @@ -390,7 +392,7 @@ if (PTP_TS_EN) begin : ptp taxi_ptp_td_phc_apb #( .PTP_CLK_PER_NS_NUM(PTP_CLK_PER_NS_NUM), - .PTP_CLK_PER_NS_DENOM(PTP_CLK_PER_NS_DENOM) + .PTP_CLK_PER_NS_DENOM(PTP_CLK_PER_NS_DEN) ) ptp_inst ( .clk(clk), diff --git a/src/cndm/rtl/cndm_micro_dp_mgr.sv b/src/cndm/rtl/cndm_micro_dp_mgr.sv index a0910be..45a8c67 100644 --- a/src/cndm/rtl/cndm_micro_dp_mgr.sv +++ b/src/cndm/rtl/cndm_micro_dp_mgr.sv @@ -30,7 +30,7 @@ module cndm_micro_dp_mgr # // Structural configuration parameter PORTS = 2, parameter SYS_CLK_PER_NS_NUM = 4, - parameter SYS_CLK_PER_NS_DENOM = 1, + parameter SYS_CLK_PER_NS_DEN = 1, // Queue configuration parameter WQN_W = 5, @@ -39,7 +39,7 @@ module cndm_micro_dp_mgr # // PTP configuration parameter logic PTP_EN = 1'b1, parameter PTP_CLK_PER_NS_NUM = 512, - parameter PTP_CLK_PER_NS_DENOM = 165, + parameter PTP_CLK_PER_NS_DEN = 165, // Addressing parameter PTP_BASE_ADDR_DP = 0, @@ -203,11 +203,11 @@ logic [31:0] id_rom[(ID_PAGES+1)*8] = '{ 0, // 19 { // 20 16'(SYS_CLK_PER_NS_NUM), // [31:16] - 16'(SYS_CLK_PER_NS_DENOM) // [15:0] + 16'(SYS_CLK_PER_NS_DEN) // [15:0] }, { // 21 16'(PTP_CLK_PER_NS_NUM), // [31:16] - 16'(PTP_CLK_PER_NS_DENOM) // [15:0] + 16'(PTP_CLK_PER_NS_DEN) // [15:0] }, 0, // 22 0, // 23 diff --git a/src/cndm/rtl/cndm_micro_pcie_us.sv b/src/cndm/rtl/cndm_micro_pcie_us.sv index 3dabf0b..e123505 100644 --- a/src/cndm/rtl/cndm_micro_pcie_us.sv +++ b/src/cndm/rtl/cndm_micro_pcie_us.sv @@ -35,15 +35,18 @@ module cndm_micro_pcie_us #( // Structural configuration parameter PORTS = 2, + parameter SYS_CLK_PER_NS_NUM = 4, + parameter SYS_CLK_PER_NS_DEN = 1, // Queue configuration - parameter CQN_W = 5, + parameter WQN_W = 5, + parameter CQN_W = WQN_W, // PTP configuration parameter logic PTP_TS_EN = 1'b1, parameter logic PTP_TS_FMT_TOD = 1'b0, parameter PTP_CLK_PER_NS_NUM = 512, - parameter PTP_CLK_PER_NS_DENOM = 165, + parameter PTP_CLK_PER_NS_DEN = 165, // PCIe interface configuration parameter RQ_SEQ_NUM_W = 6, @@ -512,15 +515,18 @@ cndm_micro_core #( // Structural configuration .PORTS(PORTS), + .SYS_CLK_PER_NS_NUM(SYS_CLK_PER_NS_NUM), + .SYS_CLK_PER_NS_DEN(SYS_CLK_PER_NS_DEN), // Queue configuration + .WQN_W(WQN_W), .CQN_W(CQN_W), // PTP configuration .PTP_TS_EN(PTP_TS_EN), .PTP_TS_FMT_TOD(PTP_TS_FMT_TOD), .PTP_CLK_PER_NS_NUM(PTP_CLK_PER_NS_NUM), - .PTP_CLK_PER_NS_DENOM(PTP_CLK_PER_NS_DENOM) + .PTP_CLK_PER_NS_DEN(PTP_CLK_PER_NS_DEN) ) core_inst ( .clk(pcie_clk), diff --git a/src/cndm/tb/cndm_lite_pcie_us/Makefile b/src/cndm/tb/cndm_lite_pcie_us/Makefile index cc1fa73..b56dfae 100644 --- a/src/cndm/tb/cndm_lite_pcie_us/Makefile +++ b/src/cndm/tb/cndm_lite_pcie_us/Makefile @@ -38,12 +38,18 @@ export PARAM_FAMILY := "\"virtexuplus\"" # Structural configuration export PARAM_PORTS := 2 +export PARAM_SYS_CLK_PER_NS_NUM := 4 +export PARAM_SYS_CLK_PER_NS_DEN := 1 + +# Queue configuration +export PARAM_WQN_W := 5 +export PARAM_CQN_W := $(PARAM_WQN_W) # PTP configuration export PARAM_PTP_TS_EN := 1 export PARAM_PTP_TS_FMT_TOD := 0 export PARAM_PTP_CLK_PER_NS_NUM := 512 -export PARAM_PTP_CLK_PER_NS_DENOM := 165 +export PARAM_PTP_CLK_PER_NS_DEN := 165 # PCIe interface configuration export PARAM_AXIS_PCIE_DATA_W := 512 diff --git a/src/cndm/tb/cndm_lite_pcie_us/test_cndm_lite_pcie_us.py b/src/cndm/tb/cndm_lite_pcie_us/test_cndm_lite_pcie_us.py index ca64418..2c64299 100644 --- a/src/cndm/tb/cndm_lite_pcie_us/test_cndm_lite_pcie_us.py +++ b/src/cndm/tb/cndm_lite_pcie_us/test_cndm_lite_pcie_us.py @@ -482,12 +482,18 @@ def test_cndm_lite_pcie_us(request, pcie_data_w, mac_data_w): # Structural configuration parameters['PORTS'] = 2 + parameters['SYS_CLK_PER_NS_NUM'] = 4 + parameters['SYS_CLK_PER_NS_DEN'] = 1 + + # Queue configuration + parameters['WQN_W'] = 5 + parameters['CQN_W'] = parameters['WQN_W'] # PTP configuration parameters['PTP_TS_EN'] = 1 parameters['PTP_TS_FMT_TOD'] = 0 parameters['PTP_CLK_PER_NS_NUM'] = 512 - parameters['PTP_CLK_PER_NS_DENOM'] = 165 + parameters['PTP_CLK_PER_NS_DEN'] = 165 # PCIe interface configuration parameters['AXIS_PCIE_DATA_W'] = pcie_data_w diff --git a/src/cndm/tb/cndm_lite_pcie_us/test_cndm_lite_pcie_us.sv b/src/cndm/tb/cndm_lite_pcie_us/test_cndm_lite_pcie_us.sv index 1f77b50..004e343 100644 --- a/src/cndm/tb/cndm_lite_pcie_us/test_cndm_lite_pcie_us.sv +++ b/src/cndm/tb/cndm_lite_pcie_us/test_cndm_lite_pcie_us.sv @@ -34,12 +34,18 @@ module test_cndm_lite_pcie_us # // Structural configuration parameter PORTS = 2, + parameter SYS_CLK_PER_NS_NUM = 4, + parameter SYS_CLK_PER_NS_DEN = 1, + + // Queue configuration + parameter WQN_W = 5, + parameter CQN_W = WQN_W, // PTP configuration parameter logic PTP_TS_EN = 1'b1, parameter logic PTP_TS_FMT_TOD = 1'b0, parameter PTP_CLK_PER_NS_NUM = 512, - parameter PTP_CLK_PER_NS_DENOM = 165, + parameter PTP_CLK_PER_NS_DEN = 165, // PCIe interface configuration parameter AXIS_PCIE_DATA_W = 512, @@ -206,12 +212,18 @@ cndm_lite_pcie_us #( // Structural configuration .PORTS(PORTS), + .SYS_CLK_PER_NS_NUM(SYS_CLK_PER_NS_NUM), + .SYS_CLK_PER_NS_DEN(SYS_CLK_PER_NS_DEN), + + // Queue configuration + .WQN_W(WQN_W), + .CQN_W(CQN_W), // PTP configuration .PTP_TS_EN(PTP_TS_EN), .PTP_TS_FMT_TOD(PTP_TS_FMT_TOD), .PTP_CLK_PER_NS_NUM(PTP_CLK_PER_NS_NUM), - .PTP_CLK_PER_NS_DENOM(PTP_CLK_PER_NS_DENOM), + .PTP_CLK_PER_NS_DEN(PTP_CLK_PER_NS_DEN), // PCIe interface configuration .RQ_SEQ_NUM_W(RQ_SEQ_NUM_W), diff --git a/src/cndm/tb/cndm_micro_pcie_us/Makefile b/src/cndm/tb/cndm_micro_pcie_us/Makefile index e19a906..09c3468 100644 --- a/src/cndm/tb/cndm_micro_pcie_us/Makefile +++ b/src/cndm/tb/cndm_micro_pcie_us/Makefile @@ -38,12 +38,18 @@ export PARAM_FAMILY := "\"virtexuplus\"" # Structural configuration export PARAM_PORTS := 2 +export PARAM_SYS_CLK_PER_NS_NUM := 4 +export PARAM_SYS_CLK_PER_NS_DEN := 1 + +# Queue configuration +export PARAM_WQN_W := 5 +export PARAM_CQN_W := $(PARAM_WQN_W) # PTP configuration export PARAM_PTP_TS_EN := 1 export PARAM_PTP_TS_FMT_TOD := 0 export PARAM_PTP_CLK_PER_NS_NUM := 512 -export PARAM_PTP_CLK_PER_NS_DENOM := 165 +export PARAM_PTP_CLK_PER_NS_DEN := 165 # PCIe interface configuration export PARAM_AXIS_PCIE_DATA_W := 256 diff --git a/src/cndm/tb/cndm_micro_pcie_us/test_cndm_micro_pcie_us.py b/src/cndm/tb/cndm_micro_pcie_us/test_cndm_micro_pcie_us.py index c5d11d6..050a948 100644 --- a/src/cndm/tb/cndm_micro_pcie_us/test_cndm_micro_pcie_us.py +++ b/src/cndm/tb/cndm_micro_pcie_us/test_cndm_micro_pcie_us.py @@ -481,12 +481,18 @@ def test_cndm_micro_pcie_us(request, pcie_data_w, mac_data_w): # Structural configuration parameters['PORTS'] = 2 + parameters['SYS_CLK_PER_NS_NUM'] = 4 + parameters['SYS_CLK_PER_NS_DEN'] = 1 + + # Queue configuration + parameters['WQN_W'] = 5 + parameters['CQN_W'] = parameters['WQN_W'] # PTP configuration parameters['PTP_TS_EN'] = 1 parameters['PTP_TS_FMT_TOD'] = 0 parameters['PTP_CLK_PER_NS_NUM'] = 512 - parameters['PTP_CLK_PER_NS_DENOM'] = 165 + parameters['PTP_CLK_PER_NS_DEN'] = 165 # PCIe interface configuration parameters['AXIS_PCIE_DATA_W'] = pcie_data_w diff --git a/src/cndm/tb/cndm_micro_pcie_us/test_cndm_micro_pcie_us.sv b/src/cndm/tb/cndm_micro_pcie_us/test_cndm_micro_pcie_us.sv index b9ea79e..1484b1a 100644 --- a/src/cndm/tb/cndm_micro_pcie_us/test_cndm_micro_pcie_us.sv +++ b/src/cndm/tb/cndm_micro_pcie_us/test_cndm_micro_pcie_us.sv @@ -34,12 +34,18 @@ module test_cndm_micro_pcie_us # // Structural configuration parameter PORTS = 2, + parameter SYS_CLK_PER_NS_NUM = 4, + parameter SYS_CLK_PER_NS_DEN = 1, + + // Queue configuration + parameter WQN_W = 5, + parameter CQN_W = WQN_W, // PTP configuration parameter logic PTP_TS_EN = 1'b1, parameter logic PTP_TS_FMT_TOD = 1'b0, parameter PTP_CLK_PER_NS_NUM = 512, - parameter PTP_CLK_PER_NS_DENOM = 165, + parameter PTP_CLK_PER_NS_DEN = 165, // PCIe interface configuration parameter AXIS_PCIE_DATA_W = 256, @@ -206,12 +212,18 @@ cndm_micro_pcie_us #( // Structural configuration .PORTS(PORTS), + .SYS_CLK_PER_NS_NUM(SYS_CLK_PER_NS_NUM), + .SYS_CLK_PER_NS_DEN(SYS_CLK_PER_NS_DEN), + + // Queue configuration + .WQN_W(WQN_W), + .CQN_W(CQN_W), // PTP configuration .PTP_TS_EN(PTP_TS_EN), .PTP_TS_FMT_TOD(PTP_TS_FMT_TOD), .PTP_CLK_PER_NS_NUM(PTP_CLK_PER_NS_NUM), - .PTP_CLK_PER_NS_DENOM(PTP_CLK_PER_NS_DENOM), + .PTP_CLK_PER_NS_DEN(PTP_CLK_PER_NS_DEN), // PCIe interface configuration .RQ_SEQ_NUM_W(RQ_SEQ_NUM_W),