-
Notifications
You must be signed in to change notification settings - Fork 59
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Misc small fixes: Joules, Sky130 srams, A-machines setup (#821)
* fixing paths on A machines * adding more reporting options and documentation * Create README.md * Update README.md * small fix * all report power commands work * changed joules tcl name * different simv names * small fixes * adding wmask to all Sram22 SRAMs to match behavioral verilog and pass sim * time-based analysis turned off when not required to save time * small e2e tweaks * fixing paths on A machines * joules docs update * reverting vcs file * reverting vcs file * added link to joules readme, removed old comment
- Loading branch information
Showing
11 changed files
with
279 additions
and
111 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
../../hammer/power/joules/README.md |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -8,29 +8,33 @@ cadence.CDS_LIC_FILE: "[email protected]:[email protected] | |
cadence.extra_env_vars: [{"LM_PROJECT": "bwrc_users"}] | ||
|
||
synopsys.synopsys_home: "/ecad/tools/synopsys" | ||
synopsys.SNPSLMD_LICENSE_FILE: "[email protected]:[email protected]" | ||
synopsys.SNPSLMD_LICENSE_FILE: "[email protected]:[email protected]:[email protected]" | ||
synopsys.MGLS_LICENSE_FILE: "[email protected]:[email protected]" | ||
|
||
# Commercial tool versions | ||
synthesis.genus.version: "211" | ||
par.innovus.version: "211" | ||
power.joules.version: "201" | ||
synthesis.genus.genus_bin: "/ecad/tools/cadence/GENUS/GENUS211/bin/genus" # must point to binaries bc Hammer assumes DDI path now | ||
par.innovus.innovus_bin: "/ecad/tools/cadence/INNOVUS/INNOVUS211/bin/innovus" | ||
sim.vcs.version: "P-2019.06-SP1" | ||
sim.vcs.verdi_home: "/ecad/tools/synopsys/verdi/P-2019.06-SP2-2" | ||
power.joules.joules_bin: "/ecad/tools/cadence/JLS/JLS201/bin/joules" | ||
sim.vcs.version: "S-2021.09-SP1-1" | ||
sim.vcs.verdi_home: "/ecad/tools/synopsys/verdi/S-2021.09-SP1-1" | ||
sim.vcs.verdi_home_meta: lazysubst | ||
lvs.calibre.version: "2022.2_24.16" | ||
drc.calibre.version: "2022.2_24.16" | ||
|
||
# Open-source tool paths | ||
synthesis.yosys.yosys_bin: "/nscratch/vighneshiyer/miniconda3/envs/sky130/bin/yosys" | ||
par.openroad.openroad_bin: "/nscratch/vighneshiyer/miniconda3/envs/sky130/bin/openroad" | ||
drc.magic.magic_bin: "/nscratch/vighneshiyer/miniconda3/envs/sky130/bin/magic" | ||
lvs.netgen.netgen_bin: "/nscratch/vighneshiyer/miniconda3/envs/sky130/bin/netgen" | ||
synthesis.yosys.yosys_bin: "/nscratch/sky130/conda-yosys/bin/yosys" | ||
par.openroad.openroad_bin: "/nscratch/sky130/conda-openroad/bin/openroad" | ||
par.openroad.klayout_bin: "/nscratch/sky130/conda-klayout/bin/klayout" | ||
drc.klayout.klayout_bin: "/nscratch/sky130/conda-klayout/bin/klayout" | ||
drc.magic.magic_bin: "/nscratch/sky130/conda-signoff/bin/magic" | ||
lvs.netgen.netgen_bin: "/nscratch/sky130/conda-signoff/bin/netgen" | ||
|
||
# Sky130 paths | ||
technology.sky130: | ||
sky130A: "/nscratch/vighneshiyer/miniconda3/envs/sky130/share/pdk/sky130A" | ||
sky130A: "/nscratch/sky130/conda-sky130/share/pdk/sky130A" | ||
sram22_sky130_macros: "/nscratch/sky130/sram22_sky130_macros" | ||
# sky130_nda: | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
Cadence Joules RTL Power Tool Plugin | ||
==================================== | ||
|
||
Tool Steps | ||
---------- | ||
|
||
See ``__init__.py`` for the implementation of these steps. | ||
|
||
init_design | ||
synthesize_design | ||
report_power | ||
|
||
|
||
A variety of different output reports may be generated with this tool. | ||
Within the [Hammer default configs file](https://github.com/ucb-bar/hammer/blob/joules-fixes/hammer/config/defaults.yml), | ||
the `power.inputs.report_configs` struct description | ||
contains a summary of the different reporting options, specified via the `output_formats` struct field. | ||
|
||
Known Issues | ||
------------ | ||
|
||
* Joules supports saving the read stimulus file to the SDB (stimulus database) format via the `write_sdb` command. However, subsequent reads of this SDB file via the `read_sdb` command fail for no apparent reason | ||
* As a result, `read_stimulus`/`compute_power` cannot be a separate step in the plugin, because there is no way to save the results of these commands before running the various power reporting commands. | ||
Thus these two commands are run as part of the `report_power` step. | ||
* NOTE: this might not be a problem anymore with the new Joules version, so we should re-try this!! |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.