Cadence Genus
The Genus flow as explicit generic to mapped to optimized stages, its common UI with Innovus, and iSpatial physical synthesis.
Cadence Genus is the synthesis engine in the Cadence digital flow, paired downstream with the Innovus place-and-route tool. It exposes the synthesis stages explicitly, generic, mapped, then optimised, and shares a common command interface (Stylus) with Innovus, so constraints and scripts carry across the front-to-back flow. Its physical-synthesis mode, iSpatial, brings Innovus placement and optimisation engines into synthesis for tighter layout correlation.
The Genus flow
read_libs for the .lib timing libraries (and physical/LEF data for physical synthesis).
read_hdl to load the RTL, then elaborate the top module into a generic netlist.
read_sdc to apply clocks, I/O delays and exceptions.
syn_generic (technology-independent) -> syn_map (map to cells) -> syn_opt (incremental optimisation).
report_timing / report_area / report_power, then write_hdl and write_sdc for Innovus.
read_libs sky130_tt.lib
read_hdl rtl/*.v
elaborate top
read_sdc constraints.sdc
syn_generic
syn_map
syn_opt
report_timing > rpt/timing.rpt
write_hdl > netlist/top.v
write_sdc > netlist/top.sdcGenus concepts worth knowing
- Explicit stages: generic (GTECH) -> mapped (library cells) -> optimized, so you can report and debug between each.
- iSpatial physical synthesis: uses the Innovus placement/optimisation engines during synthesis for accurate physical timing.
- Common UI with Innovus (Stylus): the same constraint and command style flows from synthesis into place-and-route.
- Effort levels on syn_map / syn_opt trade runtime against QoR, much like DC’s effort settings.
| Command | Purpose |
|---|---|
| read_libs | Load the technology (and physical) libraries |
| read_hdl / elaborate | Read RTL and build the design |
| read_sdc | Apply timing constraints |
| syn_generic / syn_map / syn_opt | Generic -> mapped -> optimised synthesis stages |
| report_timing / report_area / report_power | Check QoR |
| write_hdl / write_sdc | Emit the netlist and constraints for Innovus |
In short, Genus runs synthesis as explicit generic -> mapped -> optimised stages, shares a common interface with Innovus, and can pull in real placement (iSpatial) for physically-accurate timing.