vyges-dft — scan insertion
Installed with the physical engines. Install it with
vyges install physical, then runvyges physical dft. It is also a standalonevyges-dftbinary on your PATH (the integration contract for flow authors). Source: vyges-tools/dft.
A chip has to be testable once it is made. Scan chains turn every flip-flop into a point a tester
can set and read; vyges-dft builds them in the design database.
| command | does |
|---|---|
replace | each flip-flop replaced by its closest scan equivalent in the library |
report | the scan chains as they would be built, by clock domain and edge |
run | the planned chains stitched (scan out to scan in, enables and ports added) and recorded |
Run it
vyges install physical # one-time
vyges physical dft replace synth.odb --liberty cells.lib -o scan.odb
vyges physical dft report scan.odb --liberty cells.lib --sdc top.sdc --max-length 100
vyges physical dft run scan.odb --liberty cells.lib --sdc top.sdc --max-length 100 -o stitched.odb
--max-length and --max-chains bound the chains; --clock-mixing no_mix keeps every chain in
one clock domain, clock_mix lets a chain cross them. replace refuses a library where two scan
cells are equally close in drive to a flop, rather than pick one arbitrarily.