--blackbox names of modules (not instances) inside the design to be blackboxed (i.e. connections treated as outputs or inputs to the circuit): Added to chain, cut
--blackboxModels: Verilog files containing behavioral models for black-boxed instances for simulation: Added to chain, jtag and must be readable by Pyverilog (sorry)
--output-fault-points: Outputs all detected fault points: Added to main
--output-covered: Outputs coverage metadata: Added to main
Created new element, Module, which captures and stores metadata about modules
Rewrote simulation scripts to use an array of models instead of separate cells and includes
Rewrote major parts of fault chain to support multiple macros (and general code quality)
Test Vector Generation Cleanup
Generalized class RNG into TVGenerator (the previous kind was renamed ExternalTVGenerator, should eventually be the same class when I have the time)
Each test vector is generated entirely ahead of time then cut into bits instead of generated segment by segment
Added new TVGenerator, PatternGenerator, that is not random and uses the following pattern(s) depending on the iteration count:
All 0
All 1
Half 0, Half 1
Half 1, Half 0
Alternating 0s and 1s
Alternating 1s and 0s
Moving max(1, min(32, bits/4)) window of 1s (even) and the complement of that (odd)
TVGenerators now take a seed, fixed default seed but can be changed over CLI
Incorporated ARC4RandomNumberGeneratorfrom Swift TensorFlow sources, which is seeded
Fixed a bug where fault asm did not load some input names correctly
Removed smoke test functionality
Removed appimage
Testing
Added new design, TripleDelay, to test the use of macros
fault jtag
simulations--blackbox
names of modules (not instances) inside the design to be blackboxed (i.e. connections treated as outputs or inputs to the circuit): Added tochain
,cut
--blackboxModels
: Verilog files containing behavioral models for black-boxed instances for simulation: Added tochain
,jtag
and must be readable by Pyverilog (sorry)--output-fault-points
: Outputs all detected fault points: Added tomain
--output-covered
: Outputs coverage metadata: Added tomain
Module
, which captures and stores metadata about modulesmodels
instead of separatecells
andincludes
fault chain
to support multiple macros (and general code quality)RNG
intoTVGenerator
(the previous kind was renamedExternalTVGenerator
, should eventually be the same class when I have the time)TVGenerator
,PatternGenerator
, that is not random and uses the following pattern(s) depending on the iteration count:max(1, min(32, bits/4))
window of 1s (even) and the complement of that (odd)TVGenerators
now take a seed, fixed default seed but can be changed over CLIARC4RandomNumberGenerator
from Swift TensorFlow sources, which is seededfault asm
did not load some input names correctlyTesting
TripleDelay
, to test the use of macros