Shopping Cart

No products in the cart.

IEEE 1603-2003

$215.58

IEEE Standard for an Advanced Library Format (ALF) Describing Integrated Circuit (IC) Technology, Cells, and Blocks

Published By Publication Date Number of Pages
IEEE 2003 293
Guaranteed Safe Checkout
Category:

If you have any questions, feel free to reach out to our online customer service team by clicking on the bottom right corner. We’re here to assist you 24/7.
Email:[email protected]

New IEEE Standard – Inactive-Withdrawn. Superseded by IEC/IEEE 62265-2005. ALF shall serve as the data specification language of library elements for design applications used to implement integrated circuits. The range of abstraction shall include from the register-transfer level (RTL) to the physical level. The language shall model behavior, timing, power, signal integrity, physical abstraction and physical implementation rules of library elements. The purpose of ALF is to provide a modeling language and semantics for functional, physical and electrical performance description of technology-specific libraries for cell-based and block-based design. Without a standard, design implementation tools would use multiple proprietary and tool-specific library descriptions. The semantics would be defined by tool implementations only, which are subject to change and prone to mis- interpretation. Also there would be redundancy using multiple descriptions for similar library aspects. Therefore a standard is proposed to create a consistent library view suitable as a reference for all design implementation applications.

PDF Catalog

PDF Pages PDF Title
1 IEEE Standard for an Advanced Library Format (ALF) Describing Integrated Circuit (IC) Technology, Cells, and Blocks
4 Introduction
6 Participants
7 Contents
14 1. Overview
1.1 Scope and purpose
15 1.2 Application of this standard
1.2.1 Creation and characterization of library elements
17 1.2.2 Basic implementation and performance analysis of an IC
18 1.2.3 Hierarchical implementation and virtual prototyping of an IC
21 1.3 Conventions used in this standard
1.4 Contents of this standard
22 2. References
3. Definitions
23 4. Acronyms
24 5. ALF language construction principles
25 5.1 ALF metalanguage
26 5.2 Categories of ALF statements
28 5.3 Generic objects and library-specific objects
30 5.4 Singular statements and plural statements
31 5.5 Instantiation statement and assignment statement
33 5.6 Annotation, arithmetic model, and related statements
34 5.7 Statements for parser control
35 5.8 Name space and visibility of statements
6. Lexical rules
6.1 Character set
37 6.2 Comment
38 6.3 Delimiter
6.4 Operator
39 6.4.1 Arithmetic operator
6.4.2 Boolean operator
40 6.4.3 Relational operator
41 6.4.4 Shift operator
6.4.5 Event operator
6.4.6 Meta operator
42 6.5 Number
6.6 Index value and index
43 6.7 Multiplier prefix symbol and multiplier prefix value
44 6.8 Bit literal
45 6.9 Based literal
6.10 Boolean value
6.11 Arithmetic value
46 6.12 Edge literal and edge value
6.13 Identifier
47 6.13.1 Non-escaped identifier
6.13.2 Placeholder identifier
6.13.3 Indexed identifier
6.13.4 Full hierarchical identifier
48 6.13.5 Partial hierarchical identifier
6.13.6 Escaped identifier
49 6.13.7 Keyword identifier
6.14 Quoted string
50 6.15 String value
6.16 Generic value
51 6.17 Vector expression macro
6.18 Rules for whitespace usage
6.19 Rules against parser ambiguity
52 7. Generic objects and related statements
7.1 Generic object
7.2 All purpose item
53 7.3 Annotation
7.4 Annotation container
7.5 ATTRIBUTE statement
54 7.6 PROPERTY statement
7.7 ALIAS declaration
55 7.8 CONSTANT declaration
7.9 KEYWORD declaration
56 7.10 SEMANTICS declaration
57 7.11 Annotations and rules related to a KEYWORD or a SEMANTICS declaration
7.11.1 VALUETYPE annotation
59 7.11.2 VALUES annotation
7.11.3 DEFAULT annotation
60 7.11.4 CONTEXT annotation
61 7.11.5 REFERENCETYPE annotation
62 7.11.6 SI_MODEL annotation
63 7.11.7 Rules for legal usage of KEYWORD and SEMANTICS declaration
64 7.12 CLASS declaration
7.13 Annotations related to a CLASS declaration
7.13.1 General CLASS reference annotation
65 7.13.2 USAGE annotation
66 7.14 GROUP declaration
67 7.15 TEMPLATE declaration
68 7.16 TEMPLATE instantiation
71 7.17 INCLUDE statement
7.18 ASSOCIATE statement and FORMAT annotation
72 7.19 REVISION statement
73 8. Library-specific objects and related statements
8.1 Library-specific object
74 8.2 LIBRARY and SUBLIBRARY declaration
8.3 Annotations related to a LIBRARY or a SUBLIBRARY declaration
8.3.1 LIBRARY reference annotation
75 8.3.2 INFORMATION annotation container
76 8.4 CELL declaration
77 8.5 Annotations related to a CELL declaration
8.5.1 CELL reference annotation
8.5.2 CELLTYPE annotation
78 8.5.3 RESTRICT_CLASS annotation
80 8.5.4 SWAP_CLASS annotation
8.5.5 SCAN_TYPE annotation
81 8.5.6 SCAN_USAGE annotation
82 8.5.7 BUFFERTYPE annotation
8.5.8 DRIVERTYPE annotation
83 8.5.9 PARALLEL_DRIVE annotation
8.5.10 PLACEMENT_TYPE annotation
84 8.5.11 SITE reference annotation for a CELL
8.5.12 ATTRIBUTE values for a CELL
86 8.6 PIN declaration
87 8.7 PINGROUP declaration
88 8.8 Annotations related to a PIN or a PINGROUP declaration
8.8.1 PIN reference annotation
8.8.2 MEMBERS annotation
8.8.3 VIEW annotation
89 8.8.4 PINTYPE annotation
90 8.8.5 DIRECTION annotation
91 8.8.6 SIGNALTYPE annotation
93 8.8.7 ACTION annotation
94 8.8.8 POLARITY annotation
95 8.8.9 CONTROL_POLARITY annotation container
96 8.8.10 DATATYPE annotation
97 8.8.11 INITIAL_VALUE annotation
8.8.12 SCAN_POSITION annotation
8.8.13 STUCK annotation
98 8.8.14 SUPPLYTYPE annotation
99 8.8.15 SIGNAL_CLASS annotation
8.8.16 SUPPLY_CLASS annotation
101 8.8.17 DRIVETYPE annotation
102 8.8.18 SCOPE annotation
8.8.19 CONNECT_CLASS annotation
103 8.8.20 SIDE annotation
8.8.21 ROW and COLUMN annotation
104 8.8.22 ROUTING_TYPE annotation
105 8.8.23 PULL annotation
106 8.8.24 ATTRIBUTE values for a PIN or a PINGROUP
108 8.9 PRIMITIVE declaration
8.10 WIRE declaration
8.11 Annotations related to a WIRE declaration
8.11.1 WIRE reference annotation
109 8.11.2 WIRETYPE annotation
8.11.3 SELECT_CLASS annotation
110 8.12 NODE declaration
111 8.13 Annotations related to a NODE declaration
8.13.1 NODE reference annotation
8.13.2 NODETYPE annotation
112 8.13.3 NODE_CLASS annotation
113 8.14 VECTOR declaration
8.15 Annotations related to a VECTOR declaration
8.15.1 VECTOR reference annotation
114 8.15.2 PURPOSE annotation
115 8.15.3 OPERATION annotation
8.15.4 LABEL annotation
116 8.15.5 EXISTENCE_CONDITION annotation
8.15.6 EXISTENCE_CLASS annotation
117 8.15.7 CHARACTERIZATION_CONDITION annotation
8.15.8 CHARACTERIZATION_VECTOR annotation
8.15.9 CHARACTERIZATION_CLASS annotation
118 8.15.10 MONITOR annotation
8.16 LAYER declaration
119 8.17 Annotations related to a LAYER declaration
8.17.1 LAYER reference annotation
8.17.2 LAYERTYPE annotation
120 8.17.3 PITCH annotation
8.17.4 PREFERENCE annotation
8.18 VIA declaration
121 8.19 Annotations related to a VIA declaration
8.19.1 VIA reference annotation
8.19.2 VIATYPE annotation
122 8.20 RULE declaration
8.21 ANTENNA declaration
123 8.22 BLOCKAGE declaration
8.23 PORT declaration
124 8.24 Annotations related to a PORT declaration
8.24.1 Reference to a PORT using PIN reference annotation
8.24.2 PORTTYPE annotation
125 8.25 SITE declaration
8.26 Annotations related to a SITE declaration
8.26.1 SITE reference annotation
8.26.2 ORIENTATION_CLASS annotation
126 8.26.3 SYMMETRY_CLASS annotation
8.27 ARRAY declaration
127 8.28 Annotations related to an ARRAY declaration
8.28.1 ARRAYTYPE annotation
8.28.2 LAYER reference annotation for ARRAY
128 8.28.3 SITE reference annotation for ARRAY
8.29 PATTERN declaration
8.30 Annotations related to a PATTERN declaration
8.30.1 PATTERN reference annotation
8.30.2 SHAPE annotation
130 8.30.3 VERTEX annotation
131 8.30.4 ROUTE annotation
132 8.30.5 LAYER reference annotation for PATTERN
8.31 REGION declaration
8.32 Annotations related to a REGION declaration
8.32.1 REGION reference annotation
133 8.32.2 BOOLEAN annotation
9. Description of functional and physical implementation
9.1 FUNCTION statement
9.2 TEST statement
134 9.3 Definition and usage of a pin variable
9.3.1 Pin variable and pin value
9.3.2 Pin assignment
135 9.3.3 Usage of a pin variable in the context of a FUNCTION or a TEST statement
136 9.4 BEHAVIOR statement
137 9.5 STRUCTURE statement and CELL instantiation
138 9.6 STATETABLE statement
139 9.7 NON_SCAN_CELL statement
140 9.8 RANGE statement
141 9.9 Boolean expression
142 9.10 Boolean value system
9.10.1 Scalar boolean value
9.10.2 Vectorized boolean value
144 9.10.3 Non-assignable boolean value
9.11 Boolean operations and operators
9.11.1 Logical operation
146 9.11.2 Bitwise operation
148 9.11.3 Conditional operation
9.11.4 Integer arithmetic operation
149 9.11.5 Shift operation
9.11.6 Comparison operation
151 9.12 Vector expression and control expression
152 9.13 Specification of a pattern of events
9.13.1 Specification of a single event
153 9.13.2 Specification of a compound event
154 9.13.3 Specification of a compound event with alternatives
156 9.13.4 Evaluation of a specified pattern of events against a realized pattern of events
158 9.13.5 Specification of a conditional pattern of events
9.14 Predefined PRIMITIVE
159 9.14.1 Predefined PRIMITIVE ALF_BUF
9.14.2 Predefined PRIMITIVE ALF_NOT
9.14.3 Predefined PRIMITIVE ALF_AND
9.14.4 Predefined PRIMITIVE ALF_NAND
160 9.14.5 Predefined PRIMITIVE ALF_OR
9.14.6 Predefined PRIMITIVE ALF_NOR
9.14.7 Predefined PRIMITIVE ALF_XOR
9.14.8 Predefined PRIMITIVE ALF_XNOR
9.14.9 Predefined PRIMITIVE ALF_BUFIF1
161 9.14.10 Predefined PRIMITIVE ALF_BUFIF0
9.14.11 Predefined PRIMITIVE ALF_NOTIF1
9.14.12 Predefined PRIMITIVE ALF_NOTFIF0
9.14.13 Predefined PRIMITIVE ALF_MUX
162 9.14.14 Predefined PRIMITIVE ALF_LATCH
9.14.15 Predefined PRIMITIVE ALF_FLIPFLOP
9.15 WIRE instantiation
164 9.16 Geometric model
166 9.17 Predefined geometric models using TEMPLATE
9.17.1 Predefined TEMPLATE RECTANGLE
167 9.17.2 Predefined TEMPLATE LINE
9.18 Geometric transformation
169 9.19 ARTWORK statement
9.20 VIA instantiation
170 10. Description of electrical and physical measurements
10.1 Arithmetic expression
171 10.2 Arithmetic operations and operators
10.2.1 Sign inversion
10.2.2 Floating point arithmetic operation
172 10.2.3 Macro arithmetic operator
10.3 Arithmetic model
174 10.4 HEADER, TABLE, and EQUATION statements
176 10.5 MIN, MAX, and TYP statements
178 10.6 Auxiliary arithmetic model
10.7 Arithmetic submodel
179 10.8 Arithmetic model container
10.8.1 General arithmetic model container
10.8.2 Arithmetic model container LIMIT
180 10.8.3 Arithmetic model container EARLY and LATE
10.9 Generally applicable annotations for arithmetic models
10.9.1 UNIT annotation
181 10.9.2 CALCULATION annotation
182 10.9.3 INTERPOLATION annotation
183 10.9.4 DEFAULT annotation
184 10.9.5 MODEL reference annotation
185 10.10 VIOLATION statement, MESSAGE TYPE, and MESSAGE annotation
187 10.11 Arithmetic models for timing, power, and signal integrity
10.11.1 TIME
188 10.11.2 FREQUENCY
189 10.11.3 DELAY
190 10.11.4 RETAIN
191 10.11.5 SLEWRATE
192 10.11.6 SETUP and HOLD
193 10.11.7 RECOVERY and REMOVAL
194 10.11.8 NOCHANGE and ILLEGAL
195 10.11.9 PULSEWIDTH
196 10.11.10 PERIOD
197 10.11.11 JITTER
198 10.11.12 SKEW
199 10.11.13 THRESHOLD
200 10.11.14 NOISE and NOISE_MARGIN
203 10.11.15 POWER and ENERGY
204 10.12 FROM and TO statements
205 10.13 Annotations related to timing, power, and signal integrity
10.13.1 EDGE_NUMBER annotation
10.13.2 PIN reference and EDGE_NUMBER annotation for FROM and TO
206 10.13.3 PIN reference and EDGE_NUMBER annotation for SLEWRATE
10.13.4 PIN reference and EDGE_NUMBER annotation for PULSEWIDTH
207 10.13.5 PIN reference and EDGE_NUMBER annotation for SKEW
10.13.6 PIN reference annotation for NOISE and NOISE_MARGIN
10.13.7 MEASUREMENT annotation
209 10.14 Arithmetic models for environmental conditions
10.14.1 PROCESS
10.14.2 DERATE_CASE
210 10.14.3 TEMPERATURE
211 10.15 Arithmetic models for electrical circuits
10.15.1 VOLTAGE
212 10.15.2 CURRENT
213 10.15.3 CAPACITANCE
215 10.15.4 RESISTANCE
216 10.15.5 INDUCTANCE
217 10.16 Annotations for electrical circuits
10.16.1 NODE reference annotation for electrical circuits
218 10.16.2 COMPONENT reference annotation
219 10.16.3 PIN reference annotation for electrical circuits
220 10.16.4 FLOW annotation
221 10.17 Miscellaneous arithmetic models
10.17.1 DRIVE STRENGTH
222 10.17.2 SWITCHING_BITS with PIN reference annotation
10.18 Arithmetic models related to structural implementation
10.18.1 CONNECTIVITY
223 10.18.2 DRIVER and RECEIVER
224 10.18.3 FANOUT, FANIN, and CONNECTIONS
225 10.19 Arithmetic models related to layout implementation
10.19.1 SIZE
226 10.19.2 AREA
227 10.19.3 PERIMETER
228 10.19.4 EXTENSION
229 10.19.5 THICKNESS
230 10.19.6 HEIGHT
10.19.7 WIDTH
231 10.19.8 LENGTH
232 10.19.9 DISTANCE
233 10.19.10 OVERHANG
10.19.11 DENSITY
234 10.20 Annotations related to arithmetic models for layout implementation
10.20.1 CONNECT_RULE annotation
235 10.20.2 BETWEEN annotation
10.20.3 BETWEEN annotation for CONNECTIVITY
236 10.20.4 BETWEEN annotation for DISTANCE, LENGTH, OVERHANG
237 10.20.5 MEASURE annotation
238 10.20.6 REFERENCE annotation container
239 10.20.7 ANTENNA reference annotation
10.20.8 TARGET annotation
240 10.20.9 PATTERN reference annotation
241 10.21 Arithmetic submodels for timing and electrical data
242 10.22 Arithmetic submodels for physical data
243 Annex A
259 Annex B
286 Annex C
292 Annex D
IEEE 1603-2003
$215.58