ALF meeting, July 19 @ Synopsys, Mountain View Attendees: Dhaval Sejpal IBM Nicholas Barbieri Synopsys (morning) Fereshte Kianersi Synopsys Shir-Shen Chang Synopsys Tim Jennings Philips Tim Ehrler Philips John Peters Philips Greg Dufour Mentor Carmel Collins Artisan (afternoon) Rajesh Uppuluri Logicvision (by phone) Dan Moritz LSI Logic (afternoon) Wolfgang Roethig NEC The following chapters of the ALF 2.0 spec were reviewed. Section 10: "Physical Modeling" Section 5: "Functional Modeling" Section 6: "Modeling for Test" Section 7: "General Rules for Arithmetic Models" Section 8: "Electrical Performance Modeling" (preliminary) Section 10.2 Arithmetic models in the context of layout ------------------------------------------ The legal range of values (number, unsigned, non-negative number etc.) is specified for each model. Shir-Shen requested to change non-negative numbers to positive numbers for certain models A.I. propose models for which the change from non-negative numbers to positive numbers applies - Shir Shen DONE - see separate note Section 10.3 Statements for geometric transformations ---------------------------------------- Need to change "mathematical positive sense" into "counter-clockwise" Shir-Shen pointed out the necessary range of values for ROTATE and FLIP 0 < FLIP < 180 0 < ROTATE < 360 A.I. Incorporate changes into spec Section 10.5 LAYER statement --------------- PURPOSE annotation: A.I. introduce annotation value "reserved" for layer with proprietary use only Section 10.6 Geometric model statement ------------------------- POINT_TO_POINT annotation A.I. provide illustration for annotation value "rectilinear" TEMPLATES for predefined geometric models: A.I. Make clear that RECTANGLE and LINE are predefined, HORIZONTAL_LINE etc. are user-defineable A.I.Introduce VERTEX annotation for EXTENSION VERTEX = round | straight default is straight provide illustration Section 10.8 VIA statement ------------- Proposal: stacked vias may contain more than 3 patterns, restriction to 3 pattern (lower metal, cut, upper metal) is for backward compatibility with LEF, but not in the language USAGE Annotatin value "stack_only" is for backward compatibility with LEF Do we need new USAGE value for completely described stack? "partial_stack" instead of "stack_only"? "full_stack" to describe the complete stack (more than 3 patterns)? need example for via reference Section 10.9 BLOCKAGE statement ------------------ Issue: How can soft blockages be described? This is an hierarchical design issue. Section 10.11 RULE statement -------------- Distance is measured with respect to non-extended object, i.e., center of a line etc. Do we need SPACING to distinguish edge-to-edge measurements from center-to-center measurements or will an annotation for DISTANCE suffice? Proposal: introduce REFERENCE annotation for DISTANCE REFERENCE = center | edge which one should be default? Alternative proposal: DISTANCE = center to center SPACING = edge to edge Section 6.1 Annotations and attributes for a CELL ------------------------------------- Proposal: Add ATTRIBUTE "GPU" = Graphics Processor Unit for cell with CELLTYPE=core A.I. Add diagram for swap_class, restrict_class to illustrate the example Note on BUFFERTYPE: not only for cells with CELLTYPE=buffer, but also for complex I/O cells, for instance I/O flipflop BUFFERTYPE annotation is prerequisite for DRIVERTYPE annotation Section 6.2 NON_SCAN_CELL statement ----------------------- A.I. put old NON_SCAN_CELL syntax into phased-out items How to decide whether a cell has non-scan-cell: Rule: A cell with restrict_class { scan } only must be a scan cell with a defined non_scan_cell replacement Question: Should we introduce SCAN_CELL statement also to allow a two-way x-reference between scan and non-scan cell? A.I. State opinion - DFT tool vendors (Synopsys, Mentor, LogicVision) Section 6.4 Annotations and attributes for a PIN ------------------------------------ Clarification on SCAN_POSITION A.I. change meaning of annotation value "0" to be compatible with OLA. Value "0" shall mean, pin is not on scan chain. Section 6.6 Annotations for other objects ----------------------------- OPERATION annotation value "iddq" applies for cell with any celltype, as opposed to memory-specific operation values. Section 7.4 Annotations for arithmetic models --------------------------------- A.I. specify that the value of UNIT should be a positive number A.I. specify extrapolation behavior for INTERPOLATION annotation Proposal: Extrapolation with "fit": use two outer datapoints Extrapolation with "floor" or "ceiling" out of range: use smallest or largest datapoint, respectively All A.I. for spec edits are for Wolfgang and Joe Daniels