Multi-Cycle Paths and False Paths in Static Timing Analysis

Murugavel
Written by
0


Here is a summary of this insightful EDN article

Introduction: The article discusses the challenges and importance of identifying timing exceptions in RTL design, such as false paths and multi-cycle paths. These are paths that do not need to meet the single-cycle timing constraint and can be ignored or relaxed by the synthesis and timing tools. The article provides examples of false and multi-cycle path exceptions that are often missed by designers and are found through iterations on timing reports.

  • False Paths: False paths are those timing arcs in design where changes in source registers are not expected to get captured by the destination register within a particular time interval. The article categorizes false paths into static and dynamic types. Static false paths are those where the source register never affects the destination register, regardless of the input vector. Dynamic false paths are those where the source register affects the destination register only under certain conditions, such as mode selection, clock gating, or reset. The article gives examples of false paths in different design scenarios, such as DMA controller, I/O, and reset.
  • Multi-Cycle Paths: Multi-cycle paths are those timing arcs in design where the destination register is expected to capture the data from the source register after more than one clock cycle. The article explains the difference between functional and non-functional multi-cycle paths. Functional multi-cycle paths are those where the data is valid only after a certain number of cycles, such as pipeline stages, FIFOs, or counters. Non-functional multi-cycle paths are those where the data is valid after one cycle, but the timing constraint can be relaxed due to some factors, such as clock skew, data stability, or clock domain crossing. The article gives examples of multi-cycle paths in different design scenarios, such as pipeline, FIFO, and CDC.
  • Timing exceptions are the constraints that specify the false and multi-cycle paths to the synthesis and timing tools. They help the tools to avoid unnecessary optimization of these paths and focus on the critical paths that need to meet the timing requirements.
  • Timing reports are the outputs of the synthesis and timing tools that show the status of the timing analysis, the critical and failing paths, and the slack and delay values. They can be used to identify the false and multi-cycle paths that are not defined as exceptions and to verify the correctness of the exceptions.
Conclusion: The article concludes by emphasizing the benefits of identifying timing exceptions upfront, such as reducing the synthesis and timing optimization time, improving the area and power efficiency, and avoiding timing closure issues. The article also suggests some best practices for defining timing exceptions, such as using consistent naming conventions, documenting the exceptions, and verifying the exceptions with simulation and formal methods.

Post a Comment

0Comments

Your comments will be moderated before it can appear here. Win prizes for being an engaged reader.

Post a Comment (0)

#buttons=(Ok, Go it!) #days=(20)

Our website uses cookies to enhance your experience. Learn more
Ok, Go it!