5.2.8. Blocking vs non-blocking-race condition
Never mix a description of
combinational (blocking) construct with sequential (nonblocking).
Blocking: combinational àracing
Since the final outputs depend on the order in which the assignments
are evaluated, blocking assignments within sequential block may cause race
condition.
Nonblocking: sequential àNo race condition
Nonblockng assignments closely resemble hardware as they are order
independent.
Most of the applications which
require data transfer within module required to be written using non-blocking
assignment statement.
References
[HM] Himanshu Bhatnagar, Advanced ASIC chip Synthesis Using Synopsys Design Compiler, Physical Compiler and PrimeTime, Kluwer Academic Publishers, Second edition, 2002
[DC] Design Compiler® User Guide, Version X-2005.09, September 2005
[HM] Himanshu Bhatnagar, Advanced ASIC chip Synthesis Using Synopsys Design Compiler, Physical Compiler and PrimeTime, Kluwer Academic Publishers, Second edition, 2002
[DC] Design Compiler® User Guide, Version X-2005.09, September 2005
[RC] Using Encounter® RTL Compiler, Product Version 8.1.202, April 2009
[BH] J. Bhasker,
Rakesh Chadha, Static Timing Analysis
for Nanometer Designs A Practical Approach, 2009
No comments:
Post a Comment
Your Comments... (comments are moderated)