2.3. Hammer Tech defaults.yml
defaults.yml for a technology specifies some technology-specific Hammer IR and Meta Variables that should be left as default unless you desire to override them. Some of the them work directly with the keys in the
Most of the keys in the
defaults.yml are a part of the
technology namespaces. An example of the setup of the
defaults.yml is located in
hammer/technology/asap7/defaults.yml and certain important keys should be common to most technology plugins:
vlsi.core.nodedefines the node that the place-and-route tool expects. It affects what kind of licenses are needed.
vlsi.inputsshould at least have the nominal supplies and a typical pair of characterized setup & hold corners.
vlsi.technologyneeds to specify a
placement_siteas defined in the technology LEF, a
bump_block_cut_layerto set blockages under bumps, and optional
tap_cell_offsetfor placing well taps.
technology.coreneeds to specify the stackup to use, which layer the standard cell power rails are on, and a reference cell to draw the lowest layer power rails over.
Tool environment variables (commonly needed for DRC/LVS decks) and other necessary default options specific to the technology should be set in this file. This file can also define technology-specific Hammer IR, in the the namespace
technlogy.<tech_name>.<key_name>. As always, they can be overriden by other snippets of Hammer IR.
The data types for all keys in
defaults.yml can be found in
defaults_types.yml. When adding or overriding to
defaults.yml, make sure that said data types are updated accordingly to prevent problems with the type checker.