From b468d92e39927835b5b5b4b315eafc9e6459c3fb Mon Sep 17 00:00:00 2001 From: Alex Forencich Date: Mon, 17 Mar 2025 21:00:12 -0700 Subject: [PATCH] hip: Report error if fractional MMCM configuration does not work Signed-off-by: Alex Forencich --- rtl/hip/us/taxi_mmcm_frac.sv | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/rtl/hip/us/taxi_mmcm_frac.sv b/rtl/hip/us/taxi_mmcm_frac.sv index be2cdb0..52ba1a0 100644 --- a/rtl/hip/us/taxi_mmcm_frac.sv +++ b/rtl/hip/us/taxi_mmcm_frac.sv @@ -39,6 +39,11 @@ localparam DIR = OFFSET_NUM >= 0; localparam NUM_1 = (DIR ? OFFSET_NUM : -OFFSET_NUM)*56*MMCM_OUTPUT_DIV; localparam DENOM_1 = OFFSET_DENOM; +localparam MMCM_MIN_PSCLK_CYCLES = 12; + +if (DENOM_1 / NUM_1 < MMCM_MIN_PSCLK_CYCLES) + $fatal(0, "Error: requested offset is too large for MMCM dynamic phase shifter"); + localparam CNT_W = $clog2(DENOM_1)+1; logic [CNT_W-1:0] cnt_reg = '0;