Roel Jordans
02/28/2025, 8:31 AMrun_be_checks
script to look for cvc.power.$TOP_SOURCE
in each of the directories where a config was included from. From what I've tested so far that list looks like it is ordered in a way that the user config directory `lvs/$TOP_SOURCE/`is the first one listed. So making your own lvs/user_analog_project_wrapper/cvc.power.user_analog_project_wrapper
will allow you to override the configuration and provide your own planned voltage levels and input/output type for the nets. Doing things this way also allowed me to run ERC on sub-modules by giving them their own config.
The change wasn't very big in the end:
diff --git a/checks/be_checks/run_be_checks b/checks/be_checks/run_be_checks
index 881f2a4..3aa20e7 100755
--- a/checks/be_checks/run_be_checks
+++ b/checks/be_checks/run_be_checks
@@ -117,12 +117,20 @@ fi
$LVS_ROOT/run_full_lvs --noextract
lvs_status=$?
-if [[ -f $LVS_ROOT/tech/$PDK/cvc.power.$TOP_SOURCE || -f ${CONFIG_FILE%/*}/cvc.power.$TOP_SOURCE ]]; then
- if [[ -f ${CONFIG_FILE%/*}/cvc.power.$TOP_SOURCE ]]; then
- cp ${CONFIG_FILE%/*}/cvc.power.$TOP_SOURCE $WORK_ROOT/cvc.power.$TOP_LAYOUT
- fi
- $LVS_ROOT/run_cvc --noextract
- cvc_status=$?
+for config in $INCLUDE_CONFIGS; do
+ CVC_CONFIG="${config%/*}/cvc.power.$TOP_SOURCE"
+ if [[ -f $CVC_CONFIG ]]; then
+ echo "
+Found CVC configuration $CVC_CONFIG
+"
+ break
+ fi
+done
+
+if [[ -f $CVC_CONFIG ]]; then
+ cp $CVC_CONFIG $WORK_ROOT/cvc.power.$TOP_LAYOUT
+ $LVS_ROOT/run_cvc --noextract
+ cvc_status=$?
fi
if [[ $TOP_SOURCE == *user_*project* && $SKIP_OEB == no ]]; then
Now, my question to you, is there any obvious potential problems in my approach that I may have missed? For now this change seems to work for me but I expect others may be interested too as it seems a nice addition to the analog design workflow. I've had a look at your repositories and see that this code is in both the mpw_precheck and extra_be_checks repositories on github, which would be the right point to start upstreaming?Mitch Bailey
02/28/2025, 11:37 AMextra_be_checks
is the source and files are copied to mpw_precheck
as needed.Roel Jordans
02/28/2025, 12:57 PM