 |
 |
 |
 |
 |
Parameteric design software generations
Summary
A short overview of the key differences between the generations of layout software
Keywords: CoventorWare
, DW2000
, mask layout
, MaskEngineer
, Odin
, OlympIOs
, parametric design
, SiGraph
, Thor
Introduction
Parametric design for MEMS and micro optics has seen different design generations during the last
20 years. This faq items shows the key features of these generations with respect to design
issues and shows the capabilities with respect to some important aspects.
Connectivity
Connectivity is the key differentation in between the generations of software. We can easily
differentatiate between the following levels:
No connectivity between design components
This generation uses some language to specify the shape of the components, but uses a single
global coordinate system to specify the location of these components. Changing the shape of
one component (eg. the length of a channel) does not influence the location of any other element.
CleWin 3.2, CoventerWare, DW2000,Intellimask etc are using this approach, but often
"home grown" layout libraries have comparable power.
Forward connectivity
As an extension to the first generation tools the introduction of planes (Thor / Odin),
scotch tape (SiGraph) solved in many cases the problem of having a varying channel size
with multiple components attached to it.
Connected components will stay connected, and the design tool takes care of this rather then
the user. Some "home grown" layout libraries also reach this level of connectivity to
some extent.
Omni-direcitonal connectivity
Switching from "forward connectivity" to omni-directional connectivy solves the problems
related to alignment, position difference / length calculation etc. An easy example of this is the
definition of a MachZehnder component, using 2 Y-junctions connected by straight channels.
Placing the first Y-junction and its attached straight channels is no problem, but adding the final
Y-junction as a mirrored version of the input is less trivial.
Some tools like Thor have the capability of using mirroring or alignment elements to solve this, but
using a omni-directional approach, you will simply use the Y-junctions "output ports" as
input, see also MaskEngineer layout kernel">Architecture of the layout kernel and Create User-Defined in Mask Layout Design Software.
Language
Parametric design requires some kind of programming language to specify the relation between
things. Varying approaches between component definition and optimization strategies exist.
Dedicated component language
The first generation of parametric design tools uses a very specific design language to be able to
define the structures. This focus is primarily due to computer performance and memory issues
at that time.
Having a dedicated language like the DEV which is used by Odin and Thor, gave good
trade-off between computer hardware and design capability.
General procedural languages
Subsequently the introduction of optimization strategies within the design and the inclusion of
full mathematical models required the introduction of more general languages like SPT.
The next generations of layout tools like CoventorWare, CleWin 3.2 but also MaskEngineer use
more standard languages like Xt or C-like languages.
Object oriented languages
As in computer science the shift in design paradigm moves from procedural languages like C or
Pascal towards object oriented design like C++ or Java.
MaskEngineer introduces these concepts into the parametric design field, giving you the full
potential of object oriented layout.
Discretization
Generating the mask data requires to shift from the analytic / parametric model of the geometries
towards a GDSII or CIF based mask, which is subsequently written on maskplates.
Since the micro-electronics industry does not require smooth shapes, the common mask formats
do not allow smooth curve definition, hence the requirement to discretize the geometries.
Geometric definition
The first approach to discretization is to have the designer specify the coordinates of the curves.
This seams to give full control to the designer at the cost of many explicit discretization moments.
Changing the specification towards finer details requires many loops to be inspected and a full
check of the definition code.
Many tools like DW2000, CoventorWare, CleWin etc work at this level.
Component level
Defining the discresation as object property and have the design software handle the polygon
generation is the next step. This frees the designer to take into account the limits of the GDSII
or CIF formats (eg. a max. of 65Kb for a GDSII boundary, ~ 8000 points) and helps the
designer to focus on the task at hand rather then handling the varying formats himself.
Tools like Thor and Odin use this approach.
Curve level
A problem which often occured with discretisation as object property is the inconsistency which
is introduced when different types of object are part of the design. Eg. during AWG design a typical
and easy mistake is define the bends in the array with high accuracy (dAlpha=0.01 degree), but
have the coupler sections defined using a curve with t=[0,1] and a dt=0.01, leading to just 200
points for a key-section of the design.
A second problem is having smooth curves like parabolic bended tapers; using a dAlpha specification
is not suitable.
MaskEngineer solves this by introducing curve discretization algorithms which use the mathematical
definition of the element and discretize this at the layer level. Using constraints for all geometries
within in a cross-section considerably reduces design dependencies and allows to generate
different GDSII/CIF layers with different accuracies, eg. an electrode layer with path accuracy of
50 nm, while the optical path obtains a 0.5 nm accuracy.
See also Specify Cross Section (Layer) Functionality for Mask Layout in Mask Engineer and Why do I need more than 1 nm mask discretisation?.
For any remark/question, please contact: support@phoenixbv.comOther topics
| Oct 22, 2009 | Installation of PhoeniX software on CentOS 5.3 linux |
| Sep 15, 2009 | Mirror several layers in CleWin |
| Sep 4, 2009 | Where to install PhoeniX Software in linux |
| Aug 31, 2009 | CleWin 3 with Windows Vista |
| May 8, 2009 | CleWin Default Grid |
| May 6, 2009 | Problems with installation or licenses (license type: node locked) |
| May 6, 2009 | Problems with installation or licenses (license type: floating license) |
| May 1, 2009 | Do you have process documentation software? |
| Mar 11, 2009 | Aspic does not run on some Windows versions |
| Nov 21, 2008 | Floating license server: no licenses available |
| Aug 22, 2008 | Living Database ReservationManager right click doesn't work |
| May 20, 2008 | CleWin 4 PRO : List of improvements and features |
| May 6, 2008 | Mysql connection failed |
| Apr 8, 2008 | CleWin 4 PRO: cannot find the tab for MatLab in the clewin's script editor. |
| Apr 3, 2008 | I want to improve yield, can your software help? |
| Feb 28, 2008 | Living Database Reservation Manager: Java Applet error message |
| Jan 18, 2008 | Aspic floating license |
| Jan 8, 2008 | Update license in keylock with Windows 2003 |
| Nov 19, 2007 | Ini-file settings not saved |
| Nov 6, 2007 | Set Grid size for GDS |
| Nov 6, 2007 | Import GDS and CIF into MaskEngineer |
| Nov 6, 2007 | Maximum layer number in MaskEngineer |
| Sep 25, 2007 | Is the Living Database able to communicate directly with our equipment? |
| Sep 7, 2007 | Can we connect our own information systems to your Living Database? |
| Sep 7, 2007 | How is SPC implemented in your tools? |
| Oct 24, 2006 | Keylock error message with the portable |
| Sep 13, 2006 | Subtract function gives unexpected results |
| Jun 13, 2006 | Using static variables |
| Jun 12, 2006 | A small start-up with limited cash reserves, do we need your control software? |
| Jun 12, 2006 | We run a University cleanroom facility and we have no need for fabrication control software. |
| Jun 12, 2006 | Is 24 hour control with your Living Databse possible? |
| Jun 12, 2006 | We never use large batches of wafers, so your process control software seems to be overkill. |
| Jun 12, 2006 | Can a University afford the Cleanroom DataBase? |
| Jun 12, 2006 | Why is the Living Database required for the device development stage of a product? |
| Jun 9, 2006 | GDSII and CIF generation settings for MaskEngineer and OptoDesigner |
| Jun 2, 2006 | OptoDesigner versus other simulation tools |
| May 31, 2006 | 2D/3D drawing programs versus FlowDesigner |
| May 22, 2006 | Get the outputs angle of AWG |
| May 16, 2006 | Data read/write in script |
| May 10, 2006 | Using array return values |
| Mar 6, 2006 | Install PhoeniX Floating License Server (Windows) |
| Nov 1, 2005 | What libraries do you use for the GUI? |
| Jul 1, 2005 | Mask Layout CleWin and Gerber : circles |
| Jun 1, 2005 | Parameteric design software generations |
| May 27, 2005 | Mask layout CleWin 3: snap to orthogonal |
| May 27, 2005 | Mask layout CleWin 3 : convert circles into polygon |
| Apr 20, 2005 | Mask Layout Software: Mask Layout Connectivity |
| Apr 19, 2005 | Mask Layout Software: Recursive Mask Design |
| Apr 11, 2005 | Beam Propagation Methods (BPM) in optical simulation software |
| Apr 10, 2005 | Is Flow Designer Software applicable for teaching. |
| Apr 10, 2005 | Do process engineers need your cleanroom database? |
| Apr 10, 2005 | Accurate Mask Grid Definition for high index contrast Si Waveguides |
| Apr 10, 2005 | Why do I need more than 1 nm mask discretisation? |
| Apr 10, 2005 | What is the benefit of a 10 nm or finer mask discretisation? |
| Apr 7, 2005 | FieldDesigner vs OlympIOs Optical Mode Solver |
| Apr 7, 2005 | FlowDesigner outputs to HTML for process flow documentation and report |
| Apr 7, 2005 | Process Flow Simulation: PhoeniX FlowDesigner |
| Apr 5, 2005 | Electro-Optics module in optical mode simulation software |
| Apr 5, 2005 | Thermo-Optics module in optical mode simulation software |
| Apr 5, 2005 | How to remove the rulers at CleWin? |
| Apr 5, 2005 | Error message : Could not access network location |
| Apr 2, 2005 | Numerical methods used in optical mode field simulation |
| Apr 1, 2005 | Numerical libraries used by PhoeniX Optical Simulation Software |
| Mar 18, 2005 | Incompatibilities between CleWin 3 and CleWin 2 |
| Mar 16, 2005 | Strech polygon or symbols in X axis or in Y axis only |
| Feb 15, 2005 | Architecture of the layout kernel |
| Feb 1, 2005 | MaskEngineer vs OlympIOs for parametric mask layout software |
| Jan 26, 2005 | Monitoring available licenses in PhoeniX server |
| Dec 29, 2004 | Integrating Process Flow Designer Software into the Business Model |
| Dec 10, 2004 | Install PhoeniX Floating License Server (pxkeysrv.exe) via command windows |
| Dec 3, 2004 | Mask layout on Linux using CleWin3 |
| Dec 3, 2004 | "Hidden text" in CleWin |
| Oct 4, 2004 | Installation of license server on Debian/Etch linux |
| Oct 4, 2004 | Flow Designer : Etch simulation gets very slow, what to do? |
| Sep 24, 2004 | Mask Layout Library in Mask Engineer |
| Sep 24, 2004 | Display The Port's Direction |
| Sep 24, 2004 | Making Mask Layout in Mask Engineer : Gear-Wheel |
| Sep 22, 2004 | Specify Cross Section (Layer) Functionality for Mask Layout in Mask Engineer |
| Sep 21, 2004 | Create User-Defined in Mask Layout Design Software |
| Sep 21, 2004 | Mask Engineer Built-In Curve (Polynom) to Interconnect Mask Layouts |
| Sep 20, 2004 | Define Mask Layout Connectivity in Mask Engineer : set component's name and connection points (ports). |
| Sep 16, 2004 | Create User-Defined Ports to Connect Mask Layout in Mask Engineer |
| Aug 17, 2004 | Process visualization software |
| Aug 16, 2004 | Create smooth mask layout files for micro fluidic channels |
| Aug 16, 2004 | MaskEngineer provides a parameterized library for mechanical components |
| Aug 16, 2004 | Defining mask layout(s) for a DOE experiment. |
| Aug 16, 2004 | Exporting mask layers to CIF or GDSII with two different resolutions. |
| Aug 16, 2004 | Accurate GDSII or CIF representation of smooth shapes in mask layouts. |
| Aug 16, 2004 | Mask Layout Connectivity : use PositionDivider to create ports |
| Aug 16, 2004 | In my mask layout I want to use complex profiles for my micro fluidic channels? Can I do that? |
| Jul 27, 2004 | Mask Export and Import : CleWin 3 with DXF |
| Jun 30, 2004 | CleWin 3 options to fill mask polygons |
| Jun 30, 2004 | The list of last used mask files in CleWin 3 |
| Jun 25, 2004 | Mask Export and Import : CleWin 3 with Gerber |
| May 14, 2004 | Choosing network addresses for license server and client PC |
| May 14, 2004 | Occasionally the program cannot find the key. Message "Keylock error". |
| May 13, 2004 | Mask layout CleWin displays wires differently from other mask viewers. |
| May 13, 2004 | CleWin "Not Responding". |
| Mar 22, 2004 | Print the mask layout at CleWin3 |
| Mar 22, 2004 | Select parts of the mask layout in CleWin |
| Mar 22, 2004 | Mask layout CleWin 3: convert wires into polygons option |
| Mar 22, 2004 | Open CleWin automatically via its mask layout files (cif, gds) |
| Mar 22, 2004 | Mask layout CleWin 3 : export mask Layer option |
| Mar 22, 2004 | Mask Layout CleWin 3 : layer number vs layer name |
| Feb 19, 2004 | The application cannot run at the client's sites. |
| Feb 10, 2004 | Mask layout CleWin 3 : Resolution issue when importing circle from DXF |
| Jan 28, 2004 | Polygon and wire issues in CleWin mask layout |
| Jan 16, 2004 | Install PhoeniX Floating License Server manually |
| Jan 15, 2004 | Process development software |
| Jan 15, 2004 | Process documentation software |
| Jan 15, 2004 | Process modeling software |
| Jan 14, 2004 | Process control software |
| Jan 13, 2004 | Connecting simulation tools to the Database products |
| Jan 13, 2004 | Linux (license) server with Windows clients |
| Jan 13, 2004 | Installation of PhoeniX Floating License Server on RedHat Linux |
| Jan 13, 2004 | LAN Scope for PhoeniX Floating License |
|
 |
 |