calvin
05/13/2023, 12:20 PMhtamas
05/13/2023, 3:43 PMSYNTH_MAX_FANOUT
in your configuration file.dlmiles
05/13/2023, 6:03 PMhtamas
05/13/2023, 6:47 PMSYNTH_MAX_FANOUT
if SYNTH_BUFFERING
is enabled (which is the default). The fanout is modified by later phases in the flow, so it won't necessarily stay under this value, but the flag still provides some control over it.SYNTH_MAX_FANOUT
is used in openlane's scripts/yosys/synth.tcl
to set the -N
option for abc's buffer
command, which is in turn implemented in Scl_CommandBuffer()
in yosys' abc/src/map/scl/scl.c
which calls the Abc_SclBufSize()
function in abc/src/map/scl/sclBufSize.c
where the fanout value is used as p->pPars->nDegree
.calvin
05/14/2023, 6:27 AMdlmiles
05/14/2023, 10:11 AMSYNTH_MAX_FANOUT
is being used by an early flow step, but later steps will keep on rearranging things without regard to this, so the warning at the end it to show of how out of hand those later stages needed to insert elements compared to targetscalvin
05/14/2023, 10:17 AMVijayan Krishnan
05/15/2023, 4:57 AMcalvin
05/15/2023, 3:18 PM