open access for an open custom design...

40
Open Access for an Open Custom Design Platform Scott Chase October 13, 2008

Upload: dinhthuy

Post on 26-Mar-2018

252 views

Category:

Documents


7 download

TRANSCRIPT

Page 1: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

1

Open Accessfor an Open

Custom Design Platform

Scott ChaseOctober 13, 2008

Page 2: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

2

Open Access for an Open Custom Design PlatformOverview

• Introduction to Custom Designer• Brief History• Platform Overview • Complete & Comprehensive Solution• Our OpenAccess Experience

• Openness and Interoperability on OA• Dimensions of openness – what makes an Open Platform?• The IPL Initiative• Enabling Extensibility

• Consistent Usage • Front End Challenges• Schematic Driven Layout • Schematic Connectivity

Page 3: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

3

Custom DesignerAn Open OA-based Custom Design Platform

• Architected for productivity

• Complete custom design solution

• Open environment

Galaxy Implementation Platform

Prim

eTim

ePr

imeT

ime

HSP

ICE

HSP

ICE

Design CompilerDesign Compiler

IC CompilerIC Compiler

Custom DesignerSE

Custom DesignerSE

Custom DesignerLE

Custom DesignerLE

Hercules / Star-RCXTHercules / Star-RCXT

• Production Release announced Sept 22, 2008 at BSNUG• Demo this evening

Page 4: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

4

Layout EditorProductivity Enhancers• Push button DRC and Extract• Standard TCL & Python P-Cells• Auto via & guardring generation

Page 5: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

5

Schematic EditorProductivity Enhancers• Real-time connectivity• On-canvas editing• Smart connect

Page 6: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

6

Complete & Comprehensive Solution

• Unified environment

• Familiar look and feel

• Full custom chip and block authoring flows

HSPICE

WaveViewAnalyzer

Cadabra

Hercules

Star-RCXT

NanoSimHSIM

Custom Designer

Page 7: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

7

Complete & Comprehensive SolutionWaveView Analyzer

• Highest capacity and performance

• Complex analysis toolbox

• Automated TCL verification scripting

Page 8: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

8

Open & PortablePlug & Play IP

Pcells based on Python and TCL

OpenAccess based designs

set libName generic90RFset cellName n_4tset oaLib [oa::LibFind $libName]oa::getAccess $oaLib write 1set oaCell [oa::CellFind $oaLib $cellName]set accessMode "w"set dmData [oa::DMDataOpen $oaCell $accessMode]

db::setNetlistInfo fieldHeight -cell $dmData -section form \-value 15 \-type integer

TCL based script language

Page 9: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

9

Custom DesignerAn Open OA-based Custom Design Platform

•Primary Editors: LE, SE, Symbol editors

• Supporting Tools:

Library Manager, Hierarchy Editor, Display Resource Editor, Job Monitor, Programmable Netlister, etc.

• Dockable Assistants:

Property Editor, Hierarchy Navigator, Marker Browser, Device Label Editor, Probe Assistant, Transaction History, Object LayerPanel, Schematic Object Filter, etc.

Page 10: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

10

Undo/Redo per-design

Interact with your edit list graphically using the Transaction History Dockable Assistant

Transaction History Dockable Assistant

Page 11: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

11

R&D Perspective on using OAGood:

• “Clean” data model and class hierarchy• Outstanding documentation• oaDebug and oaDiff• Forums• Bug Tracker• Contributions (“freeware” rocks!) • Community

Bottom line: it was easy to get up and running; we do still need a small dedicated OA team for bug fixes, build management and support of application developers. But we can put more of our effort into the value-added features and differentiators that make our products more useful to our customers.

This project was easier on OpenAccess.

Less Good:

• Release management• Performance limitations• Feature adds (getting more and more important as we look forward)

Page 12: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

12

Open Access for an Open Custom Design PlatformOverview

• Introduction to Custom Designer• Brief History• Platform Overview• Complete & Comprehensive Solution• Our OpenAccess Experience

• Openness and Interoperability on OA• Dimensions of openness – what makes an Open Platform?• The IPL Initiative• Enabling Extensibility

• Consistent Usage • Front End Challenges• Schematic Driven Layout • Schematic Connectivity

Page 13: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

13

Custom DesignerAn Open OA-based Custom Design Platform*

Major EDA Platforms for custom design have been closed in 4 key ways:

• Proprietary Database• Proprietary Libraries• Scripting languages the only way to extend• Proprietary UIs

That is changing. With Custom Designer:

• Design Database is Open Access DM4• Support for IPL’s iPDK, including PyCells• Scripting interface is Tcl, including oaTcl• GUI Toolkit is Qt 4.x

• Customize the platform through standard interfaces, or just dynamically link in your own stuff with Tcl’s ‘load’ command.

* Why Platform and not collection?

Page 14: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

14

• OpenAccess is an enabler and set the stage– Provides access to core design data

• Shapes, instances, connectivity, technology– Being adopted by key vendors in several areas

• Synopsys, Mentor, Silicon Canvas, Cadence & Magma• BUT:

– Leaves a lot to semantic interpretation– Doesn’t include guidance for how to interpret and

interoperate certain key data• Parameters

– Definition– Expression languages– Parameter passing

• Interpreted labels• Constraints

Proprietary Database

Page 15: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

15

OpenAccess

Zoomed in schematic:

•Pins / terminals•Interconnect

•Paths•Lines•Dots (ellipses)

•Instances•Parameters•Interpreted labels

Page 16: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

16

• Notice the number of parameters and interpreted labels?– More parameters and labels on a device than shapes on the

symbol– 80+ parameters on current technology node transistor– Without the parameters, a schematic is useless

• We have been driving IPL– Not only for common pCells– Common interpreted labels– Common parameter definitions– Common parameter expression language

• The result, at DAC 2008:– Synopsys Custom Designer– Silicon Canvas Laker– Mentor Calibre

OpenAccess

Page 17: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

17

The Result: One Design. One PDK. Same Result in Two Tools

©2008

Page 18: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

18

The Result: One Design. One PDK. Same Result in Two Tools

©2008 IPLN

Page 19: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

19

• Most platforms allow access via a scripting language– Tcl– SKILL– All low performance– Try writing a DRC check for real time use– Try writing an editor– They’re simply too slow

• OpenAccess provides a C++ high performance API– Can be used to access the same design data– At the performance needed for complex tools

• Routers• DRC engines for proprietary rules

Scripting Languages: The only way to extend?

Page 20: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

20

• Synopsys Custom Designer– Allows you to create Tcl scripts– Load shared objects– And write truly high performance applications

• Written natively in OpenAccess C++• Portable

– Separate binaries in other tools– Loaded directly into our platform!

Scripting Languages: The only way to extend?

Page 21: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

21

• Traditionally GUI access is restricted to– Proprietary technology– Limited scripting capabilities– Or a separate process

• Synopsys Custom Designer also enables– Via a Tcl based scripting– Opal

• What if you wanted to build this?

Proprietary UIs?

Page 22: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

22

Complex GUI

Page 23: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

23

• Don’t try doing that in a vendors proprietary language

• It’s natively written in C++/Qt• With an ability to load C++ shared objects

– You can create GUIs like this– And load them into a full platform like Custom

Designer

Proprietary UIs

Page 24: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

24

• Interoperability is becoming a reality

– First design data via OpenAccess– Second consistent usage within OpenAccess– Common FTKs/PDKs via IPL

• Going forward:

– OA based apps you develop loaded into any platform– Non-platform specific GUIs– Enabled now in Custom Designer– More is need for real industry-wide interoperability

Summary

Page 25: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

25

Open Access for an Open Custom Design PlatformOverview

• Introduction to Custom Designer• Brief History• Platform Overview• Complete & Comprehensive Solution• Our OpenAccess Experience

• Openness and Interoperability on OA• Dimensions of openness – what makes an Open Platform?• The IPL Initiative• Enabling Extensibility

• Consistent Usage • Front End Challenges• Schematic Driven Layout • Schematic Connectivity

Page 26: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

26

Consistent Usage• We believe the goal of OpenAccess is interoperability

– For layout OpenAccess is a giant step forward– For front end design and layout creation interoperability is very difficult

• Most data can be inconsistently interpreted by users of OA– Stored as appDefs– Stored as properties– Storage not defined– No guidance on semantic interpretation

• This includes– Parameters / expressions / design variables– Constraints– Geometry connectivity correlation– Interpreted label expressions– Hierarchy definition

Page 27: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

27

Consistent Usage• Without these front end / design tools can NOT interoperate

– Schematic viewers / editors– Netlisters– Simulation integrations– Sizing / optimization tools– Schematic driven layout– Layout generators– LVS

• All we really have for interoperability is consistent reading of layouts

– Even layout editors can’t really interoperate without • Common constraints• Common, and complete, rule specification• ECO tracking

Page 28: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

28

Schematic Driven Layout• Manual: The layout designer “looks” at interpreted schematic in

context and creates matching schematic• SDL tool: Basic layout is created

– Correct device sizes– Honoring constraints for placement– Connectivity– All based on defined hierarchy (configurations) of schematics

• Remember, in a schematic you don’t usually place a schematic• There are frequently multiple “views” for each cell

– Designer connects devices based on “flight lines”• Layout generation: Same as above adding a router & compactor

– Also follows constraints

• ALL layout creation methodologies require consistent interpretation of schematics

Page 29: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

29

Schematic Connectivity• What subset of oaLines, oaPaths or other oaFigs represent valid

wires? • How do we interpret the connectivity of wires based on their

geometries, abutments and intersections?• In schematics which of these sets of wires are connected?• Without knowing, how can I write an editor or schematic

generator who’s output can be modified by another vendor?

Page 30: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

30

Summary• Is the goal of OpenAccess to:

• Use tools/components from multiple vendors?• Add your tool/component to a vendors flow?• Ex: Schematic editor, schematic generator, circuit optimizer, layout

placer, schematic p2p router, netlister, layout generator…• How can you interoperate without:

• Parameters / expressions / design variables?• Constraints?• Geometry / connectivity correlation?• Visualization / labels?• Hierarchy configuration?

• Without these• OA is a good database• It does not provide interoperability

• What do we need to do organizationally to move forward?

Page 31: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

31

Schematic Driven Layout• Irrespective of methodology, tools need consistent

interpretation:• Schematic connectivity

• Generate the flattened connectivity across hierarchy• Hierarchy definition• Parameterized connections• Cross hierarchy pin correlation and mapping

• Resolved parameters and their expressions• Including across hierarchy• PCell generation• Simply for static device sizing

• Constraints for layout generation• Design rules are at least partly covered by constraints in the oaTech. • What about placement and routing constraints?

• Placement: Hard groups, matched pairs and other symmetry rules, etc. • Routing: buses, shielding, wire-length constraints, etc.

Page 32: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

32

Thank you!

Want to talk more? Find me at the IPL and Custom Designer demosthis evening.

Page 33: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

33

The Following are Supplemental Slides on Consistent Usage

Page 34: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

34

Overview of Design Flow

• Typical analog/custom design flow: • Schematic Capture / Topology creation• Netlist / Simulation• Device sizing / Optimization• Layout creation

• Manual (looking at schematic)• Schematic-Driven Layout• Layout generators

• LVS

Page 35: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

35

Schematic Capture / Topology Creation

Zoomed in schematic:

•Pins / terminals•Instances

•Parameters•Interpreted labels

•Interconnect•Paths•Lines•Dots (ellipses)•Wire labels

Page 36: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

36

Schematic Capture / Topology Creation

• Parameters:– Note proliferation of parameters on MOS device

• More parameters than connections, most not even shown– Parameters are as important as the interconnect

• Without them, there are no device sizes (width, length, fingers,multiplier…)

• Designers want to specify defaults on the library and cell level– Where should they put them?

• Designers need expressions to represent values:– W=parent(nw) * 1.1

» Or worse– W=parent(nw) * scale

» Note: Here “scale” is a variable that can be swept in simulation– What is the expression language?

• How do I put a label on the symbol so all tools display result consistently?

Page 37: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

37

Schematic Connectivity

• How are connection definitions, assignments and global nets interpreted?• If a pin has a connection definition

• And a wire intersects it• Does the net derive it’s name from the connectDef?• Does the net name over-ride the connectDef?

• If the wire has a label?• If it doesn’t?

• Does a global net with the same name as a connect def default become parameterized?

• Without knowing the above, how can I write a connectivity extractor or editor?

Page 38: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

38

Schematic Driven Layout

Page 39: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

39

Schematic Driven Layout• Irrespective of methodology, tools need consistent

interpretation:• Schematic connectivity

• Generate the flattened connectivity across hierarchy• Hierarchy definition• Parameterized connections• Cross hierarchy pin correlation and mapping

• Resolved parameters and their expressions• Including across hierarchy• PCell generation• Simply for static device sizing

• Constraints for layout generation• Design rules are at least partly covered by constraints in the oaTech. • What about placement and routing constraints?

• Placement: Hard groups, matched pairs and other symmetry rules, etc. • Routing: buses, shielding, wire-length constraints, etc.

Page 40: Open Access for an Open Custom Design Platformprojects.si2.org/events_dir/2008/oacfall2008/Synopsys.pdfPrimeTime PrimeTime HSPICE HSPICE ... toolbox • Automated TCL verification

40

Netlisting and Simulation

• To simulate you need to interpret the schematic hierarchy similar to layout generation

• How are terminals mapped across libraries?• What is the parameter expression language?• Where / how are parameters stored?• What is the inheritance and scoping precedence for parameters?

• Netlisting for different purposes or different simulators requires different hierarchy bindings

• How is this specified in OA?