bag3_digital.measurement.liberty.io

Module Contents

Functions

generate_liberty(→ None)

async_generate_liberty(→ None)

Generate liberty file for the given cells.

get_cell_info(→ Tuple[Mapping[str, Any], Dict[str, ...)

_pin_info_iter(→ Iterable[Tuple[str, Dict[str, Any]]])

_get_pin_info_list(→ List[Dict[str, Any]])

_get(→ Any)

_add_cell(→ None)

_add_pins(→ None)

bag3_digital.measurement.liberty.io.generate_liberty(prj: bag.core.BagProject, lib_config: Mapping[str, Any], sim_config: Mapping[str, Any], specs: Mapping[str, Any], fake: bool = False, extract: bool = False, force_sim: bool = False, force_extract: bool = False, gen_all_env: bool = False, gen_cell: bool = False, gen_cell_dut: bool = False, gen_cell_tb: bool = False, export_lay: bool = False, log_level: pybag.enum.LogLevel = LogLevel.DEBUG) None[source]
async bag3_digital.measurement.liberty.io.async_generate_liberty(prj: bag.core.BagProject, lib_config: Mapping[str, Any], sim_config: Mapping[str, Any], cell_specs: Mapping[str, Any], fake: bool = False, extract: bool = False, force_sim: bool = False, force_extract: bool = False, gen_all_env: bool = False, gen_cell_dut: bool = False, gen_cell_tb: bool = False, export_lay: bool = False, log_level: pybag.enum.LogLevel = LogLevel.DEBUG) None[source]

Generate liberty file for the given cells.

Parameters:
  • prj (BagProject) – BagProject object to be able to generate things

  • lib_config (Mapping[str, Any]) – library configuration dictionary.

  • sim_config (Mapping[str, Any]) – simulation configuration dictionary.

  • cell_specs (Mapping[str, Any]) – cell specification dictionary.

  • fake (bool) – True to generate fake liberty file.

  • extract (bool) – True to run extraction.

  • force_sim (bool) – True to force simulation runs.

  • force_extract (bool) – True to force extraction runs.

  • gen_all_env (bool) – True to generate liberty files for all environments.

  • gen_cell_dut (bool) – True to generate DUT schematics.

  • gen_cell_tb (bool) – True to generate TB schematics.

  • export_lay (bool) – Use CAD tool to export layout.

  • log_level (LogLevel) – stdout logging level.

bag3_digital.measurement.liberty.io.get_cell_info(lib: bag3_liberty.data.Library, impl_cell: str, cell_specs: Mapping[str, Any], lib_root_dir: pathlib.Path, voltage_fmt: str) Tuple[Mapping[str, Any], Dict[str, Any], pathlib.Path][source]
bag3_digital.measurement.liberty.io._pin_info_iter(pin_list: List[Dict[str, Any]]) Iterable[Tuple[str, Dict[str, Any]]][source]
bag3_digital.measurement.liberty.io._get_pin_info_list(src_list: Sequence[Mapping[str, Any]], defaults: Mapping[str, Any], pwr_domain: Dict[str, Tuple[str, str]], reset_table: Optional[Dict[str, bool]] = None, in_cap_table: Optional[Dict[str, float]] = None, cap_guess: float = 1e-15) List[Dict[str, Any]][source]
bag3_digital.measurement.liberty.io._get(key: str, dict1: Mapping[str, Any], dict2: Mapping[str, Any]) Any[source]
bag3_digital.measurement.liberty.io._add_cell(lib: bag3_liberty.data.Library, cell_info: Mapping[str, Any], pin_data: Mapping[str, Mapping[str, Any]]) None[source]
bag3_digital.measurement.liberty.io._add_pins(cell: bag3_liberty.data.Cell, pin_type: bag3_liberty.enum.TermType, pin_list: List[Dict[str, Any]], pin_data: Mapping[str, Mapping[str, Any]]) None[source]