3
0
Fork 0
mirror of https://github.com/YosysHQ/sby.git synced 2025-12-28 15:56:38 +00:00

Rework file based on new understanding of make

This commit is contained in:
Gus Smith 2025-12-15 13:00:58 -08:00
parent 8274979147
commit 2b38c31936
3 changed files with 51 additions and 65 deletions

View file

@ -1,59 +0,0 @@
[tasks]
stage_1_init init
stage_1_fv fv
stage_2_init init
stage_2_fv fv
[options]
init:
mode prep
fv:
mode cover
depth 40
--
[engines]
init: none
fv: smtbmc
[script]
stage_1_init:
verific -formal Req_Ack.sv
hierarchy -top DUT
stage_1_fv:
read_rtlil design_prep.il
# This selection computes (all things with phase)-(all things with phase=1)
# to remove all phased SVA constructs not intended for phase 1.
select */a:phase */a:phase=1 %d
delete
stage_2_init:
read_rtlil design_prep.il
sim -a -w -scope DUT -r trace0.yw
stage_2_fv:
read_rtlil design_prep.il
# This selection computes (all things with phase)-(all things with phase=2)
# to remove all phased SVA constructs not intended for phase 2.
select */a:phase */a:phase=2 %d
delete
--
[files]
stage_1_init:
Req_Ack.sv
stage_1_fv:
skip_staged_flow_stage_1_init/model/design_prep.il
stage_2_init:
skip_staged_flow_stage_1_init/model/design_prep.il
skip_staged_flow_stage_1_fv/engine_0/trace0.yw
stage_2_fv:
skip_staged_flow_stage_2_init/model/design_prep.il

View file

@ -1,14 +1,59 @@
[tasks]
stage_1_init init
stage_1_fv fv
stage_2_init init
stage_2_fv fv
[options]
init:
mode prep
fv:
mode cover
depth 1
depth 40
--
[engines]
smtbmc
init: none
fv: smtbmc
[script]
# Minimal job so dumptaskinfo picks up the tools this flow requires.
stage_1_init:
verific -formal Req_Ack.sv
prep -top DUT
hierarchy -top DUT
stage_1_fv:
read_rtlil design_prep.il
# This selection computes (all things with phase)-(all things with phase=1)
# to remove all phased SVA constructs not intended for phase 1.
select */a:phase */a:phase=1 %d
delete
stage_2_init:
read_rtlil design_prep.il
sim -a -w -scope DUT -r trace0.yw
stage_2_fv:
read_rtlil design_prep.il
# This selection computes (all things with phase)-(all things with phase=2)
# to remove all phased SVA constructs not intended for phase 2.
select */a:phase */a:phase=2 %d
delete
--
[files]
stage_1_init:
Req_Ack.sv
stage_1_fv:
staged_sim_and_verif_stage_1_init/model/design_prep.il
stage_2_init:
staged_sim_and_verif_stage_1_init/model/design_prep.il
staged_sim_and_verif_stage_1_fv/engine_0/trace0.yw
stage_2_fv:
staged_sim_and_verif_stage_2_init/model/design_prep.il

View file

@ -4,10 +4,10 @@ set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
cd "$SCRIPT_DIR"
FLOW_FILE="skip_staged_flow.sby"
FLOW_FILE="staged_sim_and_verif.sby"
# Clean previous runs so we always exercise the full staged flow.
rm -rf skip_staged_flow_stage_1_init skip_staged_flow_stage_1_fv skip_staged_flow_stage_2_init skip_staged_flow_stage_2_fv
rm -rf staged_sim_and_verif_stage_1_init staged_sim_and_verif_stage_1_fv staged_sim_and_verif_stage_2_init staged_sim_and_verif_stage_2_fv
run_task() {
python3 "$SBY_MAIN" -f "$FLOW_FILE" "$1"