These checks are meant to check a certain function in SpyDrNet-TMR:
drc_apply_nmr - meant to be run right after calling apply_nmr() to see if what we specified to be replicated was actually replicated.
drc_surface_pins - meant to be run right after calling surface_pins(). Checks to see if the pins specified to be surfaced were actually surfaced.
drc_uniquify_nmr_property - meant to be run right after calling uniquify_nmr_property(). Checks to see if the instances' properties were actually uniquified.
drc_insert_organs - meant to be run right after calling insert_organs(). Makes sure that voters are where we said we wanted them and that they are wired up correctly.
These are meant to be run after finishing replicating and modifying a design:
drc_connections_after_replication_and_insertion - this check is like a final check of the connections in the replicated design compared to the connections in the original design. This acts as a check for replication and organ insertion. If anything got wired up wrong or is not connected like it was in the original design, this test will fail.
drc_properties_after_replication - can be run anytime after replication. Makes sure properties of instances in the replicated design match up to the corresponding instances in the original design.
The documentation has additional info about these checks. They seem to work well, but of course they can always use more testing and improving.
Now we want to see if there are any other DRC checks that can be written and implemented.
Right now we have the following checks:
These checks are meant to check a certain function in SpyDrNet-TMR:
These are meant to be run after finishing replicating and modifying a design:
The documentation has additional info about these checks. They seem to work well, but of course they can always use more testing and improving.
Now we want to see if there are any other DRC checks that can be written and implemented.