Wednesday, 11 November 2015

Start Point and End Point of STA

Any given timing path need to begin from a valid startpoint and end on a valid endpoint.
The following are valid startpoints:

  • A primary input port.
  • Capturing pin of a sequential cell (D pin of a flop, a latch or synchronous reset/set pins of a reset/set flop).
The following are valid endpoints:
  • A primary output port.
  • Launching pin of a sequential cell (CK pin of a flop or EN pin of a latch).
As evident from the number of start and end point types given above, any design with atleast two sequential cells, there can be 4 types of timing paths.
  • Input to Register - Starting on a primary input port and ending on a capturing pin of a register
  • Register to output - Starting on a launching pin of a flop and ending on an output port.
  • Register to Register - Starting on a launching pin of a flop and ending on a capturing pin of a register
  • Input to Output - Starting on a primary input port and ending on an output port.
Any valid timing path should be one of the above types.
There are several other types given by tools such as default, macro pins as startpoint and endpoint, which adds one additional startpoint type and one additional endpoint type and corresponding combinations of the timing paths. But, a macro in general can be considered as a register with many endpoints (input ports) and possibly many start points (clock pins).

2 comments:

  1. "Capturing pin of a sequential cell (D pin of a flop, a latch or synchronous reset/set pins of a reset/set flop)"
    This is a valid endpoint not a start point, please correct. A valid start point would be the CK pin.

    ReplyDelete
  2. "Capturing pin of a sequential cell (D pin of a flop, a latch or synchronous reset/set pins of a reset/set flop)"
    This is a valid endpoint not a start point, please correct. A valid start point would be the CK pin.

    ReplyDelete