Browse Prior Art Database

Method for System on Chip timing path annotation

IP.com Disclosure Number: IPCOM000013596D
Original Publication Date: 2001-May-18
Included in the Prior Art Database: 2003-Jun-18
Document File: 2 page(s) / 43K

Publishing Venue

IBM

Abstract

System On Chip (SOC) refers to large chips which include several functional units such as a processor core and memory subsystem which in the past they would have reside in separate chips. One consequence of these large chips is that they have a lot of timing paths. Timing paths are measurements of how long it takes an electrical signal to travel from the start of an electronic circuit, until it reaches the end of the circuit. The start of a timing path can be a storage element such as a latch. The data output of this latch usually connected to a series of electronic circuits and the result of this circuit is usually captured by another storage element such as a latch. This is where the timing path usually ends. It is important that these timing paths arrive at a certain time so that the capture latch can sample the result of the circuit. This is the main reason that a chip can run at certain clock frequency. During chip development, every possible timing path is measured and reported using a "Static Timing" tool such as Einstimer or Pathmill. These tools will print a report, which by nature of SOC, is very large. The job of the design engineer is to look through the report and fix timing paths by changing the circuit that does not meet clock frequency.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 52% of the total text.

Page 1 of 2

Method for System on Chip timing path annotation

System On Chip (SOC) refers to large chips which include several functional units such as a processor core and memory subsystem which in the past they would have reside in separate chips.

One consequence of these large chips is that they have a lot of timing paths. Timing paths are measurements of how long it takes an electrical signal to travel from the start of an electronic circuit, until it reaches the end of the circuit. The start of a timing path can be a storage element such as a latch. The data output of this latch usually connected to a series of electronic circuits and the result of this circuit is usually captured by another storage element such as a latch. This is where the timing path usually ends.

It is important that these timing paths arrive at a certain time so that the capture latch can sample the result of the circuit. This is the main reason that a chip can run at certain clock frequency.

During chip development, every possible timing path is measured and reported using a "Static Timing" tool such as Einstimer or Pathmill. These tools will print a report, which by nature of SOC, is very large. The job of the design engineer is to look through the report and fix timing paths by changing the circuit that does not meet clock frequency.

Having the engineer work through all paths is enormous task. However, in the course of the design cycle reports are generated to test each new circuit change for a new timing solution. This could be as frequent as once a day. This would add up to hundreds or even more total reports during the entire project that the engineer needs to analyze. There is too many timing paths to keep track of. An engineer cannot do this work in a fast and efficient manner.

This invention is a tool that provides a way for an engineer to annotate these timing paths. By annotating each path the engineer can rapidly remember things about the path such as the characteristics, what was done with it, and what other possibilities to try. This tool will preserve the annotations across several iterations of timing reports,
i.e. when another timing run is done, this tool can identify a path that has been annotated and carries forward the comments to the new report. Between timing runs, the timing path in the reports are never the same place number or place in the report.

The result of this tool is a simplified summary report of all timing paths. This summary report will have references to the large Static timing report, how much time is the path missing, and the annotations for each path. Example of report:

# Gen...