Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
dsd1-10 / dsd-07=Verilog / backan.pdf
Скачиваний:
81
Добавлен:
05.06.2015
Размер:
697.19 Кб
Скачать

PLI 1.0™ Application Note - Back

Annotation and Delay Calculation

Product Version 3.2

October 2000

© 1990-2000 Cadence Design Systems, Inc. All rights reserved. Printed in the United States of America.

Cadence Design Systems, Inc., 555 River Oaks Parkway, San Jose, CA 95134, USA

Trademarks: Trademarks and service marks of Cadence Design Systems, Inc. (Cadence) contained in this document are attributed to Cadence with the appropriate symbol. For queries regarding Cadence’s trademarks, contact the corporate legal department at the address shown above or call 1-800-862-4522.

All other trademarks are the property of their respective holders.

Restricted Print Permission: This publication is protected by copyright and any unauthorized use of this publication may violate copyright, trademark, and other laws. Except as specified in this permission statement, this publication may not be copied, reproduced, modified, published, uploaded, posted, transmitted, or distributed in any way, without prior written permission from Cadence. This statement grants you permission to print one (1) hard copy of this publication subject to the following conditions:

1.The publication may be used solely for personal, informational, and noncommercial purposes;

2.The publication may not be modified in any way;

3.Any copy of the publication or portion thereof must include all original copyright, trademark, and other proprietary notices and this permission statement; and

4.Cadence reserves the right to revoke this authorization at any time, and any such use shall be discontinued immediately upon written notice from Cadence.

Disclaimer: Information in this publication is subject to change without notice and does not represent a commitment on the part of Cadence. The information contained herein is the proprietary and confidential information of Cadence or its licensors, and is supplied subject to, and may be used only by Cadence’s customer in accordance with, a written agreement between Cadence and its customer. Except as may be explicitly set forth in such agreement, Cadence does not make, and expressly disclaims, any representations or warranties as to the completeness, accuracy or usefulness of the information contained in this document. Cadence does not warrant that use of such information will not infringe any third party rights, nor does Cadence assume any liability for damages or costs of any kind that may result from use of such information.

Restricted Rights: Use, duplication, or disclosure by the Government is subject to restrictions as set forth in FAR52.227-14 and DFAR252.227-7013 et seq. or its successor.

Back Annotation and Delay Calculation

Contents

1

 

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. 7

About These Application Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7

What Is a Cell? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8

Cell Interconnect Delays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8

What Is Delay Back Annotation? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9

What Is Delay Calculation? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

10

Prerequisites and Related Reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11

2

 

Creating a Back Annotator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13

The Programming Language Interface (PLI) Mechanism . . . . . . . . . . . . . . . . . . . . . . . .

13

PLI Access Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14

Access Routine Families . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

Required UTILITY Routines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

15

Access to Timing Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

16

Identifying Cells and Manipulating Cell Definition Data . . . . . . . . . . . . . . . . . . . . . . .

17

Effect of Source Protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18

Where to Look for More Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

19

3

 

Back Annotating Delays. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

20

Examples Used in This Chapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

20

Retrieving a Handle to the Object Associated with the Delay . . . . . . . . . . . . . . . . . . . . .

26

Retrieving a Handle to a Net . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

26

Retrieving a Handle to a Module Path Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27

Retrieving a Handle to a Timing Check . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

29

Annotating the Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

33

Determining How and Where to Place Delays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

33

Annotating to Cells with Path Delays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

34

October 2000

3

Product Version 3.2

Back Annotation and Delay Calculation

Annotating to Cells with Lumped or Distributed Delays . . . . . . . . . . . . . . . . . . . . . . .

38

Libraries with Mixed Cell Timing Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

40

Annotating to Timing Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

41

4

 

Calculating Delays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. 42

Examples Used in This Chapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

42

Scanning Cell Instances Within the Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

48

Determining the Scope of the Delay Calculation . . . . . . . . . . . . . . . . . . . . . . . . . . . .

48

Scan Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

50

Scanning Objects Within the Cell Instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

52

Relationship to Modeling Methodology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

52

Scanning Path Delays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

52

Scanning Cell Output Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

54

Libraries with Mixed Cell Timing Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

56

Providing and Retrieving Delay

 

Calculation Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

56

Types of Data Needed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

56

Coding Data into Cell Descriptions (Attributes) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

56

Retrieving Cell I/O Load Factors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

61

Load Due to Interconnect Wire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

63

Calculating and Annotating the Delays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

85

Calculating the Delays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

85

Annotating the Delays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

86

5

 

Example Listings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

93

Delay Back Annotators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

93

Cell Output Nets to Lumped or Distributed Delay Cells . . . . . . . . . . . . . . . . . . . . . . .

93

Interconnect Nets to Lumped or Distributed Delay Cells . . . . . . . . . . . . . . . . . . . . . .

95

Cell Output Nets to Path Delay Cells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

97

Interconnect Nets to Path Delay Cells . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

99

Explicitly Identified Path Delays and Timing Checks . . . . . . . . . . . . . . . . . . . . . . . .

102

Delay Calculators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

105

Creating and Extracting Data From a Hash Table . . . . . . . . . . . . . . . . . . . . . . . . . .

105

October 2000

4

Product Version 3.2

Back Annotation and Delay Calculation

 

Random Cell Scan and Cell Output Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

109

Random Cell Scan and Cell Interconnect Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . .

118

Delay Calculation Driven by Cell Output Nets . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

128

Delay Calculation Driven by a Cell Interconnect Nets . . . . . . . . . . . . . . . . . . . . . . .

135

Index..............................................................................................................................

143

October 2000

5

Product Version 3.2

Back Annotation and Delay Calculation

October 2000

6

Product Version 3.2

Соседние файлы в папке dsd-07=Verilog