United Business Media EE Times


Search

HOMEMARKET INTELLIGENCE UNITFORUMSDESIGNNEW PRODUCTSCAREERSBLOGSCONTACTEVENTSSIGN UP!RSSMost Popular contentTrusted Sources

 


A thankless, critical task
Print this article Email this article Reprints RSS Digital Edition

EE Times


Fixing the hold times on scan chains is like working on the septic system of a country house. Nobody praises you for doing it well, but people notice when it's not working right. And I don't want to be worrying about circuits there just to test my design anyway. Like most people, I just like to flush the toilet and forget about it, thank you.

With this in mind, I was happy to publish in ESNUG 404 (http://www.DeepChip.com/posts/0404.html) a letter and some Design Compiler scripts from David Simmons of Toshiba that automatically cleaned up hold time problems on scan chains. "Hold time problems in scan chain shift timing can be fixed by a recompile, of course, but care must be taken to keep Design Compiler from doing anything to create problems with functional logic. This usually requires multiple compile scripts with 'case' statements and repeated timing runs to monitor dc's effect on the netlist," David writes. "Reordering the scan chain in order of clock delays is another solution to fixing scan shift hold time problems, but it's somewhat more complicated to automate."

Although I haven't had a chance to try David's scripts on a customer's chip yet, I did take a quick look to see how they worked. Basically he searches for hold violators on the TI pins in all flip-flops in your design and then he repeatedly buffers up their inputs (as a post-layout ECO) until the hold times are met.

I liked his clever use of date codes in the buffering iteration process. "The date code prevents identical-instance names from being generated in the unlikely event that the script finds the same error twice on the same design, in successive ECO cycles," reports David.

And in all modesty, David doesn't claim his scripts are perfect. "One thing to keep in mind is that when inserting cells in a post-layout, SDF-annotated netlist, new nodes are created for which SDF annotation will not exist and which will be timed using whatever other timing parameters Design Time can find (typically wire loads)," he warns. "So as the script repeatedly runs looking for hold violations, it may inaccurately assess the remaining violations from inaccurate timing due to missing SDF annotation. Worst case, this results in another ECO cycle. I will fix this problem some time in the year 2073, when the EDA industry has finally succeeded in interactively coupling layout with synthesis."

David's perfectionism aside, I'll be using his scripts in my next chip.

John Cooley runs the e-mail synopsys users group (esnug), is a contract asic designer and loves hearing from engineers at jcooley@theworld.com or (508) 429-4357.





The views and opinions expressed in this column are strictly those of the author and should not be taken as an editorial position of EE Times or any of its other editors, publications or Web sites.


  Free Subscription to EE Times
First Name Last Name
Company Name Title
Email address
  Click here for your Free Subscription to EETimes Europe
 
CAREER CENTER
Looking for a new job?
SEARCH JOBS
SPONSOR

RECENT JOB POSTINGS
CAREER NEWS
SRC Expands R&D Centers
The Semiconductor Research Corp has added a new center to its university R&D efforts.

For more great jobs, career related news, features and services, please visit EETimes' Career Center.



All White Papers »   

  Design Resources
Designing for a dual Galileo-based GPS system
Malcolm Lomer of SiGe Semiconductor discusses GPS design challenges with the Galileo satellite system.
More »
 
Education and
Learning


Learn Now:












Home | About | Editorial Calendar | Feedback | Subscriptions | Newsletter | Media Kit | Contact | Reprints|  RSS|   Digital|  Mobile
Network Websites
International
Network Features




All materials on this site Copyright © 2009 TechInsights, a Division of United Business Media LLC All rights reserved.
Privacy Statement | Terms of Service | About