From 4e875e4da053a70fc37423cc6b245f4b7c309020 Mon Sep 17 00:00:00 2001 From: luis201420 Date: Thu, 5 Nov 2026 13:28:32 +0000 Subject: [PATCH 1/3] add useful-skew flag to CTS script Signed-off-by: luis201420 --- flow/scripts/cts.tcl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flow/scripts/cts.tcl b/flow/scripts/cts.tcl index e90c6f0698..ee27067bff 100644 --- a/flow/scripts/cts.tcl +++ b/flow/scripts/cts.tcl @@ -25,7 +25,7 @@ append_env_var cts_args CTS_CLUSTER_SIZE -sink_clustering_size 1 append_env_var cts_args CTS_CLUSTER_DIAMETER -sink_clustering_max_diameter 1 append_env_var cts_args CTS_BUF_LIST -buf_list 1 append_env_var cts_args CTS_LIB_NAME -library 1 - +append_env_var cts_args CTS_USEFUL_SKEW -useful_skew 0 if { [env_var_exists_and_non_empty CTS_ARGS] } { set cts_args $::env(CTS_ARGS) From 59442c1f1d06a7db3ff556faf8f98728dcbab3a5 Mon Sep 17 00:00:00 2001 From: luis201420 Date: Thu, 5 Nov 2026 15:50:06 +0000 Subject: [PATCH 2/3] defined CTS_USEFUL_SKEW variable Signed-off-by: luis201420 --- flow/scripts/variables.json | 7 +++++++ flow/scripts/variables.yaml | 6 ++++++ 2 files changed, 13 insertions(+) diff --git a/flow/scripts/variables.json b/flow/scripts/variables.json index 50c1517476..d4c8eb90c2 100644 --- a/flow/scripts/variables.json +++ b/flow/scripts/variables.json @@ -242,6 +242,13 @@ "cts" ] }, + "CTS_USEFUL_SKEW": { + "default": 0, + "description": "Enable useful skew during the CTS balancing phase.\n", + "stages": [ + "cts" + ] + }, "DESIGN_NAME": { "description": "The name of the top-level module of the design.\n", "required": true diff --git a/flow/scripts/variables.yaml b/flow/scripts/variables.yaml index 2cd82356fd..c8aa6624a1 100644 --- a/flow/scripts/variables.yaml +++ b/flow/scripts/variables.yaml @@ -1246,6 +1246,12 @@ CTS_LIB_NAME: Name of the Liberty library to use in selecting the clock buffers. stages: - cts +CTS_USEFUL_SKEW: + description: | + Enable useful skew during the CTS balancing phase. + stages: + - cts + default: 0 POST_CTS_TCL: description: | Specifies a Tcl script with commands to run after CTS is completed. From 3848a1b8621092b38151fba07fbe41b905fc5a2d Mon Sep 17 00:00:00 2001 From: luis201420 Date: Fri, 6 Nov 2026 15:08:13 +0000 Subject: [PATCH 3/3] add CTS_USEFUL_SKEW Signed-off-by: luis201420 --- docs/user/FlowVariables.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/user/FlowVariables.md b/docs/user/FlowVariables.md index 449ec84425..2cde5338f2 100644 --- a/docs/user/FlowVariables.md +++ b/docs/user/FlowVariables.md @@ -131,6 +131,7 @@ configuration file. | CTS_CLUSTER_SIZE| Maximum number of sinks per cluster.| | | CTS_LIB_NAME| Name of the Liberty library to use in selecting the clock buffers.| | | CTS_SNAPSHOTS| Create ODB/SDC files at different stages of CTS.| 0| +| CTS_USEFUL_SKEW| Enable useful skew during the CTS balancing phase.| 0| | DESIGN_NAME| The name of the top-level module of the design.| | | DESIGN_NICKNAME| DESIGN_NICKNAME just changes the directory name that ORFS outputs to be DESIGN_NICKNAME instead of DESIGN_NAME in case DESIGN_NAME is unwieldy or conflicts with a different design.| | | DETAILED_METRICS| If set, then calls report_metrics prior to repair operations in the CTS and global route stages| 0| @@ -539,6 +540,7 @@ configuration file. - [CTS_CLUSTER_SIZE](#CTS_CLUSTER_SIZE) - [CTS_LIB_NAME](#CTS_LIB_NAME) - [CTS_SNAPSHOTS](#CTS_SNAPSHOTS) +- [CTS_USEFUL_SKEW](#CTS_USEFUL_SKEW) - [DETAILED_METRICS](#DETAILED_METRICS) - [DETAIL_PLACEMENT_ARGS](#DETAIL_PLACEMENT_ARGS) - [HOLD_SLACK_MARGIN](#HOLD_SLACK_MARGIN)