bag3_digital.measurement.serdes.ser_Nto1

Module Contents

Classes

SerNto1Meas

A class that handles circuit performance measurement.

class bag3_digital.measurement.serdes.ser_Nto1.SerNto1Meas(meas_specs: Mapping[str, Any], log_file: str, log_level: pybag.enum.LogLevel = LogLevel.DEBUG, precision: int = 6)[source]

Bases: bag.simulation.measure.MeasurementManager

A class that handles circuit performance measurement.

This class handles all the steps needed to measure a specific performance metric of the device-under-test. This may involve creating and simulating multiple different testbenches, where configuration of successive testbenches depends on previous simulation results. This class reduces the potentially complex measurement tasks into a few simple abstract methods that designers simply have to implement.

async async_measure_performance(name: str, sim_dir: pathlib.Path, sim_db: bag.simulation.cache.SimulationDB, dut: Optional[bag.simulation.cache.DesignInstance], harnesses: Optional[Sequence[bag.simulation.cache.DesignInstance]] = None) Mapping[str, Any][source]

A coroutine that performs measurement.

Parameters:
  • name (str) – name of this measurement.

  • sim_dir (Path) – simulation directory.

  • sim_db (SimulationDB) – the simulation database object.

  • dut (Optional[DesignInstance]) – the DUT to measure.

  • harnesses (Optional[Sequence[DesignInstance]]) – the list of DUT and harnesses to measure.

Returns:

output – the measurement results.

Return type:

Mapping[str, Any]

async async_meas_pvt(name: str, sim_dir: pathlib.Path, sim_db: bag.simulation.cache.SimulationDB, dut: Optional[bag.simulation.cache.DesignInstance], harnesses: Optional[Sequence[bag.simulation.cache.DesignInstance]], pvt: str) bag.simulation.data.SimData[source]
plot_results(results: Mapping[str, bag.simulation.data.SimData]) None[source]