How to use scan (in code?)

Status
Not open for further replies.

wisemonkey

Junior Member level 3
Joined
Apr 1, 2010
Messages
31
Helped
0
Reputation
0
Reaction score
0
Trophy points
1,286
Location
San Jose
Activity points
1,498
Hi everyone,
I've been reading about DFT (Scan in particular). The more I read about it, I keep finding ways to insert scan chain in design with the help of synthesis tools (which is good).
However I wanted to know if that is the only way or we can insert scan chain while writing a verilog code as well? I'm not sure how anyone would break ~200 bit register (assuming its in design) and make it sequential/serial.

All suggestions/opinions are appreciated

Thanks
 

You can do it manually if you choose to do so.
Till a little over 10 years ago, there was no decent DFT tool and we all did stitch the scan chains manually in the netlist.

You can also write a script in perl or any other languages to stitch the scan chain. I haven't done it for insernal scan, but made a script to stitch the boundary scan chain in perl. However, if you want to take care of any other things such as reset/clock bypassing, it would be challenging.
 


ok so if I understand it properly:
write a perl code to
1. search for f/f in netlist (something like DFF2x etc.)
2. replace it with muxed f/f or mux and a f/f

and thanks for the suggestion
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…