WO2019152366A1 - System and method for 2d to 3d compact model creation for a mems device - Google Patents

System and method for 2d to 3d compact model creation for a mems device Download PDF

Info

Publication number
WO2019152366A1
WO2019152366A1 PCT/US2019/015565 US2019015565W WO2019152366A1 WO 2019152366 A1 WO2019152366 A1 WO 2019152366A1 US 2019015565 W US2019015565 W US 2019015565W WO 2019152366 A1 WO2019152366 A1 WO 2019152366A1
Authority
WO
WIPO (PCT)
Prior art keywords
components
component
mems device
design environment
layer
Prior art date
Application number
PCT/US2019/015565
Other languages
French (fr)
Other versions
WO2019152366A8 (en
Inventor
Arnaud KRUST
Original Assignee
Coventor, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Coventor, Inc. filed Critical Coventor, Inc.
Priority to EP19746606.3A priority Critical patent/EP3746918A4/en
Publication of WO2019152366A1 publication Critical patent/WO2019152366A1/en
Publication of WO2019152366A8 publication Critical patent/WO2019152366A8/en
Priority to US16/917,684 priority patent/US20200334397A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/12Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/17Mechanical parametric or variational design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/23Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/20Configuration CAD, e.g. designing by assembling or positioning modules selected from libraries of predesigned modules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2115/00Details relating to the type of the circuit
    • G06F2115/04Micro electro-mechanical systems [MEMS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/04Architectural design, interior design

Definitions

  • CAD Computer Aided Design
  • CAE Computer Aided Engineering
  • EDA Electronic Design Automation
  • CAD, CAE, and EDA tools are interactive software programs that run on a digital computer with a graphical display device. Attributes of CAD/CAE tools and EDA tools must be combined to design and simulate virtual models of multi-physics devices such as Micro Electro-Mechanical Systems (MEMS) devices prior to beginning the costly and time-consuming process of fabricating the actual physical devices.
  • MEMS Micro Electro-Mechanical Systems
  • MEMS are micro-scale or nano-scale devices, typically fabricated in a similar fashion as integrated circuits (ICs), to exploit the miniaturization, integration, and batch processing attainable with semiconductor manufacturing processes. Unlike ICs which consist solely of electrical components, MEMS devices combine components from multiple physical domains and may contain, for example, electrical, mechanical, magnetic, radio frequency (RF), optical and fluidic components. MEMS devices appear in many forms and may include micro-electromechanical sensors and actuators such as gyroscopes, accelerometers, and pressure sensors, micro-fluidic devices such as ink jet heads, Radio-Frequency (RF) devices such as switches, resonators, varactors, and passives, and optical devices such as micro mirrors and fiber alignment devices.
  • RF radio frequency
  • MEMS devices are not useful by themselves. To provide a useful function, a MEMS device must be incorporated in a system that includes electronic circuits that either control the MEMS devices or process electrical output signals from the MEMS devices. Most MEMS devices are comprised of a MEMS sensing or actuation element, i.e. the MEMS device itself, and accompanying electronics, i.e. an IC, that processes the output signal from the MEMS device and/or controls the MEMS device.
  • 3D design environment (hereafter "3D design environment”) enables the design and simulation of multi-physics devices such as MEMS devices.
  • An exemplary 3D design environment is described in United States Patent No.
  • the 3D design environment may be programmatically integrated with a system modeling environment that is suitable for system-level design and simulation of analog-signal ICs, mixed-signal ICs and multi-physics systems.
  • a parameterized MEMS device model may be created in a 3D graphical view in the 3D design environment using parameterized model components.
  • the parameterized model components may each be associated with an underlying behavioral model and may be selected from a multi-physic s/MEMS component library.
  • the MEMS device model After the MEMS device model is completed, it may be exported to a system modeling environment.
  • the MEMS device model may be exported to the system modeling environment without subjecting the model to preliminary finite element meshing.
  • the exported MEMS device model allows circuit simulations involving the MEMS device and associated electronic circuitry to be conducted in the system modeling environment. Circuit simulation results may be transferred back into the 3D design environment in order to be visualized using the 3D view generators of the 3D design environment.
  • the 3D view may display an animation of the mechanical motion of the MEMS device.
  • the user may then export a parameterized layout cell to a layout editor that can be used to directly generate a layout of the MEMS device.
  • a first approach is to mesh the 3D geometry and then run a finite element method.
  • the model can be an assembly of high order behavioral models e.g. suspensions, electrostatic combs and perforated plates. Each individual model is specialized to represent accurately a functionality with the least possible degrees of freedom. Such an assembly constitutes a model that is often smaller (in terms of number of degrees of freedom and equations to solve) and faster to simulate than the conventional finite element method with little or no loss in accuracy.
  • the model is thus sometimes called a“compact model”.
  • the 3D design environment has a library of components available for building a compact model. This library is customizable and components can be added/removed from a list. The components can also be preconfigured.
  • One workflow in the MEMS industry is to build a 3D model out of a 2D polygonal description (e.g. a description in a GDSII format).
  • This polygonal description contains several layers of 2D polygons.
  • the different layers can represent different materials or fabrication steps.
  • the layers can also be used as information layers, giving a sense of the purpose of a part of the device.
  • the geometries sharing a functionality are frequently grouped on the same layer so that each layer represents one functionality.
  • Embodiments of the present invention enable the creation of a 3D model of a MEMS device from a 2D polygonal description of the device using an assembly of heterogeneous components extracted from a library of components in a 3D design environment.
  • Components in the library of components may be customized to interpret 2D polygons as their 3D component equivalent. Since for a given functionality, there are only a few components available (e.g. for addressing different geometries), components in the component library are preconfigured by a user and the layer on which a particular functionality is expected is specified. A geometric criterion is used to distinguish between differently shaped components appearing on the same layer in the 2D polygonal description that share a given functionality.
  • a computing device-implemented method of creating 3D compact MEMS device models from 2D polygonal descriptions in a 3D design environment includes the step of providing a parameterized component library holding components for the 3D design environment. Each component has a geometric shape. The method further includes receiving in the 3D design environment a user configuration of each component.
  • the user configuration specifies a layer of a 2D polygonal description on which the component is expected to appear.
  • the method additionally imports a 2D polygonal description of a MEMS device model into the 3D design environment.
  • the 2D polygonal description includes multiple geometric shapes and multiple layers and separates model functionality by layer.
  • the method also identifies in the 3D design environment each geometric shape on each layer of the imported 2D polygonal description and identifies a corresponding component for each shape identified on a layer.
  • the corresponding components are identified based on geometric shape and specified layer. Additionally, the method assembles in the 3D design environment multiple heterogeneous components into a 3D compact MEMS device model using multiple corresponding components.
  • a system for creating 3D compact MEMS device models from 2D polygonal descriptions in a 3D design environment includes at least one computing device equipped with a processor that is configured to generate a 3D design environment for MEMS device models.
  • the 3D design environment is configured to provide a parameterized component library holding multiple components, each component having a geometric shape.
  • the 3D design environment is also configured to receive a user configuration of each component that specifies a layer of a 2D polygonal description on which the component is expected to appear and to import a 2D polygonal description of a MEMS device model.
  • the 2D polygonal description includes multiple geometric shapes and multiple layers and separates model functionality by layer.
  • the 3D design environment is configured to identify each geometric shape on each layer of the imported 2D polygonal description.
  • the 3D design environment is also configured to identify a corresponding component in the parameterized component library for each shape identified on a layer.
  • the corresponding components are identified based on geometric shape and specified layer.
  • the 3D design environment is configured to assemble multiple heterogeneous components into a 3D compact MEMS device model using multiple corresponding components.
  • the system also includes a display surface in communication with the computing device.
  • the display surface is configured to display the 3D compact MEMS device model in a 3D view.
  • FIG. 1 depicts an exemplary 3D design environment usable by an
  • FIG. 2A depicts an empty 3D view generated by a schematic editor of the 3D design environment prior to the MEMS device assembly;
  • FIG. 2B depicts parameterization of an exemplary component selected from a component library using global variables inside the 3D schematic editor;
  • FIG. 3 depicts parameterization of another exemplary component selected from a component library using global variables inside the 3D schematic editor and the 3D view of the selected exemplary part;
  • FIG. 4 depicts an exemplary completed MEMS device model displayed in the 3D schematic editor and a listing of global variables used for component parameterization
  • FIG. 5A depicts another exemplary completed MEMS device model displayed in the 3D view generated by the 3D schematic editor and a listing of global variables used for component parameterization;
  • FIG. 5B illustrates mechanical connectors of the exemplary MEMS device model illustrated in FIG. 5A
  • FIG. 5C illustrates electrical connectors of the exemplary MEMS device model illustrated in FIG. 5A;
  • FIG. 6A depicts a first editor, a material property editor
  • FIG. 6B depicts a second editor, a process editor
  • FIG. 7 depicts the 3D design environment exporting a symbol of an exemplary MEMS device model together with the underlying behavioral model into a system modeling environment;
  • FIG. 8 depicts a symbol representative of the created MEMS device model being added to a schematic in a system modeling environment
  • FIG. 9 depicts global variables used in the MEMS device model that are accessible as symbol parameters in the schematic editor of a system modeling environment
  • FIG. 10 depicts the transfer of the simulation results from a system modeling environment into the 3D design environment and the animation of the results in the 3D view;
  • FIG. 11 illustrates an overview of the design process including the 3D design environment and the system modeling environment
  • FIG. 12 is a flowchart of an exemplary sequence of steps followed by an embodiment of the present invention to create a 3D compact model from a 2D polygonal description in a 3D design environment;
  • FIG, 13 depicts similarly shaped components in the 3D design environment in an embodiment
  • FIG, 14 depicts an exemplary process editor UI in an embodiment
  • FIG. 15 depicts an exemplary UI for the component library in an embodiment
  • FIGS 16A-16B depict an exemplary model creation in an embodiment
  • FIG 17 depicts an exemplary electrostatic comb in an embodiment
  • FIG 18 depicts an exemplary process editor UI in an embodiment
  • FIG. 19 depicts an exemplary UI for the component library
  • FIGS 20A depicts an exemplary layout in an embodiment
  • FIG. 20B depicts an exemplary model generated from the layout of FIG. 20A.
  • An additional existing method for producing a compact model from a 2D source utilizes additional information stored in the 2D description.
  • the different parameters pitch, finger length, width, gap Certainly are stored as an open polyline in a separate layer.
  • the first segment length is interpreted as the pitch, the second as the finger length, etc.
  • This information is read and interpreted by a script that translates it into the creation of different types of components.
  • this ad hoc approach cannot be easily modified to handle different user needs. For example, it would be difficult to implement this approach for a large number of different components.
  • this approach requires extensive modifications to the original 2D representation, such as adding polylines that encode parameters, that are not directly the geometry that is to be imported. In a layout editor, users can copy/paste and perform Boolean operations on the geometries, but they cannot automatically create such polylines. Accordingly, this approach shifts the complexity of the MEMS device modeling problem to the creation of these polylines.
  • the open polylines are not part of the GDSII format (the standard source for 2D design descriptions) and are proprietary to specific tools.
  • embodiments of the present invention take advantage of the customizability of a library of parameterized MEMS components provided in a 3D design environment to help assemble a compact model of heterogeneous components from the information contained in a 2D polygonal description of a MEMS device. More particularly, embodiments enable the customization of the components in the library of components in a 3D design environment so as to cause the interpretation of the 2D polygons as their 3D component equivalent. Since for a given functionality, there are only a few components available (e.g. for addressing different geometries) a user
  • a geometric criterion is used to distinguish between different types of components sharing a given functionality that appear on the same layer.
  • FIGs 1-11 An exemplary 3D design environment suitable for practicing embodiments of the present invention will now be discussed with reference to FIGs 1-11. It should be appreciated that the description of the 3D design environment is made for purposes of illustration and explanation and embodiments of the present invention are not limited to the described environment. For example although the following exemplary 3D design environment description discusses the ability of a user to manually assemble a model from library components in the 3D view, the environment also supports the embodiments of the present invention discussed herein which enable the programmatic generation of a MEMS device model from an imported 2D polygonal description.
  • a multi-physics device model such as a MEMS device model, may be created in a three-dimensional (3D) design environment that is integrated with a system modeling environment.
  • the created device model includes an underlying behavioral model associated with each component of the created device model.
  • the created device model may be exported to a system modeling environment where it can be integrated into a schematic design and used in performing a circuit simulation or co-simulation.
  • the behavioral model for the created device may be parameterized with respect to manufacturing and design dependent variables such as material properties and dimensional variations, as well as geometric properties of the design.
  • the results of system-level simulations or co- simulations performed in the system modeling environment can subsequently be loaded back into the 3D design environment for result visualization and animation.
  • a user viewing the displayed results in the 3D design environment may indicate satisfaction with the results and a parameterized 2-D layout cell may be programmatically generated and sent to a 2-D layout editor in the system modeling environment.
  • the created MEMS device model which may be used for system modeling, is automatically created by the 3D design environment from the behavioral models of the individual MEMS components.
  • the MEMS device model may be automatically transferred to the system modeling environment for simulation without requiring the model to first undergo FEM.
  • This process of creating a 3D schematic by assembling components in a 3D view is called "three-dimensional schematic capture".
  • the exported MEMS device model allows for circuit simulations involving both the created MEMS device and the associated electronic circuitry in the system modeling environment.
  • the 3D design environment can be used in an integrated fashion with system modeling environments.
  • FIG. 1 depicts an exemplary 3D design environment usable by an
  • FIGS. 2A-11 describe various interactions between the components illustrated in FIG. 1.
  • FIG. 1 is referenced throughout the detailed description.
  • a computing device 12 providing a 3D multi-physics design environment 100 (“3D design environment") and a schematic-based system modeling environment 200 is illustrated in FIG. 1.
  • the computing device 12 may be a server, workstation, laptop, or some other type of electronic device equipped with a processor and capable of executing instructions to provide the 3D design environment 100 and the system modeling environment 200.
  • the 3D design environment 100 may include a MEMS component library 110, a 3D simulation result visualizer 120, and a 3D schematic editor 140. It will be appreciated that the individual components depicted in FIG. 1 may appear in combination or in different configurations from those depicted in FIG. 1 without departing from the scope of the present invention.
  • the 3D schematic editor 140 is used to create and/or edit a 3D MEMS device model 150.
  • the user 10 assembles a MEMS device model 150 in the 3D design environment 100 by selecting one or more instances of MEMS components 111, 113 and 115 from the MEMS component library 110 and configures the component parameters.
  • the component library may be customized in order to associate a layer of a 2D description with some components.
  • Component parameters can be entered in the form of numbers or as an algebraic expression that references one or more global variables. All global variables used to parameterize the MEMS device 150 may be stored and defined in the 3D design environment 100.
  • the library components 111, 113 and 115 may represent entities from different physical domains, such as masses, plates, magnets, lasers, optical lenses, electrostatic comb structures and electrodes.
  • the component parameters may include geometrical dimensions such as position, orientation, length, width and height, layer names or material properties like density and modulus of elasticity.
  • Component parameters may be entered in the form of numbers or as an expression of one or more global variables.
  • An alternative approach for defining geometrical component parameters receives point selections or freeform drawing on a 2-D or 3D canvas.
  • Each model component in the MEMS component library 110 may include a mathematical behavioral model represented by components 111, 113 and 115, and a corresponding 3D view generator 112, 114 and 116 that is a computer script or program containing the information needed to draw a 3D graphical view of each component.
  • the underlying behavioral models of each component describe how the individual components behave mathematically when subjected to electrical or mechanical stimuli or stimuli from other domains.
  • 3D view generators 112, 114 and 116 use the parameter information
  • the underlying behavioral models are distinct from finite element models in that they use whatever mathematical (analytical) or numerical formulation is most efficient for representing the physical behavior of the modeled entity as opposed to generic shape functions that have a polynomial or other standard basis as is the case with finite elements.
  • a suspension of a typical MEMS device for instance, can typically be modeled as a collection of mechanical beam segments.
  • Other components that can be assembled to model MEMS devices may include rigid and flexible mechanical plates of various shapes (rectangular, triangular, arc segments, etc.), inter-digitated electrostatic comb drives of various shapes and configurations, and flat or curved electrodes that may be placed above, below or to the side of any of the above mentioned mechanical elements.
  • the behavioral model for a mechanical beam may be an analytical solution of a well-known beam theory, such as the Euler-Bernoulli beam equation. Such a mathematical solution may be expressed explicitly in terms of the geometric parameters of the beam such as its length, width and thickness, and material properties such as Young's modulus.
  • the behavioral model may have mechanical connection points such as the ends of a beam that specify where and how it can be connected to other mechanical components.
  • the behavior of a rigid plate segment may be modeled by the equations governing rigid body dynamics, which depend on its inertial coefficients, which can in turn be expressed explicitly in terms of its geometric parameters and density.
  • the behavioral models for electrostatic forces between electrodes and mechanical elements may be modeled by the simple equations for electrostatic force between flat plates of equivalent size, or by more sophisticated means such as conformal mapping in the case of inter-digitated comb fingers.
  • the user assembles the MEMS device model in the 3D view 300 by connecting representations of the selected components 111, 113 and 115.
  • the representations of the components are generated by 3D view generators 112, 114 and 116 respectively associated with the selected components.
  • the 3D design environment saves the connection information that indicates how the components were connected by the user in the 3D view.
  • the data structure underlying the model constructed in the 3D view 300 is referred to as a multi-physics or MEMS device model and contains references to the constituent components 301, 302, 303, 304 and 305, their underlying behavioral models, and data that indicates how the components 301, 302, 303, 304 and 305 are connected.
  • the MEMS device model 150 constructed in the 3D view may be directly exported to a system modeling environment without additional meshing to form part of a system model of a MEMS device.
  • the MEMS component library 110 may include any number of components and corresponding 3D view generators.
  • the number of components and corresponding 3D view generators illustrated in FIG. 10 are for illustrative purposes only and should not be deemed as limiting.
  • FIGS. 2A and 2B depict the 3D view 300 used to create a MEMS device model in greater detail.
  • FIG. 2A depicts an empty 3D view 300 generated by the 3D schematic editor 140.
  • a user creates the MEMS device model by selecting components from a MEMS component library 110 and arranging them in the 3D view 300.
  • FIG. 2B displays a parameter box 204 listing configurable parameters associated with a selected MEMS component.
  • the first category consists of the material properties and geometric parameters that are determined by the manufacturing process.
  • the second category consists of the dimensional parameters of the components of the multi-physics device model, such as length, width, number of comb fingers, etc., that are determined by the user, i.e. the MEMS engineer.
  • the parameterization of the second category is illustrated in FIG. 12.
  • FIG. 3 illustrates an arc beam as an exemplary MEMS device model component 151 selected from the MEMS component library 110.
  • the user 10 defines the parameters of the arc beam using a pop up menu 204.
  • a 3D view of the arc beam component 301 is depicted in the 3D view 300.
  • the user 10 may select additional components and generate corresponding 3D views for the selected components.
  • the 3D views can be connected (mechanically, electrically, optically, etc.) based on user selection or automatically by identifying touching component faces in the corresponding 3D models. For example, a beam and a rigid plate component may be connected automatically by recognizing that their shapes touch or intersect each other.
  • a 3D view 300 of the entire MEMS device model 150 is provided to the user 10.
  • FIG. 4 illustrates an exemplary 3D view of a ring gyroscope model 300.
  • the 3D view 300 is a composite of individual 3D views of selected MEMS device model components.
  • a list 406 of all MEMS components used in the MEMS device model 150 is displayed in a window 407 of the 3D design environment 100.
  • the list of the components may be organized hierarchically to better illustrate the structure of the MEMS device model 150.
  • the user 10 may select one or more components from the list 406 and see the global variables associated with the selected component(s) in a window 408 of the 3D design environment 100.
  • FIGS. 5A-5C illustrate an exemplary the 3D view 300 of another MEMS device model, i.e. a Radio Frequency (RF) switch.
  • a list 526 of all components depicted in the 3D view of the RF switch 300 is displayed as a tree structure on a window pane 527 of the 3D design environment 100.
  • the list 526 of the components may be organized hierarchically to better illustrate the structure of the view of the 3D view of the RF switch 300.
  • the user 10 may select one or more components from the list 526 and see the global variables associated with the selected component(s) on a window 528 of the 3D design environment 100.
  • the RF switch illustrated in FIG. 5A includes 4 basic building blocks, i.e. components: one anchor and 3 beams.
  • FIG. 5B illustrates the mechanical connectors 552 depicted in the 3D view of the RF switch 300 illustrated in FIG. 5A.
  • a list of the mechanical connectors 536 is displayed in a tree view in a window 537 of the 3D design environment 100.
  • the view 352 of the mechanical connectors 536 illustrates which components are linked together.
  • Visual cues may be used to illustrate the connections between mechanical components.
  • the mechanical components are illustrated partially transparent and the mechanical connectors between the components are indicated by highlighted dots. It should be appreciated that connected components would move together as a single piece.
  • FIG. 5C illustrates the electrical connectors of the RF switch illustrated in FIG. 5A.
  • a list of the electrical connectors 546 is displayed in a tree view in a window 547 of the 3D design environment 100.
  • the electrical connectors view 554 illustrates electrical connectivity among components using visual cues such as colors, opaque/transparent display, etc. Again, it should be appreciated that connected components would move together as a single piece. For example, electrical layers may be shown as solid pieces in the 3D view of the device model.
  • the 3D design environment addresses the specific needs of users, i.e. MEMS designers, to parameterize process parameters by providing two editors that are used to specify all relevant fabrication-specific data.
  • the first editor, the material property editor 600 is shown in FIG. 6A.
  • the material property editor 600 is used to create a material database that contains all relevant physical as well as visual properties used in the 3D design environment 100.
  • Material properties may be defined as absolute values, variables or algebraic equations. A combination of variables and algebraic equations allows for properties to be mutually dependent on other properties, environmental variables, e.g.
  • FIG. 6A illustrates that the electrical conductivity 602 of aluminum is given by an algebraic expression that depends on the temperature T.
  • the user chose to "expose" T to other users by checking the corresponding box 604 on the material property editor 600.
  • the second editor in the exemplary 3D design environment is known as a process editor and is shown in FIG. 6B.
  • the process editor 650 enables the full
  • the process editor 650 is used to define the sequence of the multi-physics device fabrication steps.
  • the underlying process data includes all relevant information about the layer stack, such as the layer order, material type, thickness and sidewall profile.
  • the process data is dependent on a material database. Each of the layers in the process data specifies a material type that must exist in the corresponding material database.
  • the MEMS device model 150 is a system model of the MEMS device designed in the 3D Design Environment 100.
  • the components 151, 152, 153, 154 and 155 correspond to the components 301, 302, 303, 304 and 305 that are visible in the 3D view 300 of the MEMS device model 150 that were selected from the MEMS component library 110.
  • the MEMS device model 150 also contains links 156, 157, 158 and 159 that define the connectivity among the components 151, 152, 153, 154 and 155.
  • the user 10 assigns a schematic symbol 236 to the MEMS device model 150.
  • the MEMS device model may be exported to the system modeling environment 200 in the form of the schematic symbol 236 and a netlist that conveys connectivity information among components.
  • the combination of the schematic symbol 236 and the netlist 237 is referred to as MEMS device 235 in the system modeling environment 200 in FIG. 1.
  • the schematic symbol 236 represents the MEMS device model 150 in a schematic being simulated in the system modeling environment 200.
  • the use of the schematic symbol that represents the created MEMS device model provides a way to control the amount of information presented to the IC designers who are responsible for designing the electronic circuits that surround a MEMS device. IC designers do not need to see all of the components that comprise the MEMS device in their schematic. Moreover, there are situations in which the MEMS designers and IC designers work for different companies and it is desirable to protect the intellectual property of the MEMS device design by hiding its details from the IC designers. Therefore, the 3D design environment enables the MEMS designers to export a single symbol that represents the MEMS device to the system modeling environment and expose as ports to that symbol only the inputs, outputs and parameters that are of interest to the IC designers. [066] FIG.
  • FIG. 7 illustrates a completed 3D view 300 of an exemplary MEMS device model 150 in the 3D design environment 100, e.g. a ring gyro, and a corresponding schematic symbol 736 in the schematic view 350 in the system modeling environment 200.
  • the user 10 also specifies which parameters of the MEMS device model 150 will be exposed in the system modeling environment 200.
  • the exposed parameters are illustrated as the pins 737 of the schematic symbol 736.
  • the pins 737 of the schematic symbol 736 represent the electrical connections needed to link the schematic symbol 736 with one or more other components in a schematic in the system modeling environment. Additional connectors to other physical degrees of freedom inside the MEMS device model 150 may be exposed based on user selection.
  • Global variables of the MEMS device model 150 are preserved as parameters of the MEMS device symbol 736.
  • the system modeling environment 200 includes a schematic editor 210, a circuit simulator 220, and a system component library 230.
  • some or all of the system component library 230 may be user- defined and modified.
  • an additional component library plugin (not shown) allows users to customize the library of components through an editor.
  • the schematic editor 210 is used to create and/or edit a system model 250.
  • a user selects the MEMS device 235 and the electronic components 231 and 233 from the system component library 230 and places them in a schematic view 350 where the symbolic representations 232, and 234 of the model components 231 and 233 are joined with the schematic symbol 236 representing the MEMS device model 150 and displayed in two dimensions to the user.
  • the MEMS model may therefore be an assembly of components from a user-defined library.
  • the user also specifies or draws connections between the symbols 352, 354, 356 and 358 in the schematic view 350.
  • FIG. 8 illustrates the schematic view 350 of an exemplary complete system model 250.
  • a schematic symbol 802 imported from the 3D design environment 100 is connected to schematic symbols 832 and 834 representing components of the system component library 230 added to the exemplary MEMS device 235 in the system modeling environment 200.
  • the user configures the parameters of the selected components and interconnects their ports with the imported symbol representing the MEMS device created in the 3D design environment to create a schematic of the entire device in the schematic view 350.
  • the user may be the same as the user designing the MEMS device model, i.e. the MEMS designer.
  • the user may be a user designing the schematic view of the MEMS device model, i.e. the IC designer.
  • the components may be selected and configured prior to the importation of the schematic symbol from the 3D design environment.
  • a user in the 3D design environment may request a simulation and the symbol representing the MEMS device may be automatically exported, connected in a schematic, and simulated in the system modeling environment without additional user action.
  • the symbols representing electronic components such as transistors, resistors, inductors and capacitors are connected to create the desired circuit behavior.
  • the symbols that represent the electronic components have ports, or pins, that can be connected by wires to pins of other components. Each pin has a voltage and transfers current into or out of the component.
  • components may represent entities from other physical domains, such as masses, plates, magnets, lasers, optical lenses, electrostatic comb structures and electrodes.
  • the symbol ports of components represent inputs for electrical, mechanical, magnetic, fluidic, or optical sources, or can be input or output control pins for mechanical degrees of freedom, i.e. translational and rotational motions.
  • the schematic editor 210 maintains an underlying system model 250, which corresponds to the schematic view 350.
  • the system model 250 contains references to particular instances 251, 252, 253 and 254 of the system components 231, 233 and 235.
  • the system model 250 also contains the connections 255, 256 and 257 between the component instances 251, 252, 253 and 254.
  • the schematic editor 210 is also used to specify the values of the parameters that define each schematic component instance 251, 252, 253 and 254.
  • the parameters for each component 231, 233 and 235 are part of the component definition.
  • the component definition of the MEMS device 235 may include all global parameters of the MEMS device model 150.
  • the component parameters of the MEMS device 235 may include geometrical dimensions such as position, orientation, length, width and height, layer names or material properties like density and modulus of elasticity. In one instance changes of the parameters in components of the MEMS device 235 in the schematic editor 210 results in an
  • FIG. 9 illustrates an exemplary 3D view 910 of a MEMS device, a ring gyro.
  • the MEMS device model 150 for the ring gyro is exported into the system modeling environment 200.
  • a symbol 920 that represents the MEMS device model 150 is displayed in the schematic view 350.
  • the user may view and adjust parameters of the schematic symbol 920 representing the ring gyro 910 using the pop-up window 930.
  • the pop-up window 930 is provided for illustrative purposes and should not be construed as limiting as other mechanisms for adjusting parameters of the schematic symbol 920 may be used without departing from the scope of the present invention.
  • the changes made in the schematic view 350 may be conveyed to the 3D design environment 100, and an updated 3D view 940 of the ring gyro may be displayed on the display device 14.
  • the system modeling environment 200 also includes a circuit simulator 220.
  • the circuit simulator 220 is used to perform simulations of the system model 250 represented in the schematic view 350 by numerically integrating a system of coupled ordinary differential equations.
  • the user may run a simulation of the schematic model 250 in the circuit simulator 220 that will evaluate the MEMS device behavioral model at each simulation point, i.e. time step or frequency.
  • the user may run DC, AC and transient simulations of the model to confirm the device performance.
  • the execution of the simulation produces a simulation result 240.
  • the simulation result 240 is transferred back into the 3D design environment 100 in order to be displayed using the 3D simulation result visualizer 120.
  • the 3D simulation result visualizer 120 programmatically provides continuous updates of the individual MEMS components' (301, 302, 303, 304 and 305) 3D views, resulting in an animation of the mechanical motion of the 3D view 300 of the entire MEMS device model 150.
  • a 3D simulation result visualizer 120 uses the simulation result 240, the system model 250 and the MEMS device model 150 to provide a 3D view 300 of the simulation result 240 to the user 10.
  • the simulation result 240 from a simulation of system model 250 depicted in the schematic view 350 is fed to the 3D simulation result visualizer 120.
  • the simulation result visualizer 120 works in conjunction with 3D view generators 112, 114 and 116 to produce a 3D view 300 of the simulation result 240 by progressively altering the 3D view 300 to reflect changes in position over time, frequency or any other physical quantity being varied during the simulation of the system model 250.
  • FIG. 11 illustrates an alternate overview of the design process discussed herein including the 3D design environment 100, the system modeling environment 200 and a layout editor 1100.
  • the user may create a 3D MEMS device model 150 representing the MEMS device in the 3D design environment 100.
  • the MEMS device model 150 can be exported to a system modeling environment 200.
  • the model export involves the steps of creating a schematic symbol 236 representing the MEMS device, and exporting both the MEMS device symbol 236 and corresponding device model 150 in a format that is compatible with the system modeling environment 200.
  • the exported device model 150 may be in the form of a netlist 237, i.e. a data structure that describes a system model.
  • the created symbol 236 may have electrical connection pins needed to link the MEMS device symbol 236 with other schematic symbols in the system modeling environment 200. Additional connectors to other non-electrical degrees of freedom inside the MEMS device model may optionally be exposed in the MEMS device symbol 236. All global variables used in the MEMS device model 150 may be preserved as parameters of the created schematic symbol 236. These parameters may include geometrical, material or any other type of global variables used during the device definition in the 3D design environment 100.
  • a user forms a system model 250 by connecting the MEMS device 235 represented by the symbol 236 and other components 231, 233 and 235 from the system component library 230 in a schematic view 200.
  • the user runs a simulation of the system model 250 using the circuit simulator 220.
  • the simulation result 240 is exported to the 3D design environment 100 to be used in an animation of the 3D view 300 of the MEMS device model 150.
  • the user may export a parameterized layout cell (p-cell) to a layout editor 1100.
  • the behavioral models of the multi-physics devices discussed above are sufficiently sophisticated to fully represent the behavior of the multi-physics devices, capturing, for example, cross-coupling between the mechanical degrees of freedom. These behavioral models are more accurate than reduced-order models or look-up tables.
  • the behavioral models and layout p-cells are fully parameterized both with respect to
  • the user 10 may be separated from the computing device 12 via a network such as the Internet.
  • the components used by the 3D design environment may appear in a distributed manner over a network rather than being consolidated in a single computing device 12 and the multi-physics device components may be stored in a location other than in a component library.
  • a MEMS device may include components with two functionalities, namely deformable mechanical structures and electrodes.
  • a 2D polygonal description from which a compact model is to be built such as but not limited to a GDSII file, may group each functionality on a different layer.
  • components that are deformable mechanical structures may appear on layer A of the 2D polygonal description while the electrodes may be grouped on layer B of the 2D polygonal description.
  • the component library in the 3D design environment may have four types of components that have one of those two functionalities: a flexible 3D rectangular plate, a flexible 3D triangular plate, a rectangular electrode and a triangular electrode.
  • a user of the 3D design environment may specify in the component library via a user interface that flexible components are expected to be found on layer A and electrodes are expected on layer B.
  • the user may configure the components in the component library by specifying on which layer the components can be found by specifying the location via a user interface.
  • the user may specify that a flexible 3D rectangular plate will appear on layer A and a flexible 3D triangular plate will also appear on layer A.
  • the user specifies that the rectangular electrode and triangular electrode both will appear on layer B of the 2D description.
  • the 3D design environment examines each layer of the description. For each layer, all the components in the library that are available for that layer based on the layer’s functionality (e.g. flexible/deformable mechanical structures, electrodes, etc.) are identified and the component most appropriate to represent the geometry is selected for the device model by applying a geometric criterion to the layer data.
  • functionality e.g. flexible/deformable mechanical structures, electrodes, etc.
  • the 3D design environment knows that it is a deformable mechanical structure because of the previous user specification that deformable structures will be on layer A.
  • the 3D design environment attempts to find a component meeting that geometric criteria (rectangle) that is assigned to that layer in the library.
  • the rectangle on layer A is interpreted as a flexible 3D rectangular plate as a result of the previous configuration of the flexible 3D rectangular plate component in the library.
  • a rectangle is present on layer B, it will be interpreted by the 3D design environment as a rectangular electrode due to its configuration.
  • FIG. 12 is a flowchart of an exemplary sequence of steps followed by an embodiment of the present invention to create a 3D compact model from a 2D polygonal description in a 3D design environment.
  • the sequence begins by providing a library of parameterized components with different geometric shapes in a 3D design environment (step 1202).
  • the user configures each these components to specify the layer of a 2D polygonal model description on which the component is expected to appear (step 1204).
  • the 2D polygonal description may be a GDSII format which is a binary file format and the user may specify that a rectangular electrode is expected to be on layer B of the 2D description.
  • the sequence continues with the importing of a 2D polygonal description of a MEMS device model into the 3D design environment (step 1206).
  • the 3D design environment examines the imported 2D polygonal description and identifies each geometric shape on each layer (step 1208).
  • the 3D design environment then identifies the
  • the assembly of the corresponding components takes place programmatically.
  • the user manually connects the displayed 3D component
  • FIGs 13-16B provide illustration as to how similarly shaped components are distinguished in the 3D design environment.
  • FIG. 13 depicts a 2D layout view 1300 of two rectangular shaped components an electrode (the inner rectangle) 1302 and a mechanical part (the outer rectangle) 1304.
  • FIG. 14 depicts a process editor 1400 used to describe the fabrication process of the MEMS device as a succession of deposit and patterning steps of different materials. The patterning, or cut steps, are associated with a mask. Each mask is the result of Boolean operations (add/subtract) of layers.
  • FIG. 15 depicts a UI 1500 for a component library of the 3D design environment where each type of component may be configured by a user to specify the layer on which the component should appear. It should be noted that a single component may be suitable for more than one layer and more than 1 layer may be selected through the user interface for the component. For example, in UI 1500 the user has configured the rectangular segment component to appear on layer A and the rectangular gap component 1504 to appear on layer B.
  • FIGS 16A-16B depict an exemplary model creation in the 3D design environment that uses the configurations specified in FIG. 15.
  • the user utilizes a pull-down menu 1602 to start model creation.
  • FIG 16B depicts an exemplary created 3D compact model 1610 with both a rectangular segment component 1612 and a rectangular gap component 1614.
  • FIG 17 depicts another example of model creation in an embodiment.
  • FIG 17 depicts an exemplary electrostatic comb 1700 reflected in a 2D layout with several rectangles on different layers.
  • the model has two types of rectangle components that need to be respectively identified as combs rotor 1702 and stator 1704 respectively, in addition to the rectangles already present in FIG. 13.
  • the process editor 1800 in FIG. 18 may be used to describe the mechanical mask 1802 patterning the lOum polysilicon deposit, as being the union of layerA, LayerStator and LayerRotor. This information will be interpreted by the 3D virtual design environment as: any polygon found on layerA or LayerStator or LayerRotor will be made of lOum polysilicon material.
  • FIG 19 depicts an exemplary UI 1900 for the component library through which the user may specify the layer for the component.
  • the stator 1902 is configured by the user to appear on LayerStator (layer 3 and be data type 3) while the rotor 1904 is configured to appear on LayerRotor (layer 3 and be data type 2).
  • the interpretation of the 2D layout 2000 depicted in FIG 20A leads to the automatic generation of the model 2100 shown in FIG 20B.
  • the rectangle on layerA (L3D0) is imported as a rectangular segment.
  • the rectangle on layerB is imported as a RectangularGap (not visible on the 3D view of the picture). All the rectangles present on LayerRotor (L3D2) are converted to a single
  • this mechanism for creating compact 3D models can be generalized to a large number of components with different geometries and allows for complex compact model creation. This process can be tuned to different user needs.
  • a requirement on the 2D polygonal representation is that the layers regroup geometries by functionality. If any modification of the 2D representation is required, operations to copy/paste and Boolean operations to regroup geometries on different layers based on functionality may be performed in a layout editor.
  • an iterative procedure may be used to assemble components with hierarchical relationships.
  • the 3D design environment makes a first pass through the 2D polygonal description to interpret the polygons on the different layers and corresponding components are created. Only components without prerequisites can be created on this first pass. For some polygons, no suitable corresponding components are found. Considering the previously created components may fulfill some prerequisites for components that were previously unavailable, these components are new candidates to become corresponding components during a second pass performed on the remaining polygons. This process can be iterated as long as some polygons remain to be created, allowing complex hierarchical relations between components.
  • the same information used to create the 3D model may be used in reverse from the component library when creating a 2D polygonal description from a 3D model.
  • an embedded solver may be provided to the 3D design environment that can run analyses on the model without requiring an external EDA tool. In this case, only the MEMS, and not its surrounding IC is simulated.
  • the present invention may be provided as one or more computer-readable programs embodied on or in one or more computer-readable mediums.
  • the mediums may be a floppy disk, a hard disk, a compact disc, a digital versatile disc, a flash memory card, a PROM, a RAM, a ROM, or a magnetic tape.
  • the computer-readable programs may be implemented in any programming language.
  • the software programs may be stored on or in one or more mediums as object code.
  • the code may run in a virtualized environment such as in a virtual machine. Multiple virtual machines running the code may be resident on a single processor.

Abstract

Systems and methods for creating 3D compact MEMS device models from a 2D polygonal description are described. Embodiments enable the identification of corresponding 3D model components from a library of parameterized MEMS model components using 2D polygonal descriptions of a MEMS device.

Description

SYSTEM AND METHOD
FOR 2D TO 3D COMPACT MODEL CREATION FOR A MEMS DEVICE
Related Application
[001] This application claims the benefit of, and priority to, United States
Provisional Patent Application No. 62/624,703, filed January 31, 2018, the contents of which are incorporated by reference herein in their entirety.
Background
[002] Computer Aided Design (CAD) and Computer Aided Engineering (CAE) tools are used, respectively, to design and simulate virtual models of mechanical devices prior to producing actual physical devices. Similarly, Electronic Design Automation (EDA) tools are used to design and simulate virtual models of electrical and electronic devices prior to producing actual physical devices. CAD, CAE, and EDA tools are interactive software programs that run on a digital computer with a graphical display device. Attributes of CAD/CAE tools and EDA tools must be combined to design and simulate virtual models of multi-physics devices such as Micro Electro-Mechanical Systems (MEMS) devices prior to beginning the costly and time-consuming process of fabricating the actual physical devices.
[003] MEMS are micro-scale or nano-scale devices, typically fabricated in a similar fashion as integrated circuits (ICs), to exploit the miniaturization, integration, and batch processing attainable with semiconductor manufacturing processes. Unlike ICs which consist solely of electrical components, MEMS devices combine components from multiple physical domains and may contain, for example, electrical, mechanical, magnetic, radio frequency (RF), optical and fluidic components. MEMS devices appear in many forms and may include micro-electromechanical sensors and actuators such as gyroscopes, accelerometers, and pressure sensors, micro-fluidic devices such as ink jet heads, Radio-Frequency (RF) devices such as switches, resonators, varactors, and passives, and optical devices such as micro mirrors and fiber alignment devices. Typically, MEMS devices are not useful by themselves. To provide a useful function, a MEMS device must be incorporated in a system that includes electronic circuits that either control the MEMS devices or process electrical output signals from the MEMS devices. Most MEMS devices are comprised of a MEMS sensing or actuation element, i.e. the MEMS device itself, and accompanying electronics, i.e. an IC, that processes the output signal from the MEMS device and/or controls the MEMS device. [004] A 3D multi-physics design environment (hereafter "3D design environment") enables the design and simulation of multi-physics devices such as MEMS devices. An exemplary 3D design environment is described in United States Patent No. 9,015,016 entitled “ System and Method for Three-Dimensional Schematic Capture and Result Visualization of Multi-Physics System models the contents of which are incorporated herein by reference in their entirety. The 3D design environment may be programmatically integrated with a system modeling environment that is suitable for system-level design and simulation of analog-signal ICs, mixed-signal ICs and multi-physics systems. A parameterized MEMS device model may be created in a 3D graphical view in the 3D design environment using parameterized model components. The parameterized model components may each be associated with an underlying behavioral model and may be selected from a multi-physic s/MEMS component library. After the MEMS device model is completed, it may be exported to a system modeling environment. The MEMS device model may be exported to the system modeling environment without subjecting the model to preliminary finite element meshing.
[005] The exported MEMS device model allows circuit simulations involving the MEMS device and associated electronic circuitry to be conducted in the system modeling environment. Circuit simulation results may be transferred back into the 3D design environment in order to be visualized using the 3D view generators of the 3D design environment. The 3D view may display an animation of the mechanical motion of the MEMS device. The user may then export a parameterized layout cell to a layout editor that can be used to directly generate a layout of the MEMS device.
[006] Two complementary approaches exist for modeling a MEMS device. A first approach is to mesh the 3D geometry and then run a finite element method. In a second approach, the model can be an assembly of high order behavioral models e.g. suspensions, electrostatic combs and perforated plates. Each individual model is specialized to represent accurately a functionality with the least possible degrees of freedom. Such an assembly constitutes a model that is often smaller (in terms of number of degrees of freedom and equations to solve) and faster to simulate than the conventional finite element method with little or no loss in accuracy. The model is thus sometimes called a“compact model”. In this second approach, the 3D design environment has a library of components available for building a compact model. This library is customizable and components can be added/removed from a list. The components can also be preconfigured.
[007] One workflow in the MEMS industry is to build a 3D model out of a 2D polygonal description (e.g. a description in a GDSII format). This polygonal description contains several layers of 2D polygons. For example, the different layers can represent different materials or fabrication steps. The layers can also be used as information layers, giving a sense of the purpose of a part of the device. The geometries sharing a functionality are frequently grouped on the same layer so that each layer represents one functionality.
Brief Summary
[008] Embodiments of the present invention enable the creation of a 3D model of a MEMS device from a 2D polygonal description of the device using an assembly of heterogeneous components extracted from a library of components in a 3D design environment. Components in the library of components may be customized to interpret 2D polygons as their 3D component equivalent. Since for a given functionality, there are only a few components available (e.g. for addressing different geometries), components in the component library are preconfigured by a user and the layer on which a particular functionality is expected is specified. A geometric criterion is used to distinguish between differently shaped components appearing on the same layer in the 2D polygonal description that share a given functionality.
[009] In one embodiment, a computing device-implemented method of creating 3D compact MEMS device models from 2D polygonal descriptions in a 3D design environment includes the step of providing a parameterized component library holding components for the 3D design environment. Each component has a geometric shape. The method further includes receiving in the 3D design environment a user configuration of each component.
The user configuration specifies a layer of a 2D polygonal description on which the component is expected to appear. The method additionally imports a 2D polygonal description of a MEMS device model into the 3D design environment. The 2D polygonal description includes multiple geometric shapes and multiple layers and separates model functionality by layer. The method also identifies in the 3D design environment each geometric shape on each layer of the imported 2D polygonal description and identifies a corresponding component for each shape identified on a layer. The corresponding components are identified based on geometric shape and specified layer. Additionally, the method assembles in the 3D design environment multiple heterogeneous components into a 3D compact MEMS device model using multiple corresponding components.
[010] In another embodiment, a system for creating 3D compact MEMS device models from 2D polygonal descriptions in a 3D design environment includes at least one computing device equipped with a processor that is configured to generate a 3D design environment for MEMS device models. The 3D design environment is configured to provide a parameterized component library holding multiple components, each component having a geometric shape. The 3D design environment is also configured to receive a user configuration of each component that specifies a layer of a 2D polygonal description on which the component is expected to appear and to import a 2D polygonal description of a MEMS device model. The 2D polygonal description includes multiple geometric shapes and multiple layers and separates model functionality by layer. Further, the 3D design environment is configured to identify each geometric shape on each layer of the imported 2D polygonal description. The 3D design environment is also configured to identify a corresponding component in the parameterized component library for each shape identified on a layer. The corresponding components are identified based on geometric shape and specified layer. Additionally, the 3D design environment is configured to assemble multiple heterogeneous components into a 3D compact MEMS device model using multiple corresponding components. The system also includes a display surface in communication with the computing device. The display surface is configured to display the 3D compact MEMS device model in a 3D view.
Brief Description of the Drawings
[011] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate one or more embodiments of the invention and, together with the description, help to explain the invention. In the drawings:
[012] FIG. 1 depicts an exemplary 3D design environment usable by an
embodiment of the present invention;
[013] FIG. 2A depicts an empty 3D view generated by a schematic editor of the 3D design environment prior to the MEMS device assembly; [014] FIG. 2B depicts parameterization of an exemplary component selected from a component library using global variables inside the 3D schematic editor;
[015] FIG. 3 depicts parameterization of another exemplary component selected from a component library using global variables inside the 3D schematic editor and the 3D view of the selected exemplary part;
[016] FIG. 4 depicts an exemplary completed MEMS device model displayed in the 3D schematic editor and a listing of global variables used for component parameterization;
[017] FIG. 5A depicts another exemplary completed MEMS device model displayed in the 3D view generated by the 3D schematic editor and a listing of global variables used for component parameterization;
[018] FIG. 5B illustrates mechanical connectors of the exemplary MEMS device model illustrated in FIG. 5A;
[019] FIG. 5C illustrates electrical connectors of the exemplary MEMS device model illustrated in FIG. 5A;
[020] FIG. 6A depicts a first editor, a material property editor;
[021] FIG. 6B depicts a second editor, a process editor;
[022] FIG. 7 depicts the 3D design environment exporting a symbol of an exemplary MEMS device model together with the underlying behavioral model into a system modeling environment;
[023] FIG. 8 depicts a symbol representative of the created MEMS device model being added to a schematic in a system modeling environment;
[024] FIG. 9 depicts global variables used in the MEMS device model that are accessible as symbol parameters in the schematic editor of a system modeling environment;
[025] FIG. 10 depicts the transfer of the simulation results from a system modeling environment into the 3D design environment and the animation of the results in the 3D view;
[026] FIG. 11 illustrates an overview of the design process including the 3D design environment and the system modeling environment;
[027] FIG. 12 is a flowchart of an exemplary sequence of steps followed by an embodiment of the present invention to create a 3D compact model from a 2D polygonal description in a 3D design environment;
[028] FIG, 13 depicts similarly shaped components in the 3D design environment in an embodiment;
[029] FIG, 14 depicts an exemplary process editor UI in an embodiment;
[030] FIG. 15 depicts an exemplary UI for the component library in an embodiment; [031] FIGS 16A-16B depict an exemplary model creation in an embodiment;
[032] FIG 17 depicts an exemplary electrostatic comb in an embodiment;
[033] FIG 18 depicts an exemplary process editor UI in an embodiment;
[034] FIG. 19 depicts an exemplary UI for the component library;
[035] FIGS 20A depicts an exemplary layout in an embodiment; and
[036] FIG. 20B depicts an exemplary model generated from the layout of FIG. 20A.
Detailed Description
[037] Different techniques have been attempted to model MEMS devices. One existing method for building a 3D model of a MEMS device from a 2D polygonal description takes as input a 2D description of the geometry (a layout) and a description of the fabrication process steps to build an idealized 3D model. This 3D model is then meshed for simulation. This process is inappropriate for assembling compact models as it cannot identify different components in the structure.
[038] Another existing method for building a 3D model of a device from a 2D polygonal description creates a rigid 3D model from a 2D description. The 2D polygons are read and then extruded to get a 3D model. As the software has no other information, only one type of component from the library can be created this way. Therefore this process cannot create a proper compact model as it cannot identify different components (different functional parts with specific behavior and models). For example, this approach cannot create electrostatic components (i.e. components that model the electrostatic field between conductors that are represented by distinct polygons in the 2D source).
[039] An additional existing method for producing a compact model from a 2D source utilizes additional information stored in the 2D description. For example, to define an electrostatic comb, the different parameters (pitch, finger length, width, gap ...) are stored as an open polyline in a separate layer. The first segment length is interpreted as the pitch, the second as the finger length, etc. This information is read and interpreted by a script that translates it into the creation of different types of components. However, this ad hoc approach cannot be easily modified to handle different user needs. For example, it would be difficult to implement this approach for a large number of different components. Also, this approach requires extensive modifications to the original 2D representation, such as adding polylines that encode parameters, that are not directly the geometry that is to be imported. In a layout editor, users can copy/paste and perform Boolean operations on the geometries, but they cannot automatically create such polylines. Accordingly, this approach shifts the complexity of the MEMS device modeling problem to the creation of these polylines.
Furthermore, the open polylines are not part of the GDSII format (the standard source for 2D design descriptions) and are proprietary to specific tools.
[040] To avoid these problems with conventional approaches, embodiments of the present invention take advantage of the customizability of a library of parameterized MEMS components provided in a 3D design environment to help assemble a compact model of heterogeneous components from the information contained in a 2D polygonal description of a MEMS device. More particularly, embodiments enable the customization of the components in the library of components in a 3D design environment so as to cause the interpretation of the 2D polygons as their 3D component equivalent. Since for a given functionality, there are only a few components available (e.g. for addressing different geometries) a user
preconfigures components in the component library and specifies on which layer(s) (of a 2D polygonal description) this functionality is expected. A geometric criterion is used to distinguish between different types of components sharing a given functionality that appear on the same layer.
[041] Prior to discussing the compact model generation techniques provided by embodiments, an exemplary 3D design environment for MEMS design which may be adapted to practice the embodiments is first described.
Exemplary 3D Design Environment
[042] An exemplary 3D design environment suitable for practicing embodiments of the present invention will now be discussed with reference to FIGs 1-11. It should be appreciated that the description of the 3D design environment is made for purposes of illustration and explanation and embodiments of the present invention are not limited to the described environment. For example although the following exemplary 3D design environment description discusses the ability of a user to manually assemble a model from library components in the 3D view, the environment also supports the embodiments of the present invention discussed herein which enable the programmatic generation of a MEMS device model from an imported 2D polygonal description.
[043] A multi-physics device model, such as a MEMS device model, may be created in a three-dimensional (3D) design environment that is integrated with a system modeling environment. The created device model includes an underlying behavioral model associated with each component of the created device model. The created device model may be exported to a system modeling environment where it can be integrated into a schematic design and used in performing a circuit simulation or co-simulation. The behavioral model for the created device may be parameterized with respect to manufacturing and design dependent variables such as material properties and dimensional variations, as well as geometric properties of the design. The results of system-level simulations or co- simulations performed in the system modeling environment can subsequently be loaded back into the 3D design environment for result visualization and animation. A user viewing the displayed results in the 3D design environment may indicate satisfaction with the results and a parameterized 2-D layout cell may be programmatically generated and sent to a 2-D layout editor in the system modeling environment.
[044] The created MEMS device model, which may be used for system modeling, is automatically created by the 3D design environment from the behavioral models of the individual MEMS components. The MEMS device model may be automatically transferred to the system modeling environment for simulation without requiring the model to first undergo FEM. This process of creating a 3D schematic by assembling components in a 3D view is called "three-dimensional schematic capture". The exported MEMS device model allows for circuit simulations involving both the created MEMS device and the associated electronic circuitry in the system modeling environment. The 3D design environment can be used in an integrated fashion with system modeling environments.
[045] FIG. 1 depicts an exemplary 3D design environment usable by an
embodiment of the present invention. FIGS. 2A-11 describe various interactions between the components illustrated in FIG. 1. FIG. 1 is referenced throughout the detailed description.
[046] A computing device 12 providing a 3D multi-physics design environment 100 ("3D design environment") and a schematic-based system modeling environment 200 is illustrated in FIG. 1. The computing device 12 may be a server, workstation, laptop, or some other type of electronic device equipped with a processor and capable of executing instructions to provide the 3D design environment 100 and the system modeling environment 200. The 3D design environment 100 may include a MEMS component library 110, a 3D simulation result visualizer 120, and a 3D schematic editor 140. It will be appreciated that the individual components depicted in FIG. 1 may appear in combination or in different configurations from those depicted in FIG. 1 without departing from the scope of the present invention.
[047] The 3D schematic editor 140 is used to create and/or edit a 3D MEMS device model 150. The user 10 assembles a MEMS device model 150 in the 3D design environment 100 by selecting one or more instances of MEMS components 111, 113 and 115 from the MEMS component library 110 and configures the component parameters. As discussed further herein, in some embodiments, the component library may be customized in order to associate a layer of a 2D description with some components. Component parameters can be entered in the form of numbers or as an algebraic expression that references one or more global variables. All global variables used to parameterize the MEMS device 150 may be stored and defined in the 3D design environment 100.
[048] The library components 111, 113 and 115 may represent entities from different physical domains, such as masses, plates, magnets, lasers, optical lenses, electrostatic comb structures and electrodes. The component parameters may include geometrical dimensions such as position, orientation, length, width and height, layer names or material properties like density and modulus of elasticity. Component parameters may be entered in the form of numbers or as an expression of one or more global variables. An alternative approach for defining geometrical component parameters receives point selections or freeform drawing on a 2-D or 3D canvas.
[049] Each model component in the MEMS component library 110 may include a mathematical behavioral model represented by components 111, 113 and 115, and a corresponding 3D view generator 112, 114 and 116 that is a computer script or program containing the information needed to draw a 3D graphical view of each component. The underlying behavioral models of each component describe how the individual components behave mathematically when subjected to electrical or mechanical stimuli or stimuli from other domains. 3D view generators 112, 114 and 116 use the parameter information
(optionally together with other design information like the fabrication process description) to create a 3D image 301, 302, 303, 304 and 305 of the components 151, 152, 153, 154 and 155 after the user 10 successfully completes the parameter input.
[050] The underlying behavioral models are distinct from finite element models in that they use whatever mathematical (analytical) or numerical formulation is most efficient for representing the physical behavior of the modeled entity as opposed to generic shape functions that have a polynomial or other standard basis as is the case with finite elements. A suspension of a typical MEMS device, for instance, can typically be modeled as a collection of mechanical beam segments. Other components that can be assembled to model MEMS devices may include rigid and flexible mechanical plates of various shapes (rectangular, triangular, arc segments, etc.), inter-digitated electrostatic comb drives of various shapes and configurations, and flat or curved electrodes that may be placed above, below or to the side of any of the above mentioned mechanical elements. Each of these components must have an associated behavioral model that efficiently represents its physical behavior. The behavioral model for a mechanical beam may be an analytical solution of a well-known beam theory, such as the Euler-Bernoulli beam equation. Such a mathematical solution may be expressed explicitly in terms of the geometric parameters of the beam such as its length, width and thickness, and material properties such as Young's modulus. In addition, the behavioral model may have mechanical connection points such as the ends of a beam that specify where and how it can be connected to other mechanical components. The behavior of a rigid plate segment may be modeled by the equations governing rigid body dynamics, which depend on its inertial coefficients, which can in turn be expressed explicitly in terms of its geometric parameters and density. The behavioral models for electrostatic forces between electrodes and mechanical elements may be modeled by the simple equations for electrostatic force between flat plates of equivalent size, or by more sophisticated means such as conformal mapping in the case of inter-digitated comb fingers.
[051] The user assembles the MEMS device model in the 3D view 300 by connecting representations of the selected components 111, 113 and 115. The representations of the components are generated by 3D view generators 112, 114 and 116 respectively associated with the selected components. The 3D design environment saves the connection information that indicates how the components were connected by the user in the 3D view. The data structure underlying the model constructed in the 3D view 300 is referred to as a multi-physics or MEMS device model and contains references to the constituent components 301, 302, 303, 304 and 305, their underlying behavioral models, and data that indicates how the components 301, 302, 303, 304 and 305 are connected. The MEMS device model 150 constructed in the 3D view may be directly exported to a system modeling environment without additional meshing to form part of a system model of a MEMS device.
[052] One of ordinary skill in the art will appreciate that the MEMS component library 110 may include any number of components and corresponding 3D view generators. The number of components and corresponding 3D view generators illustrated in FIG. 10 are for illustrative purposes only and should not be deemed as limiting.
[053] FIGS. 2A and 2B depict the 3D view 300 used to create a MEMS device model in greater detail. FIG. 2A depicts an empty 3D view 300 generated by the 3D schematic editor 140. A user creates the MEMS device model by selecting components from a MEMS component library 110 and arranging them in the 3D view 300. FIG. 2B displays a parameter box 204 listing configurable parameters associated with a selected MEMS component.
[054] There are two categories of parameters that are relevant for multi-physics device design. The first category consists of the material properties and geometric parameters that are determined by the manufacturing process. The second category consists of the dimensional parameters of the components of the multi-physics device model, such as length, width, number of comb fingers, etc., that are determined by the user, i.e. the MEMS engineer. The parameterization of the second category is illustrated in FIG. 12.
[055] FIG. 3 illustrates an arc beam as an exemplary MEMS device model component 151 selected from the MEMS component library 110. The user 10 defines the parameters of the arc beam using a pop up menu 204. Once the parameterization of the component 151 is complete, a 3D view of the arc beam component 301 is depicted in the 3D view 300. The user 10 may select additional components and generate corresponding 3D views for the selected components. The 3D views can be connected (mechanically, electrically, optically, etc.) based on user selection or automatically by identifying touching component faces in the corresponding 3D models. For example, a beam and a rigid plate component may be connected automatically by recognizing that their shapes touch or intersect each other. At the end of the design process, a 3D view 300 of the entire MEMS device model 150 is provided to the user 10.
[056] FIG. 4 illustrates an exemplary 3D view of a ring gyroscope model 300. The 3D view 300 is a composite of individual 3D views of selected MEMS device model components. As further illustrated in FIG. 4, a list 406 of all MEMS components used in the MEMS device model 150 is displayed in a window 407 of the 3D design environment 100. The list of the components may be organized hierarchically to better illustrate the structure of the MEMS device model 150. The user 10 may select one or more components from the list 406 and see the global variables associated with the selected component(s) in a window 408 of the 3D design environment 100.
[057] FIGS. 5A-5C illustrate an exemplary the 3D view 300 of another MEMS device model, i.e. a Radio Frequency (RF) switch. As shown in FIG. 5A, a list 526 of all components depicted in the 3D view of the RF switch 300 is displayed as a tree structure on a window pane 527 of the 3D design environment 100. The list 526 of the components may be organized hierarchically to better illustrate the structure of the view of the 3D view of the RF switch 300. The user 10 may select one or more components from the list 526 and see the global variables associated with the selected component(s) on a window 528 of the 3D design environment 100. As it can be seen from the component tree, the RF switch illustrated in FIG. 5A includes 4 basic building blocks, i.e. components: one anchor and 3 beams.
[058] FIG. 5B illustrates the mechanical connectors 552 depicted in the 3D view of the RF switch 300 illustrated in FIG. 5A. A list of the mechanical connectors 536 is displayed in a tree view in a window 537 of the 3D design environment 100. The view 352 of the mechanical connectors 536 illustrates which components are linked together. Visual cues may be used to illustrate the connections between mechanical components. For example, in FIG. 5B the mechanical components are illustrated partially transparent and the mechanical connectors between the components are indicated by highlighted dots. It should be appreciated that connected components would move together as a single piece.
[059] FIG. 5C illustrates the electrical connectors of the RF switch illustrated in FIG. 5A. A list of the electrical connectors 546 is displayed in a tree view in a window 547 of the 3D design environment 100. The electrical connectors view 554 illustrates electrical connectivity among components using visual cues such as colors, opaque/transparent display, etc. Again, it should be appreciated that connected components would move together as a single piece. For example, electrical layers may be shown as solid pieces in the 3D view of the device model.
[060] In addition to tailoring the dimensions of the components of a multi-physics device, it is sometimes necessary to tailor the fabrication process to a particular multi-physics device in order to achieve the design goals. Thus the fabrication process is an important "free parameter" in multi-physics device designs that often needs to be refined as the development progresses. The flexibility to change the description of the fabrication process is missing from conventional IC design environments. In multi-physics device design, the parameters of the process description can be varied as part of the design, thus the models must be parameterized with respect to the process parameters as well.
[061] The 3D design environment addresses the specific needs of users, i.e. MEMS designers, to parameterize process parameters by providing two editors that are used to specify all relevant fabrication-specific data. The first editor, the material property editor 600, is shown in FIG. 6A. The material property editor 600 is used to create a material database that contains all relevant physical as well as visual properties used in the 3D design environment 100. Material properties may be defined as absolute values, variables or algebraic equations. A combination of variables and algebraic equations allows for properties to be mutually dependent on other properties, environmental variables, e.g.
temperature and humidity, or entirely abstract variables such as the equipment settings of a given fabrication process. The user 10 can choose which variables are to be exposed to other users. For example, FIG. 6A illustrates that the electrical conductivity 602 of aluminum is given by an algebraic expression that depends on the temperature T. At the bottom of the FIG. 6A, the user chose to "expose" T to other users by checking the corresponding box 604 on the material property editor 600.
[062] The second editor in the exemplary 3D design environment is known as a process editor and is shown in FIG. 6B. The process editor 650 enables the full
parameterization of the behavioral model for the complete MEMS device that is shared with the system modeling environment with respect to manufacturing and design-dependent variables. The process editor 650 is used to define the sequence of the multi-physics device fabrication steps. The underlying process data includes all relevant information about the layer stack, such as the layer order, material type, thickness and sidewall profile. The process data is dependent on a material database. Each of the layers in the process data specifies a material type that must exist in the corresponding material database.
[063] The MEMS device model 150 is a system model of the MEMS device designed in the 3D Design Environment 100. The components 151, 152, 153, 154 and 155 correspond to the components 301, 302, 303, 304 and 305 that are visible in the 3D view 300 of the MEMS device model 150 that were selected from the MEMS component library 110. The MEMS device model 150 also contains links 156, 157, 158 and 159 that define the connectivity among the components 151, 152, 153, 154 and 155.
[064] After the MEMS device model 150 is completed in the 3D design environment 100, the user 10 assigns a schematic symbol 236 to the MEMS device model 150. The MEMS device model may be exported to the system modeling environment 200 in the form of the schematic symbol 236 and a netlist that conveys connectivity information among components. The combination of the schematic symbol 236 and the netlist 237 is referred to as MEMS device 235 in the system modeling environment 200 in FIG. 1. The schematic symbol 236 represents the MEMS device model 150 in a schematic being simulated in the system modeling environment 200.
[065] The use of the schematic symbol that represents the created MEMS device model provides a way to control the amount of information presented to the IC designers who are responsible for designing the electronic circuits that surround a MEMS device. IC designers do not need to see all of the components that comprise the MEMS device in their schematic. Moreover, there are situations in which the MEMS designers and IC designers work for different companies and it is desirable to protect the intellectual property of the MEMS device design by hiding its details from the IC designers. Therefore, the 3D design environment enables the MEMS designers to export a single symbol that represents the MEMS device to the system modeling environment and expose as ports to that symbol only the inputs, outputs and parameters that are of interest to the IC designers. [066] FIG. 7 illustrates a completed 3D view 300 of an exemplary MEMS device model 150 in the 3D design environment 100, e.g. a ring gyro, and a corresponding schematic symbol 736 in the schematic view 350 in the system modeling environment 200. As noted above, the user 10 also specifies which parameters of the MEMS device model 150 will be exposed in the system modeling environment 200. The exposed parameters are illustrated as the pins 737 of the schematic symbol 736. The pins 737 of the schematic symbol 736 represent the electrical connections needed to link the schematic symbol 736 with one or more other components in a schematic in the system modeling environment. Additional connectors to other physical degrees of freedom inside the MEMS device model 150 may be exposed based on user selection. Global variables of the MEMS device model 150 are preserved as parameters of the MEMS device symbol 736.
[067] As illustrated in FIG. 1, the system modeling environment 200 includes a schematic editor 210, a circuit simulator 220, and a system component library 230. As discussed further herein, some or all of the system component library 230 may be user- defined and modified. In one embodiment, an additional component library plugin (not shown) allows users to customize the library of components through an editor. The schematic editor 210 is used to create and/or edit a system model 250. A user selects the MEMS device 235 and the electronic components 231 and 233 from the system component library 230 and places them in a schematic view 350 where the symbolic representations 232, and 234 of the model components 231 and 233 are joined with the schematic symbol 236 representing the MEMS device model 150 and displayed in two dimensions to the user. The MEMS model may therefore be an assembly of components from a user-defined library. The user also specifies or draws connections between the symbols 352, 354, 356 and 358 in the schematic view 350.
[068] FIG. 8 illustrates the schematic view 350 of an exemplary complete system model 250. A schematic symbol 802 imported from the 3D design environment 100 is connected to schematic symbols 832 and 834 representing components of the system component library 230 added to the exemplary MEMS device 235 in the system modeling environment 200. The user configures the parameters of the selected components and interconnects their ports with the imported symbol representing the MEMS device created in the 3D design environment to create a schematic of the entire device in the schematic view 350. One of ordinary skill in the art would appreciate that the user may be the same as the user designing the MEMS device model, i.e. the MEMS designer. Alternatively, the user may be a user designing the schematic view of the MEMS device model, i.e. the IC designer. It should also be appreciated that the components may be selected and configured prior to the importation of the schematic symbol from the 3D design environment.
[069] Alternatively, a user in the 3D design environment may request a simulation and the symbol representing the MEMS device may be automatically exported, connected in a schematic, and simulated in the system modeling environment without additional user action.
[070] When forming the schematic model in the schematic view 350, the symbols representing electronic components such as transistors, resistors, inductors and capacitors are connected to create the desired circuit behavior. The symbols that represent the electronic components have ports, or pins, that can be connected by wires to pins of other components. Each pin has a voltage and transfers current into or out of the component. In the schematic capture, components may represent entities from other physical domains, such as masses, plates, magnets, lasers, optical lenses, electrostatic comb structures and electrodes. The symbol ports of components represent inputs for electrical, mechanical, magnetic, fluidic, or optical sources, or can be input or output control pins for mechanical degrees of freedom, i.e. translational and rotational motions.
[071] The schematic editor 210 maintains an underlying system model 250, which corresponds to the schematic view 350. The system model 250 contains references to particular instances 251, 252, 253 and 254 of the system components 231, 233 and 235.
More than one instance may reference the same model component. The system model 250 also contains the connections 255, 256 and 257 between the component instances 251, 252, 253 and 254.
[072] The schematic editor 210 is also used to specify the values of the parameters that define each schematic component instance 251, 252, 253 and 254. The parameters for each component 231, 233 and 235 are part of the component definition. The component definition of the MEMS device 235 may include all global parameters of the MEMS device model 150. The component parameters of the MEMS device 235 may include geometrical dimensions such as position, orientation, length, width and height, layer names or material properties like density and modulus of elasticity. In one instance changes of the parameters in components of the MEMS device 235 in the schematic editor 210 results in an
automatically synchronized update of the 3D View 300.
[073] FIG. 9 illustrates an exemplary 3D view 910 of a MEMS device, a ring gyro. The MEMS device model 150 for the ring gyro is exported into the system modeling environment 200. After selection by the user via the schematic editor 210, a symbol 920 that represents the MEMS device model 150 is displayed in the schematic view 350. The user may view and adjust parameters of the schematic symbol 920 representing the ring gyro 910 using the pop-up window 930. Those skilled in the art will recognize that the pop-up window 930 is provided for illustrative purposes and should not be construed as limiting as other mechanisms for adjusting parameters of the schematic symbol 920 may be used without departing from the scope of the present invention. The changes made in the schematic view 350 may be conveyed to the 3D design environment 100, and an updated 3D view 940 of the ring gyro may be displayed on the display device 14.
[074] The system modeling environment 200 also includes a circuit simulator 220. The circuit simulator 220 is used to perform simulations of the system model 250 represented in the schematic view 350 by numerically integrating a system of coupled ordinary differential equations. The user may run a simulation of the schematic model 250 in the circuit simulator 220 that will evaluate the MEMS device behavioral model at each simulation point, i.e. time step or frequency. The user may run DC, AC and transient simulations of the model to confirm the device performance. The execution of the simulation produces a simulation result 240. The simulation result 240 is transferred back into the 3D design environment 100 in order to be displayed using the 3D simulation result visualizer 120. The 3D simulation result visualizer 120 programmatically provides continuous updates of the individual MEMS components' (301, 302, 303, 304 and 305) 3D views, resulting in an animation of the mechanical motion of the 3D view 300 of the entire MEMS device model 150.
[075] As illustrated in FIG. 10, a 3D simulation result visualizer 120, provided in the 3D design environment 100, uses the simulation result 240, the system model 250 and the MEMS device model 150 to provide a 3D view 300 of the simulation result 240 to the user 10. The simulation result 240 from a simulation of system model 250 depicted in the schematic view 350 is fed to the 3D simulation result visualizer 120. The simulation result visualizer 120 works in conjunction with 3D view generators 112, 114 and 116 to produce a 3D view 300 of the simulation result 240 by progressively altering the 3D view 300 to reflect changes in position over time, frequency or any other physical quantity being varied during the simulation of the system model 250.
[076] FIG. 11 illustrates an alternate overview of the design process discussed herein including the 3D design environment 100, the system modeling environment 200 and a layout editor 1100. As discussed above, the user may create a 3D MEMS device model 150 representing the MEMS device in the 3D design environment 100. After the MEMS device model 150 is completed, it can be exported to a system modeling environment 200. The model export involves the steps of creating a schematic symbol 236 representing the MEMS device, and exporting both the MEMS device symbol 236 and corresponding device model 150 in a format that is compatible with the system modeling environment 200. The exported device model 150 may be in the form of a netlist 237, i.e. a data structure that describes a system model. The created symbol 236 may have electrical connection pins needed to link the MEMS device symbol 236 with other schematic symbols in the system modeling environment 200. Additional connectors to other non-electrical degrees of freedom inside the MEMS device model may optionally be exposed in the MEMS device symbol 236. All global variables used in the MEMS device model 150 may be preserved as parameters of the created schematic symbol 236. These parameters may include geometrical, material or any other type of global variables used during the device definition in the 3D design environment 100.
[077] In the system modeling environment 200, a user forms a system model 250 by connecting the MEMS device 235 represented by the symbol 236 and other components 231, 233 and 235 from the system component library 230 in a schematic view 200. Upon completing the system model 250, the user runs a simulation of the system model 250 using the circuit simulator 220. The simulation result 240 is exported to the 3D design environment 100 to be used in an animation of the 3D view 300 of the MEMS device model 150. When the user is satisfied with the design, the user may export a parameterized layout cell (p-cell) to a layout editor 1100. [078] The behavioral models of the multi-physics devices discussed above are sufficiently sophisticated to fully represent the behavior of the multi-physics devices, capturing, for example, cross-coupling between the mechanical degrees of freedom. These behavioral models are more accurate than reduced-order models or look-up tables. The behavioral models and layout p-cells are fully parameterized both with respect to
manufacturing-dependent variations and geometric attributes of the design, enabling design and yield optimization studies in the EDA environment. The automatic hand-off and cross- linking between the multi-physics devices and system modeling environments eliminates inevitable human errors that arise in any manual hand-off process.
[079] Those skilled in the art will recognize that the user 10 may be separated from the computing device 12 via a network such as the Internet. Similarly, the components used by the 3D design environment may appear in a distributed manner over a network rather than being consolidated in a single computing device 12 and the multi-physics device components may be stored in a location other than in a component library.
Compact Model Generation
[080] The 3D design environment described above may be adapted for compact model generation. As a non-limiting example of compact model generation provided by embodiments taking place in a 3D design environment, a MEMS device may include components with two functionalities, namely deformable mechanical structures and electrodes. A 2D polygonal description from which a compact model is to be built, such as but not limited to a GDSII file, may group each functionality on a different layer. For example, components that are deformable mechanical structures may appear on layer A of the 2D polygonal description while the electrodes may be grouped on layer B of the 2D polygonal description. The component library in the 3D design environment may have four types of components that have one of those two functionalities: a flexible 3D rectangular plate, a flexible 3D triangular plate, a rectangular electrode and a triangular electrode. For example, a user of the 3D design environment may specify in the component library via a user interface that flexible components are expected to be found on layer A and electrodes are expected on layer B. Further, for each of the four types of components, the user may configure the components in the component library by specifying on which layer the components can be found by specifying the location via a user interface. Continuing with the above example, the user may specify that a flexible 3D rectangular plate will appear on layer A and a flexible 3D triangular plate will also appear on layer A. Similarly, the user specifies that the rectangular electrode and triangular electrode both will appear on layer B of the 2D description.
[081] Subsequently when the 2D description is imported into the 3D design environment to build a 3D model, the 3D design environment examines each layer of the description. For each layer, all the components in the library that are available for that layer based on the layer’s functionality (e.g. flexible/deformable mechanical structures, electrodes, etc.) are identified and the component most appropriate to represent the geometry is selected for the device model by applying a geometric criterion to the layer data. In the above example, if a rectangle is present on layer A, the 3D design environment knows that it is a deformable mechanical structure because of the previous user specification that deformable structures will be on layer A. Accordingly the 3D design environment attempts to find a component meeting that geometric criteria (rectangle) that is assigned to that layer in the library. In the above example, the rectangle on layer A is interpreted as a flexible 3D rectangular plate as a result of the previous configuration of the flexible 3D rectangular plate component in the library. Similarly, if a rectangle is present on layer B, it will be interpreted by the 3D design environment as a rectangular electrode due to its configuration.
[082] FIG. 12 is a flowchart of an exemplary sequence of steps followed by an embodiment of the present invention to create a 3D compact model from a 2D polygonal description in a 3D design environment. The sequence begins by providing a library of parameterized components with different geometric shapes in a 3D design environment (step 1202). The user configures each these components to specify the layer of a 2D polygonal model description on which the component is expected to appear (step 1204). For example, the 2D polygonal description may be a GDSII format which is a binary file format and the user may specify that a rectangular electrode is expected to be on layer B of the 2D description. The sequence continues with the importing of a 2D polygonal description of a MEMS device model into the 3D design environment (step 1206). The 3D design environment examines the imported 2D polygonal description and identifies each geometric shape on each layer (step 1208). The 3D design environment then identifies the
corresponding component with that shape assigned to that layer in the component library (step 1210). Once all the corresponding components have been identified, they are assembled in the 3D design environment to create a 3D compact model (step 1212). In one embodiment, the assembly of the corresponding components takes place programmatically.
In another embodiment the user manually connects the displayed 3D component
representations in the 3D view to assemble the model.
[083] FIGs 13-16B provide illustration as to how similarly shaped components are distinguished in the 3D design environment. FIG. 13 depicts a 2D layout view 1300 of two rectangular shaped components an electrode (the inner rectangle) 1302 and a mechanical part (the outer rectangle) 1304. FIG. 14 depicts a process editor 1400 used to describe the fabrication process of the MEMS device as a succession of deposit and patterning steps of different materials. The patterning, or cut steps, are associated with a mask. Each mask is the result of Boolean operations (add/subtract) of layers. The user may specify 1402 in the process editor 1400 that the electrical mask used to pattern the 0.45um polysilicon deposit is only constituted by layer B and may specify 1404 that the mechanical mask used to pattern the lOum polysilicon deposit is constituted by layer A. FIG. 15 depicts a UI 1500 for a component library of the 3D design environment where each type of component may be configured by a user to specify the layer on which the component should appear. It should be noted that a single component may be suitable for more than one layer and more than 1 layer may be selected through the user interface for the component. For example, in UI 1500 the user has configured the rectangular segment component to appear on layer A and the rectangular gap component 1504 to appear on layer B. These configurations allow the 3D design environment to correctly interpret the imported 2D polygonal description of the MEMS device model. FIGS 16A-16B depict an exemplary model creation in the 3D design environment that uses the configurations specified in FIG. 15. In FIG 16A, the user utilizes a pull-down menu 1602 to start model creation. FIG 16B depicts an exemplary created 3D compact model 1610 with both a rectangular segment component 1612 and a rectangular gap component 1614.
[084] FIG 17 depicts another example of model creation in an embodiment. FIG 17 depicts an exemplary electrostatic comb 1700 reflected in a 2D layout with several rectangles on different layers. The model has two types of rectangle components that need to be respectively identified as combs rotor 1702 and stator 1704 respectively, in addition to the rectangles already present in FIG. 13. The process editor 1800 in FIG. 18 may be used to describe the mechanical mask 1802 patterning the lOum polysilicon deposit, as being the union of layerA, LayerStator and LayerRotor. This information will be interpreted by the 3D virtual design environment as: any polygon found on layerA or LayerStator or LayerRotor will be made of lOum polysilicon material. FIG. 19 depicts an exemplary UI 1900 for the component library through which the user may specify the layer for the component. For example, in FIG 19, the stator 1902 is configured by the user to appear on LayerStator (layer 3 and be data type 3) while the rotor 1904 is configured to appear on LayerRotor (layer 3 and be data type 2).
[085] Once the component configuration is performed by the user, the interpretation of the 2D layout 2000 depicted in FIG 20A (but represented in GDSII format and imported into the 3D design environment) leads to the automatic generation of the model 2100 shown in FIG 20B. Therein, the rectangle on layerA (L3D0) is imported as a rectangular segment. The rectangle on layerB is imported as a RectangularGap (not visible on the 3D view of the picture). All the rectangles present on LayerRotor (L3D2) are converted to a single
StraightComb component, each rectangle representing a finger of the comb. The criterion used to decide whether to create a single component or more is to create the least possible number of components capable of representing exactly the geometry. Here, a single component is enough. The same logic applies to the StaightCombStator, made of all the rectangles present in LayerStator (L3D3). Also note the hierarchical relationship that is created: the stator is a child of the rotor, because in this behavioral model, a stator cannot be instantiated without a rotor.
[086] It should be appreciated that this mechanism for creating compact 3D models can be generalized to a large number of components with different geometries and allows for complex compact model creation. This process can be tuned to different user needs. A requirement on the 2D polygonal representation is that the layers regroup geometries by functionality. If any modification of the 2D representation is required, operations to copy/paste and Boolean operations to regroup geometries on different layers based on functionality may be performed in a layout editor.
[087] In one embodiment, an iterative procedure may be used to assemble components with hierarchical relationships. The 3D design environment makes a first pass through the 2D polygonal description to interpret the polygons on the different layers and corresponding components are created. Only components without prerequisites can be created on this first pass. For some polygons, no suitable corresponding components are found. Considering the previously created components may fulfill some prerequisites for components that were previously unavailable, these components are new candidates to become corresponding components during a second pass performed on the remaining polygons. This process can be iterated as long as some polygons remain to be created, allowing complex hierarchical relations between components.
[088] In another embodiment, the same information used to create the 3D model may be used in reverse from the component library when creating a 2D polygonal description from a 3D model.
[089] In one embodiment, an embedded solver may be provided to the 3D design environment that can run analyses on the model without requiring an external EDA tool. In this case, only the MEMS, and not its surrounding IC is simulated.
[090] The present invention may be provided as one or more computer-readable programs embodied on or in one or more computer-readable mediums. The mediums may be a floppy disk, a hard disk, a compact disc, a digital versatile disc, a flash memory card, a PROM, a RAM, a ROM, or a magnetic tape. In general, the computer-readable programs may be implemented in any programming language. The software programs may be stored on or in one or more mediums as object code. The code may run in a virtualized environment such as in a virtual machine. Multiple virtual machines running the code may be resident on a single processor.
[091] Since certain changes may be made without departing from the scope of the present invention, it is intended that all matter contained in the above description or shown in the accompanying drawings be interpreted as illustrative and not in a literal sense.
Practitioners of the art will realize that the sequence of steps and architectures depicted in the figures may be altered without departing from the scope of the present invention and that the illustrations contained herein are singular examples of a multitude of possible depictions of the present invention.

Claims

We claim:
1. A computing device-implemented method of creating 3D compact MEMS device models from 2D polygonal descriptions in a 3D design environment, comprising:
providing a parameterized component library holding a plurality of components for the 3D design environment, the plurality of components each having a geometric shape; receiving in the 3D design environment a user configuration of each component of the plurality of components, the user configuration specifying a layer of a 2D polygonal description on which the component is expected to appear;
importing a 2D polygonal description of a MEMS device model into the 3D design environment, the 2D polygonal description including a plurality of geometric shapes and a plurality of layers and separating model functionality by layer;
identifying in the 3D design environment each geometric shape on each layer of the imported 2D polygonal description;
identifying in the 3D design environment a corresponding component from the plurality of components in the parameterized component library for each shape identified on a layer, the corresponding component identified based on geometric shape and specified layer; and
assembling in the 3D design environment a plurality of heterogeneous components into a 3D compact MEMS device model using a plurality of corresponding components.
2. The method of claim 1 wherein the 2D polygonal description is in a GDSII format.
3. The method of claim 1 wherein the plurality of heterogeneous components have a hierarchical relationship.
4. The method of claim 1, further comprising:
creating a 2D polygonal description from the 3D compact MEMS device model.
5. The method of claim 4, wherein the creating:
identifies a component in the 3D compact MEMS device model;
identifies a corresponding component in the parameterized component library; and inserts data related to the component on a layer of the 2D polygonal description specified in a configuration of the corresponding component in the component library.
6. A non-transitory medium holding computing device-executable instructions for creating 3D compact MEMS device models from 2D polygonal descriptions in a 3D design environment, the instructions when executed causing at least one computing device to: provide a parameterized component library holding a plurality of components for the 3D design environment, the plurality of components each having a geometric shape;
receive in the 3D design environment a user configuration of each component of the plurality of components, the user configuration specifying a layer of a 2D polygonal description on which the component is expected to appear;
import a 2D polygonal description of a MEMS device model into the 3D design environment, the 2D polygonal description including a plurality of geometric shapes and a plurality of layers and separating model functionality by layer;
identify in the 3D design environment each geometric shape on each layer of the imported 2D polygonal description;
identify in the 3D design environment a corresponding component from the plurality of components in the parameterized component library for each shape identified on a layer, the corresponding component identified based on geometric shape and specified layer; and assemble in the 3D design environment a plurality of heterogeneous components into a 3D compact MEMS device model using a plurality of corresponding components.
7. The medium of claim 6 wherein the 2D polygonal description is in a GDSII format.
8. The medium of claim 6 wherein the plurality of heterogeneous components have a hierarchical relationship.
9. The medium of claim 6, wherein the instructions when executed further cause the at least one computing device to:
create a 2D polygonal description from the 3D compact MEMS device model.
10. The medium of claim 9, wherein the creating:
identifies a component in the 3D compact MEMS device model;
identifies a corresponding component in the parameterized component library; and inserts data related to the component on a layer of the 2D polygonal description specified in a configuration of the corresponding component in the component library.
11. A system for creating 3D compact MEMS device models from 2D polygonal descriptions in a 3D design environment, comprising:
at least one computing device equipped with a processor and configured to generate a 3D design environment for MEMS device models, the 3D design environment configured to:
provide a parameterized component library holding a plurality of components for the 3D design environment, the plurality of components each having a geometric shape, receive a user configuration of each component of the plurality of components, the user configuration specifying a layer of a 2D polygonal description on which the component is expected to appear,
import a 2D polygonal description of a MEMS device model, the 2D polygonal description including a plurality of geometric shapes and a plurality of layers and separating model functionality by layer,
identify each geometric shape on each layer of the imported 2D polygonal description,
identify a corresponding component from the plurality of components in the parameterized component library for each shape identified on a layer, the corresponding component identified based on geometric shape and specified layer, and
assemble a plurality of heterogeneous components into a 3D compact MEMS device model using a plurality of corresponding components; and
a display surface in communication with the computing device, the display surface configured to display the 3D compact MEMS device model in a 3D view.
12. The system of claim 11 wherein the 2D polygonal description is in a GDSII format.
13. The system of claim 11 wherein the plurality of heterogeneous components have a hierarchical relationship.
14. The system of claim 11, wherein the 3D design environment is further configured to: create a 2D polygonal description from the 3D compact MEMS device model.
15. The system of claim 14, wherein the creating:
identifies a component in the 3D compact MEMS device model;
identifies a corresponding component in the parameterized component library; and inserts data related to the component on a layer of the 2D polygonal description specified in a configuration of the corresponding component in the component library.
PCT/US2019/015565 2018-01-31 2019-01-29 System and method for 2d to 3d compact model creation for a mems device WO2019152366A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP19746606.3A EP3746918A4 (en) 2018-01-31 2019-01-29 System and method for 2d to 3d compact model creation for a mems device
US16/917,684 US20200334397A1 (en) 2018-01-31 2020-06-30 System and method for 2d to 3d model creation for a mems device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201862624703P 2018-01-31 2018-01-31
US62/624,703 2018-01-31

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/917,684 Continuation-In-Part US20200334397A1 (en) 2018-01-31 2020-06-30 System and method for 2d to 3d model creation for a mems device

Publications (2)

Publication Number Publication Date
WO2019152366A1 true WO2019152366A1 (en) 2019-08-08
WO2019152366A8 WO2019152366A8 (en) 2020-05-14

Family

ID=67478504

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2019/015565 WO2019152366A1 (en) 2018-01-31 2019-01-29 System and method for 2d to 3d compact model creation for a mems device

Country Status (3)

Country Link
US (1) US20200334397A1 (en)
EP (1) EP3746918A4 (en)
WO (1) WO2019152366A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116151172A (en) * 2023-04-18 2023-05-23 中国电子科技集团公司信息科学研究院 MEMS device model construction method, device and design method
EP4224353A1 (en) * 2022-02-08 2023-08-09 Siemens Industry Software NV Method for creating a virtual model of a component, computer system, computer program product
CN116644625A (en) * 2023-04-12 2023-08-25 安徽大学 Micromirror chip design analysis method based on multi-physical field coupling

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023045978A (en) * 2021-09-22 2023-04-03 株式会社東芝 Design support device, design support system, design support method, program, and storage medium
CN117131832B (en) * 2023-10-23 2024-02-02 巨霖科技(上海)有限公司 Method and device for constructing simulation component and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090144042A1 (en) * 2007-11-30 2009-06-04 Coventor, Inc. System and method for three-dimensional schematic capture and result visualization of multi-physics system models
US20140282302A1 (en) * 2013-03-14 2014-09-18 Coventor, Inc. Multi-etch process using material-specific behavioral parameters in 3-D virtual fabrication environment
US20170004250A1 (en) * 2004-05-07 2017-01-05 Mentor Graphics Corporation Integrated circuit layout design methodology with process variation bands

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10121279B1 (en) * 2014-07-14 2018-11-06 Ansys, Inc. Systems and methods for generating a mesh

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170004250A1 (en) * 2004-05-07 2017-01-05 Mentor Graphics Corporation Integrated circuit layout design methodology with process variation bands
US20090144042A1 (en) * 2007-11-30 2009-06-04 Coventor, Inc. System and method for three-dimensional schematic capture and result visualization of multi-physics system models
US20140282302A1 (en) * 2013-03-14 2014-09-18 Coventor, Inc. Multi-etch process using material-specific behavioral parameters in 3-D virtual fabrication environment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3746918A4 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4224353A1 (en) * 2022-02-08 2023-08-09 Siemens Industry Software NV Method for creating a virtual model of a component, computer system, computer program product
CN116644625A (en) * 2023-04-12 2023-08-25 安徽大学 Micromirror chip design analysis method based on multi-physical field coupling
CN116644625B (en) * 2023-04-12 2023-11-24 安徽大学 Micromirror chip design analysis method based on multi-physical field coupling
CN116151172A (en) * 2023-04-18 2023-05-23 中国电子科技集团公司信息科学研究院 MEMS device model construction method, device and design method

Also Published As

Publication number Publication date
EP3746918A4 (en) 2021-10-27
US20200334397A1 (en) 2020-10-22
EP3746918A1 (en) 2020-12-09
WO2019152366A8 (en) 2020-05-14

Similar Documents

Publication Publication Date Title
US9015016B2 (en) System and method for three-dimensional schematic capture and result visualization of multi-physics system models
US20200334397A1 (en) System and method for 2d to 3d model creation for a mems device
US7263674B2 (en) System and method for three-dimensional visualization and postprocessing of a system model
EP2873013A1 (en) Synthesis of simulation models from systems engineering data
US7131105B2 (en) System and method for automatic mesh generation from a system-level MEMS design
US6116766A (en) Fabrication based computer aided design system using virtual fabrication techniques
Agarwal et al. On the use of shape grammars as expert systems for geometry-based engineering design
Bailey et al. Augmenting computer-aided design software with multi-functional capabilities to automate multi-process additive manufacturing
Martin et al. A VR-CAD Data Model for Immersive Design: The cRea-VR Proof of Concept
US20110054873A1 (en) System and method for creation of function-based mechatronic objects
EP2110762A1 (en) Digital plant structure method and system thereof
Lorenz et al. 3D Parametric‐Library‐Based MEMS/IC Design
US20110307224A1 (en) System and Method for Machine Engine Modeling
US7272801B1 (en) System and method for process-flexible MEMS design and simulation
Garza et al. Appliancizer: Transforming web pages into electronic devices
Lin et al. Computational support for multiplicity in hierarchical electronics design
Perez-Maher et al. MEMS system design and verification tools
Jowers et al. Shape interpretation with design computing
Pawara et al. Study of micro-electro mechanical system (MEMS) design methodologies
Gao A feature-based geometric modeling approach for surface micromachined micro-mechanical systems
Lagartinho-Oliveira et al. Integrated Development of Embedded Systems with Remote Graphical User Interfaces
Lorenz et al. A novel modelling methodology for MEMS with IC applied to a DLP mirror array
EP3648065A1 (en) A system for determining visually relevant design differences between 3d models
Kharat Review of cyber physical system integrated with augmented re-ality in various aspects of additive manufacturing
Van Staden A Physical Design verification framework for superconducting electronics

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19746606

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019746606

Country of ref document: EP

Effective date: 20200831