A collection of classes providing simple hardware specification, simulation, tracing, and testing suitable for teaching and research. Simplicity, usability, clarity, and extensibility are the overarching goals, rather than performance or optimization.
To support newer Pythons (>= 3.9), this line: https://github.com/UCSBarchlab/PyRTL/blob/5de365219705cdc1116f3d7efe938f49e888d449/pyrtl/simulation.py#L1031
Should use
collections.abc.Mapping
instead ofcollections.Mapping
.If you need to support both Python 2.x and Python 3.x, you can use one of the methods proposed here: https://stackoverflow.com/questions/53978542/how-to-use-collections-abc-from-both-python-3-8-and-python-2-7