Kaleb Barrett
Kaleb Barrett
We can decrease the possibility of collisions in `HierarchyObject` by placing all attributes into a object on a special `__impl__` attribute. That will allow us to decrease the collision set...
Right now `ArrayObject` takes two type arguments: `ValueType` and `ElemType` (or whatever they are called). This can make array type annotations more complicated than they need to be. For example:...
`Event` is a stateful event type. It starts "unfinished" and becomes "done" after `Event.set()` is called. `await Event.wait()` blocks until the Event enters the done state; and when in the...
Sim object metadata, such as the name, full path of the object, type name, etc. are located in the `SimHandleBase` class on attributes that start with a `_`. This is...
Speed up sim handle access by putting non-colliding sub objects into the parent's `__dict__` using `setattr(self, name, handle)`.
From IEEE 1800-2017 38.36.3 >**cbEndOfSimulation** End of simulation (simulation ended because no more events remain in the event queue or a $finish system task executed) From IEEE 1800-2017 38.4 >...
From IEEE 1800-2017 38.36.3 >**cbEndOfSimulation** End of simulation (simulation ended because no more events remain in the event queue or a $finish system task executed) From IEEE 1800-2017 38.4 >...
Closes #2274. Closes #2312. Closes #678. * Random cleanup and fixing leak in handle_gpi_callback in simulator.so * libgpilog, libgpi, libembed, and half of libcocotb_utils were merged into libgpi. * libpygpilog,...
## How it works now When the VPI or VHPI entry point are loaded, a startup and shutdown callback are registered which call `gpi_embed_init` and `gpi_embed_end`. `gpi_embed_init` calls `embed_sim_init` and...
Right now the scheduler is only capable of scheduling Tasks, not arbitrary callbacks. This is preventing solving #4572. The scheduler should allow users to schedule arbitrary callbacks and return a...