Nanolithography Toolbox
NIST Handbook 160
Nanolithography Toolbox
Krishna C. Balram, Daron A. Westly, Marcelo Davanco, Karen E. Grutter, Qing Li, Thomas Michels, Christopher H. Ray, Liya Yu, Richard J. Kasica, Christopher B. Wallin, Ian J. Gilbert, Brian A. Bryce, Gregory Simelgor, Juraj Topolancik, Nicolae Lobontiu, Yuxiang Liu, Pavel Neuzil, Vojtech Svatos, Kristen A. Dill, Neal A. Bertrand, Meredith G. Metzler, Gerald Lopez, David A. Czaplewski, Leonidas Ocola, Kartik A. Srinivasan, Samuel M. Stavis, Vladimir A. Aksyuk, J. Alexander Liddle, Slava Krylov, and B. Robert Ilic
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160
NIST Handbook 160
Nanolithography Toolbox
Krishna C. Balram, Daron A. Westly, Marcelo Pavel Neuzil Davanco, Karen E. Grutter, Qing Li, Thomas Brno University of Technology (BUT), Central Michels, Christopher H. Ray, Liya Yu, Richard J. European Institute of Technology (CEITEC), Kasica, Christopher B. Wallin, Ian J. Gilbert, Kristen Technicka 3058/10, CZ-616 00 Brno, Czech Republic A. Dill, Neal A. Bertrand, Kartik A. Srinivasan, Department of Microsystems, Northwestern Samuel M. Stavis, Vladimir A. Aksyuk, J. Alexander Polytechnical University, Xi’an, P.R. China Liddle, Slava Krylov, and B. Robert Ilic Vojtech Svatos Center for Nanoscale Science and Technology Brno University of Technology (BUT), Central Brian A. Bryce European Institute of Technology (CEITEC), Harvey Mudd College, Claremont, CA 91711 USA Technicka 3058/10, CZ-616 00 Brno, Czech Republic Gregory Simelgor, Meredith G. Metzler and Gerald Lopez Edico Genome, La Jolla, CA 92037 USA Quattrone Nanofabrication Facility, University of Pennsylvania, Philadelphia, PA 19104 USA Juraj Topolancik Roche Sequencing Solutions, Pleasanton, CA 94588 David A. Czaplewski and Leonidas Ocola Center for Nanoscale Materials, Argonne National Nicolae Lobontiu Laboratory, Lemont, IL 60439 USA University of Alaska, Mechanical Engineering, Anchorage, AK 99508 USA Slava Krylov Tel Aviv University, School of Mechanical Engineering, Ramat Aviv 69978 Tel Aviv, Israel
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160
October 2016
U.S. Department of Commerce Penny Pritzker, Secretary
National Institute of Standards and Technology Willie May, Under Secretary of Commerce for Standards and Technology and Director
Nanolithography Toolbox Version 2016.10.01
Email: [email protected] This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from:
National Institute of Standards and Technology Chapter Contents Images from various CNST projects.
Platform Independent Fractals Vertex control of shapes Grayscale Image to GDS Curved geometries Scripting Polar and Hexagonal Arrays CNST Nanophotonics Library Pillar - Hole Arrays Couplers Grating Couplers Photonic Crystals Spirals Waveguides, S-Bends, Y-Bends Gratings Custom Tapers Verniers Reticle Frame Generator Arbitrary Function Generator JEOL Job File Generator Label Maker - Text To GDS JEOL Write Time Estimation
1 Contents
Email: [email protected]
This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: 1 Nanolithography Toolbox 1
Nanolithography Toolbox 8 1.1 Overview ...... 8 1.1.1 Terms Of Use ...... 10 1.1.2 Disclaimer ...... 10 1.1.3 Acknowledgements ...... 10 1.1.4 Development Team ...... 10 1.1.5 Future Developments ...... 11 1.1.6 Java 8 Requirements ...... 12 1.1.7 Distribution Package ...... 12 1.1.8 Modes of Operation ...... 12 1.1.8.1 CNST Scripting ...... 12 1.1.8.2 Graphical User Interface ...... 15
GDS Scripting 16 2.1 Setup, Execution and Examples ...... 16 2.1.1 Quick Start Setup ...... 16 2.1.2 Setup - CNSTdefaultValues.xml open and save directories 17 2.1.3 Graphical User Interface Execution ...... 18 2.1.4 Running CNST Scripts From a Terminal Command Prompt 19 2.1.5 Running Multiple CNST Scripts - Batch File Mode . . . . 19 2.1.6 Running CNST Scripts Within Matlab ...... 20 2.1.7 Python Script Generation ...... 21 2.1.8 NotePad++ Syntax Coloring ...... 22 2.1.9 Scripting Examples ...... 23 2.1.9.1 Basic Scripting Example ...... 23 2.1.9.2 Scripting Example - Labeled Calibration Ruler . . 24 2.1.9.3 Labeled Electrodes ...... 25 2.1.9.4 MEMS Comb Drive Flexures ...... 26 2.1.9.5 MEMS Radial Comb Drive Circular Hub ...... 27 2.1.9.6 Scripting Example Files Description ...... 28 2.2 Interface Functions ...... 32 2.2.1 Comments ...... 32 2.2.2 Creating Structures (Cells) ...... 32 2.2.3 Layer ...... 32 2.2.4 Data Type ...... 32 2.2.5 GDS Rendering Resolution ...... 32 2.2.6 Shape Resolution ...... 33
2 Chapter 1 CONTENTS
2.2.7 Font Outline Width ...... 33 2.2.8 Calls To Multiple CNST Script Files ...... 34 2.2.9 Log File Time Date Stamp ...... 34 2.3 Shapes ...... 35 2.3.1 Circles and Ellipses ...... 35 2.3.1.1 Primitive Ellipse ...... 35 2.3.1.2 Vectorized Ellipse ...... 35 2.3.2 Circle through three points ...... 36 This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: 2.3.3 Circle With a Wave Boundary ...... 37 2.3.4 Cross ...... 38 2.3.5 L-Shape ...... 39 2.3.6 Pie Shaped Arc ...... 40 2.3.7 Pie Shaped Arc - Vector ...... 40 2.3.8 Polygon ...... 41 2.3.9 Rectangle ...... 42 2.3.10 Rounded Rectangle ...... 43 2.3.11 Rectangular SU-Shape ...... 44 2.3.12 Rectangle With a Linear Taper ...... 45 2.3.13 Star ...... 46 2.3.14 Torus - Arc ...... 47 2.3.15 Torus - Vector ...... 47 2.3.16 Torus With a Wave boundary ...... 48 2.4 Arrays and Instances ...... 49 2.4.1 Rectangular Arrays ...... 49 2.4.2 Hexagonal Arrays ...... 50 2.4.3 Polar Arrays ...... 51 2.4.4 Instancing GDS Structures ...... 52 2.4.5 Points To Instance ...... 53 2.4.6 Pillar-Hole Hexagonal and Square Arrays ...... 54 2.5 General Area Operations ...... 56 2.5.1 Boolean Operations ...... 56 2.5.2 General Area Copies, Shape Bias and Affine Transfor mations ...... 58 2.6 Text Labels, PostScript and Logos ...... 60 2.6.1 Text ...... 60 2.6.2 Text Outline ...... 61 2.6.3 Label Maker ...... 62 2.6.4 Label Maker - Outline Text ...... 64 2.6.5 PostScript to GDS ...... 66 2.6.5.1 PostScript Pixel Value ...... 66 2.6.5.2 PostScript Fracturing ...... 66 2.6.5.3 Defining Postscript Shapes ...... 66 2.6.6 CNST and NIST logos ...... 68 2.7 Objects ...... 69 2.7.1 Arc (Torus-Circle) bounded square-hex arrays ...... 69 2.7.2 Bezier Curve ...... 70
NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 3 of 488 Chapter 1 CONTENTS
2.7.3 Fractals ...... 74 2.7.4 Function Plot ...... 75 2.7.5 Grayscale ...... 77 2.7.5.1 Polygons ...... 77 2.7.5.2 Ramp ...... 79 2.7.5.3 Spiral Staircase ...... 81 2.7.6 Interdigitated Electrodes ...... 83 2.7.7 Junctions ...... 86 This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: 2.7.7.1 T Junction ...... 86 2.7.7.2 H Junction ...... 87 2.7.7.3 Arrow Junction ...... 88 2.7.8 Meander Channel ...... 89 2.7.9 Points To Shape ...... 92 2.7.10 Polygon Along a Path ...... 93 2.7.11 Random Polygons ...... 94 2.7.12 Random Ellipses and Vectorized Ellipses ...... 95 2.7.13 Resolution Test Pattern ...... 96 2.7.14 Spirals ...... 99 2.7.15 Spiral - Rectangular ...... 100 2.8 Alignment and Reticle Elements ...... 101 2.8.1 Alignment Marks - Predefined ...... 101 2.8.2 Alignment Marks - Custom ...... 105 2.8.3 Reticle Barcode and Label Frames ...... 107 2.8.4 Vernier ...... 108 2.8.5 Vernier With Labels ...... 109 2.8.6 Arrows ...... 110 2.9 CNST Nanophotonics Library ...... 111 2.9.1 Waveguides ...... 112 2.9.1.1 Waveguide ...... 112 2.9.1.2 Waveguide Slot ...... 113 2.9.1.3 Waveguide Inverse ...... 114 2.9.1.4 Waveguide Inverse Slot ...... 115 2.9.1.5 Waveguide Expander ...... 116 2.9.2 Tapers ...... 117 2.9.2.1 Linear Taper ...... 117 2.9.2.2 Linear Taper Slot ...... 118 2.9.2.3 Linear Taper Inverse Slot ...... 119 2.9.2.4 Exponential Taper ...... 120 2.9.2.5 Exponential Taper Inverse ...... 121 2.9.2.6 Exponential Taper Inverse Slot ...... 122 2.9.2.7 Custom Taper ...... 123 2.9.3 Couplers ...... 124 2.9.3.1 Directional Couplers ...... 124 2.9.3.2 S-Bend Taper ...... 128 2.9.3.3 S-Bend Funnel ...... 129 2.9.3.4 S-Bend ...... 130
NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 4 of 488 Chapter 1 CONTENTS
2.9.3.5 S-Bend Inverse ...... 131 2.9.3.6 S-Bend Inverse Slot ...... 132 2.9.3.7 Y-Bend ...... 133 2.9.3.8 Y-Bend Inverse ...... 134 2.9.3.9 Y-Bend Inverse Slot ...... 135 2.9.3.10 Y-Bend - 90 degree ...... 136 2.9.3.11 Y-Bend Inverse - 90 degree ...... 137 2.9.3.12 Y-Bend Inverse Slot - 90 degree ...... 138 This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: 2.9.3.13 90 Degree Bend ...... 139 2.9.3.14 90 Degree Bend Inverse ...... 140 2.9.3.15 90 Degree Bend Inverse Slot ...... 141 2.9.3.16 180 Degree Bend ...... 142 2.9.3.17 180 Degree Bend Inverse ...... 143 2.9.3.18 180 Degree Bend Inverse Slot ...... 144 2.9.4 Racetrack ...... 145 2.9.5 Spiral Delay Line ...... 146 2.9.6 Inverse Spiral Delay Line ...... 148 2.9.7 Gratings ...... 150 2.9.7.1 Grating ...... 150 2.9.7.2 Apodized Grating ...... 151 2.9.7.3 Grating Coupler ...... 152 2.9.7.4 Grating Couplers With Waveguides ...... 153 2.9.8 Photonic Crystals and Hexagonal Arrays ...... 156 2.9.9 Disc-Ring Architectures ...... 157 2.9.9.1 Disc-Ring - Bezier Curves, Arcs and Endcaps . . 157 2.9.9.2 Disc-Ring Infinite ...... 159 2.9.9.3 Disc-Ring Infinite Inverse ...... 161 2.9.9.4 Disc-Ring Infinite Inverse Positive Tone ...... 163 2.9.9.5 Disc-Ring Symmetric Bezier ...... 165 2.9.9.6 Disc-Ring Symmetric Arc ...... 175 2.9.9.7 Disc-Ring Symmetric Inverse Bezier ...... 185 2.9.9.8 Disc-Ring Symmetric Inverse Arc ...... 195 2.9.9.9 Disc-Ring Symmetric Inverse Positive Tone Bezier205 2.9.9.10 Disc-Ring Symmetric Inverse Positive Tone Arc . 215 2.9.9.11 Disc-Ring Pulley Bezier ...... 225 2.9.9.12 Disc-Ring Pulley Arc ...... 235 2.9.9.13 Disc-Ring Pulley Inverse Bezier ...... 245 2.9.9.14 Disc-Ring Pulley Inverse Arc ...... 255 2.9.9.15 Disc-Ring Pulley Inverse Positive Tone Bezier . . 265 2.9.9.16 Disc-Ring Pulley Inverse Positive Tone Arc . . . . 275 2.9.10 Waveguide Inverse Photonic Crystals (Ellipse) ...... 285 2.9.11 Waveguide Photonic Crystals (Ellipse) ...... 286 2.9.12 Waveguide Inverse Photonic Crystals (Rectangle) . . . . 287 2.9.13 Waveguide Photonic Crystals (Rectangle) ...... 288 2.9.14 Waveguide Photonic Crystals (Flush Rectangle) . . . . . 289 2.9.15 Various Waveguide-Disc-Tip Coupled Structures . . . . . 290
NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 5 of 488 371 364 364 361 361 357 347 357 311 314 317 373 372 372 368 368 370 370 370 370 368 363 363 363 363 363 363 365 359 360 358 360 360 360 313 329 340 319 298 298 298 299 300 302 360 . page 6 of 488 ...... Default Values Initialization File Initialization Values Default Main Align Pattern Pattern Dose Matrix Hub With Straight and Circular Springs and Circular Hub With Straight Bi-Morph Thermal Actuator Actuator Bi-Morph Thermal ...... Photonic Crystals Random Polygons Random Rectangular Array EBL Write Time Estimation Label Maker Text To GDS Arbitrary Function Generator Binary Zone Plate EBL Max Clock CNST Reticle Frame Generator Generic Reticle Frames Ebeam Lithography - Job and Schedule File Generator EBL Alignment Offset Spirals Gratings Suspended Fluid Cell Array (Square/Hex) Pillar-Hole Torus Grating Coupler - Bulls Eye Doubly Clamped Beams Interacting Arrays Structures Measurement Strain Stress, Gears Anchored Flexures Cantilevers Actuators Actuators Bolometers Interface 3.2.3.1 3.2.3.2 3.2.3.3 3.2.3.4 3.2.3.5 2.10.8.2 Diamond Ring 2.10.3.1 2.10.8.1 Guckel Rings 2.10.3.2 Radial Comb Drive 2.10.1.1 Bent Beams 2.10.1.2 2.10.1.3 Combs and Drive Elements 2.10.1.4 Folded Springs CONTENTS User 1 3.3.5 3.3.6 3.3.7 3.2.6 3.3.1 3.3.2 3.3.3 3.3.4 Advanced CAD Resources 3.2.5 3.2.1 3.2.2 3.2.3 3.2.4 Lithography Machine Resources 3.1.4 3.1.5 Basic Shapes 2.10.9 3.1.1 3.1.2 3.1.3 2.10.6 2.10.7 2.10.8 2.10.3 2.10.4 2.10.5 2.10.1 2.10.2 3.3 3.2 3.1 2.10 MEMS - NEMS Library Graphical NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Chapter
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 404 414 417 401 394 394 387 391 381 374 374 374 377 453 395 396 398 383 385 388 389 379 373 376 376 479 376 page 7 of 488 ...... Alignment and Reticle Element Methods Alignment and Reticle Library Methods Nanophotonics MEMS NEMS Library Methods Shape Methods Array Methods Methods and Logo Labels, PostScript Text, Miscellaneous Object Methods Accessor and Mutator Methods Methods and Struct GDS Area Miscellaneous Custom Class Methods Objects -GDS Area and Data-types Layers Centering GDS Area Objects PostScript to GDS Curved Fluidic Channels MEMS Perforated Flexures Labeled Arrays Fractals Fractals Grayscale Image To GDS and Affine Transformations Boolean Operations Verniers Verniers Template Script Method Access Cantilever Arrays Reference 4.2.7 4.2.8 4.2.9 4.2.3 4.2.4 4.2.5 4.2.6 4.2.1 4.2.2 Reference Methods 4.1.6 4.1.7 4.1.8 4.1.9 4.1.10 4.1.5 4.1.4 3.3.10 3.3.11 4.1.3 Programming Examples 3.3.9 4.1.1 4.1.2 3.3.8 4.2 4.1 Bibliography Programming NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 – 70 ects. To ects. To page 8 of 488 ]. also package The 103 – 83 ] at nanoscale ] dimensions at re 37 – 1 orts in nanoscale optics and photon and optics nanoscale in orts ], images to GDS, polar arrays (also, hexag 8. In addition to standard Java libraries, the 82 – 77 Overview ]. Consequently, we have developed a library of com nanophotonics we have ]. Consequently, 69 – latform independent CNST Nanolithography toolbox for scripted layout layout scripted for toolbox Nanolithography CNST independent latform aggressively address to designed was processing complex and generation scaled nanoscale device architectures. design phase, Within the layout 38 The CNST nanolithography also toolbox contains primitives (ellipses, torus, At CNST, we have strong research eff research strong have we CNST, At ] and other complex structures) with precise control of vertex location in 1.1 P onal and rectangular), and many more customized shapes. we Additionally, flexures, actuators, of variety containing elements of library MEMS a include pattern placement (Figure 1.1). (Figure placement pattern v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox objects [76]. hexagonal), a variety of spirals, (rectangular, arrays pillar-hole etc), rectangles, fractals, gratings, verniers, arbitrary function generator (shapes defined by zone GDS, to postScript GDS, to text makers, label function), mathematical a plates, grayscale objects [ structures[ array interacting beams, and clamped contains CNST-developed reticle generators for various steppers (barcode, label, reticle marks), a CNST ebeam lithography write time and estimator, a of display graphical a with generator file schedule and job lithography ebeam complex shapes to GDSII. complex shapes to ics [ S-bends based ponents (the CNST library contains nanophotonics microrings, on Bezier curves, photonic crystals, variety of tapers, grating couplers [ NanoFab two the of either the using example, for lithography, high-resolution X) MacOS and Windows (Linux, system operating any on run will and pendent imprecise representation of curved objects [ representation imprecise line-edge roughness. in increased sults the consequent events from Scattering eff dissipative enhanced leads peripheries to asperities along device we tools, layout commercial standard with along dilemmas, these circumvent streaming directly for package software scripting CAD custom a developed have the GDSII file. Accurate shape representation is of particular importance to toolbox utilizes the freely available JGDS library for encoding shapes to GDS GDS to shapes encoding for library JGDS available freely the utilizes toolbox terface terface enables significant user customization to lay out structures outside inde the toolbox is platform designs. available of the standard Furthermore, keV 100keV tools with sub-nm grid snapping capability. The flexible scripting in 75 with Java standard edition (SE)
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 EBL Basic frame arrays Reticle shapes generator calculator max clock Pillar-Hole page 9 of 488 EBL Function generator write time estimation GUI Machine Resources EBL Spirals JDF-SDF definition CNST Toolbox Library Nanolithography Nanophotonics to other software Interface Library Scripting MEMS-NEMS Programming CNST Nanolithography Toolbox chart illustrating a myriad of available com chart a illustrating myriad of available CNST Nanolithography Toolbox plex shapes, objects and functions. User defined custom 1.1: methods Vertex NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure curves control Complex Control scripting methods Access to statements hierarchy Structural
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 10 of 488 Team Use Of Acknowledgements Development Disclaimer Terms Li, T. Michels, C. H. Ray, L. Yu, R. Michels, L. Kasica, Li, Yu, C. C. H. T. B. Ray, Wallin, I. Gilbert, B. A. Bryce, Simelgor, J. Topolancik, N. Lobontiu , Y. Liu, P. Neuzil, V. Svatos, K. A. Dill, N. Dill, A. K. Svatos, V. Neuzil, P. Liu, Y. , Lobontiu N. Topolancik, J. Simelgor, Bertrand, M. Metzler, Bertrand, G. D. Lopez, M. A. Metzler, Czaplewski, L. Ocola, K. Srinivasan, S. 1.1.3 1.1.4 1.1.2 1.1.1 ogy (NIST) by employees of the Federal Government in the course of their official their of course the in Government Federal the of employees by (NIST) ogy this software duties. Code States United the of 105 Section 17 title to Pursuant Many researchers at NIST, CNST and external collaborators have made substan made have collaborators external and CNST NIST, at researchers Many tial contributions the to nanolithography toolbox. The most development team Westly, A. Daron Maryland), of (University Balram C. Krishna of consists notably Marcelo Davanco, Karen Grutter, Qing Li (University of Maryland), Thomas Michels, Christopher H. Ray, Liya Yu, Richard Kasica, Christopher B. Wallin Neuzil (Brno University of Technol- Pavel Institute), Polytechnic Liu (Worcester v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox If you developed layouts using the CNST nanolithography toolbox, please ac please toolbox, nanolithography CNST the using layouts developed you If reference: knowledge its use by including the following Q. G. can be redistributed and/or modified freely provided that any derivative works any derivative that provided and/or freely modified can be redistributed it, and any modified versions bear derived from they are bear that some notice been modified. they have that some notice imply not procedure. does experimental the identification specify Such to als and Standards of Institute National the by endorsement or recommendation the purpose. for the best available necessarily identified are is not subject to copyright protection and is in the public domain. The NIST experimental system. an is toolbox CNST nanolithography assumes no NIST guarantees, no makes and parties, other by use its for whatsoever responsibility or any other characteristic. reliability, or implied, about its quality, expressed Stavis, V. Aksyuk, J. A. Liddle, S. Krylov and B. V. R. Ilic, Stavis, J. Res. Natl. Inst. Stand. The Nanolithography Toolbox, K. C. Balram, D. A. Westly, M. Davanco, K. Grutter, K. Grutter, M. Davanco, K. C. Balram, D. A. Westly, The Nanolithography Toolbox, This manual identifies certain commercial equipment, instruments, and This materi manual identifies commercial certain materials and instruments, equipment, the that imply it does nor Technology, This software was developed at the National Institute of Standards and Technol and Standards of Institute National the at developed was software This 121, pp. 464-475 (2016). http://dx.doi.org/10.6028/jres.121.024 A. (University of Maryland), Ian Gilbert (University of Maryland), Brian A. Bryce (Harvey Mudd College), Gregory Simelgor (Edico Genome), Juraj Topolancik (Roche Sequencing Solutions), Nicolae Lobontiu (University of Alaska), Yuxiang (University Sequencing (Roche of Solutions), Alaska), Nicolae Yuxiang Lobontiu We would appreciate acknowledgment would if appreciate the We is software used. This software
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 11 of 488 orts have been made to ensure that the The software will evolve over time, implementing Developments Future Please direct comments, suggestions, encountered bugs to Nanolithog 1.1.5 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox [email protected]. [email protected]. CNST nanolithography toolbox is supported on Linux, Windows and MacOS as the CNST identifies and prioritizes new applications. features ing within the CNST community. that hope the with distributed is toolbox The community. CNST the within ing it will be useful, but without without even any an warranty, implied warranty for any particular purpose. All eff Neal A. Bertrand, Meredith Metzler (University of Pennsylvania), Gerald Lopez Lopez Gerald Pennsylvania), of (University Metzler Meredith Bertrand, A. Neal Samuel Srinivasan, Kartik Laboratory), National (Argonne Ocola Leonidas tory), University) (Tel-Aviv Krylov Slava Liddle, Alexander J. Aksyuk, Vladimir Stavis, Ilic. and B. Robert ogy, KIST-Europe), Vojta Svatos (Brno University of Technology),Kristen A. Dill, A. Technology),Kristen of University (Brno Svatos Vojta KIST-Europe), ogy, The CNST nanolithography toolbox is broad in scope and continuously grow continuously and scope in broad is toolbox nanolithography CNST The X. (University of A. David Pennsylvania), Czaplewski (Argonne National Labora
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 file page 12 of 488 extension extension and converts .cnst CNSTnanoToolboxVXXXX.jar –version The CNST Nanolithography Toolbox executable executable The CNST Nanolithography Toolbox version numbers. represent file. JAR Java X’s the CNST ebeam tool values for parameter Default file directories. module, load and save containing syntax coloring XML language Directory scripting, GUI module definition file, numerous examples. and programming java CNSTnanoToolboxVXXXX.jar Package –jar Operation XXXX.jar Scripting Requirements of java alues.xml 8 oolboxV CNST aultV Modes Distribution Java nanoT def ST 1.1.8.1 1.8.X_XX indicates Java version 8 is available. To run the CNST NanoLithog 8 version is available. Java To 1.8.X_XX indicates Upon of execution the code, will java the CNST Nanolithography Toolbox java version "1.8.0_40" java (build 1.8.0_40-b26) SE Runtime Environment Java(TM) mode) 64-Bit Server VM (build 25.40-b25, mixed HotSpot(TM) Java 1.1.8 1.1.7 1.1.6 CNST CN Examples scripting feature is listed as the first option within the resource menu. The scripting module reads in an ASCII file with a v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox raphy Toolbox, either double click on the manner: 64-bit Windows 7. as it appears under shows the toolbox 1.2 Figure edition (SE) 8, hence earlier versions will not work correctly. To determine the determine To correctly. work not will versions earlier hence 8, (SE) edition type: prompt linux/mac terminal) the (windows command or SE version, at appear in a similar fashion as seen in 1.2. figure The menu appearance may vary slightly depending on the operating system the interface is running under. is running under. the interface vary slightly depending system on the operating The most powerful feature The of most the powerful CNST feature nanolithography toolbox is scripting. The package contains the following files and directories: files and directories: The package contains the following The graphical user interface (GUI) was constructed using JavaFX components. using JavaFX (GUI) was constructed The graphical user interface The code employs a variety of elements contained in latest java standard Virtually any shape can using be the constructed CNST Scripting features. The At the terminal prompt the following would appear: following the prompt terminal the At (X’s represent version numbers) or run from a command prompt in a following in a following a command prompt version numbers) or run from represent (X’s
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 .cnst files is page 13 of 488 .cnst ers a myriad of options that are either not or found ex content in the main panel display. in the main panel display. content CNST nanolithography toolbox graphical user interface running under Win CNST graphical user nanolithography interface toolbox within the left panel in a collapsible displayed are features dows 7. Various menu. tree Highlighting a node of a feature particular branch will display 1.2: CNST scripting off files is described in section 2.1.5. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox prompt (see section 2.1). Additionally, running batch execution of many of execution batch running 2.1). section (see prompt Additionally, errors become visually distinct. errors complex objects directly to GDS. We also provide an extensive library of objects an extensive also provide GDS. We to complex objects directly elements. nanophotonic including numerous design phase, During the pattern objects scripting CNST the which between points grid into up broken is space rendered. are 1.3 shows various Figure points connecting a variety of gener waveguide, crystal photonic taper, (exponential elements nanophotonic ated y-splitters, waveguides, s-bends and rings). Syntax coloring for Figure available using available NotePad++. This improves and readability-structure feature tremely tremely difficult to implement within standard CAD packages that produce GDS files. The full for command CNST reference scripting is included in sec tion 1.1.8.2. Figure 1.4 illustrates a variety of generated GDS shapes. CNST scripting is either carried out from the GUI or from the terminal command
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ... page 14 of 488 K I J F G H E D CNST Scripting example illustrating a variety of available shapes streamed shapes CNST streamed Scripting a example illustrating variety of available GDSII. to directly Pattern layout design schematic highlighting various available nanophotonic nanophotonic available various highlighting schematic design layout Pattern elements. A B C 1.4: 1.3: Figure v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 branch Shapes page 15 of 488 Basic Pillar-Hole (Square/Hex) Array Array (Square/Hex) Pillar-Hole Interface User Graphical Pillar-hole array module example showing various available options within available example showing various module array Pillar-hole GUI. the main panel of the toolbox 1.5: Double clicking on a module feature or single clicking on the triangle directly directly triangle the on clicking single or feature module a on clicking Double 1.1.8.2 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure button. button. highlighted a shows 1.5 Figure node within the left panel. The main panel shows various available module GUI. within the toolbox parameters to to the left that node expands the menu the options. instance, displayed. For are node all Consequently, branch that module within elements arrays arrays, branch has several objects including polygon-based pillar-hole accessible the of gratings. any and Highlighting spirals couplers, grating tori, of nodes feature will display available options of the specified module. In case file GDS as such field text a within parameters defined user arrays, pillar-hole name, number of sides (shape vertices), GDS layer, rotation, radius, object to buttons with along pitch) and elements of number (position, options array generate a GDS file with the specified options, an about button, and an Exit collapsible tree with options representing available toolbox features. toolbox features. available The with large collapsible options tree representing module options. selected canvas displaying right panel is the dynamic The main window of the graphical used interface is divided into three parts. static. is and logo CNST the has panel title top The a contains panel left The
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 GDS Scripting
Email: [email protected] This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: 2.1 Setup, Execution and Examples
Scripting execution takes place either from the graphical user interface or the terminal command prompt.
2.1.1 Quick Start Setup
1. Change the
2. Setup syntax coloring within NotePad++ (see section 2.1.8).
3. Create script files with extension .cnst. See scripting examples in sec tion 2.1.9.6 and constructors in this chapter.
4. Run scripts either within the graphical user interface (section 2.1.3) or via command prompt (section 2.1.4).
16 Monday, December 21, 2015 9:34 AM 9:34 2015 21, December Monday, Monday, December 21, 2015 9:40 AM 9:40 2015 21, December Monday, direc file. The file. page 17 of 488 CNSTdefault save and CNSTdefaultValues.xml -1- open -1- CNSTdefaultValues.xml (b) (a) file within a text editor and change the setup file for (a) Windows and (b) Mac/Unix/Linux platforms. (a) Windows and (b) Mac/Unix/Linux platforms. setup file for /Users/user/CNSTnanoToolBox/saveFiles/ C:\Users\user\Documents\CNSTnanoToolBox\saveFiles\ - CNSTdefaultValues.xml C:\Users\user\CNSTnanoToolBox\saveFiles\ /Users/user/CNSTnanoToolBox/saveFiles/ C:\Users\user\Documents\CNSTnanoToolBox\loadFiles\ /Users/user/CNSTnanoToolBox/loadFiles/ C:\Users\user\CNSTnanoToolBox\loadFiles\ /Users/user/CNSTnanoToolBox/loadFiles/ Values.xml Modification to open and save directory variables within the within variables directory save and open to Modification CNSTdefaultValues.xml Setup script and GDS files are respectively read and saved. and saved. read script respectively and GDS files 2.6 and are 2.6 Figures 2.6: tories 2.1.2 D:\DOCUMENTS\zTESTfiles\XMLsetupINFO.xml D:\DOCUMENTS\zTESTfiles\XMLsetupINFO.xml
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 (step (step 1) page 18 of 488 Scripting label, the full path of the label, the full path CNST Execution (step 4) and the full path of the script the of path full the and 4) (step label. in the desired GDS file Type name Open button (step 2). (step button Within the file manager locate File: Interface button. button. Under the STATUS: Script CNSTnanoToolboxVXXXX.jar User Script GDS GDS generation using the graphical scripting interface. scripting interface. using the graphical GDS generation Load –jar 2.7: ) ) ) script file (step 3), click (step file script (c Graphical (b (d java (a) Figure file or at the prompt type: the prompt file or at .cnst 2.1.3 file will appear in the NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Start the graphical user interface by either double clicking on the executable executable the on clicking double either by interface user graphical the Start jar and then click the the and click the Create saved GDS file will appear. GDS file will appear. saved When the interface appears, in the left panel click
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 . For . For then Prompt option page 19 of 488 Start Mode and cast the file. getfonts File Command [option] CNSTbatchFile.BAT - Batch outputFileName.gds , i.e. Terminal a BAT Scripts . . . From CNST Scripts $>.\CNSTbatchFile.BAT inputFileName.cnst CNSTnanoToolboxVXXXX.jar Multiple CNST –jar resulting structures into an outputFileName.gds into structures resulting Process a CNST scripting file inputFileName.cnst a CNST Process Obtain system fonts and store them into a time/date stamped file. stamped time/date a into them store and fonts system Obtain names within various available spelling font correctly Useful for constructors. text Running Running within the ’search programs and files’. Within the Linux and Mac getfonts java cnstscripting cmd robilic\CNSTscripting C:\Users\robilic\CNSTscripting>CNSTbatchFile.BAT 2.1.5 2.1.4 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox In Linux or Mac type dot then backslash followed by the filename: In Linux or Mac type dot then backslash followed java java –jar CNSTnanoToolboxVXXXX.jar cnstscripting scriptFileN.cnst outputN.gds instance, the text file would have the following entries: the following file would have the text instance, java –jar CNSTnanoToolboxVXXXX.jar cnstscripting scriptFile01.cnst java output01.gds –jar CNSTnanoToolboxVXXXX.jar cnstscripting scriptFile02.cnst output02.gds Batch mode execution of many CNST script files is performed from a terminal terminal a from performed is files script CNST many of execution mode Batch command prompt. In click Windows, open to the command prompt, type where file prompt. command text a a terminal open environments create First 2.1.4). ( section previous the within defined format the has entry line each In atime/date stamped ASCII file. stamped ASCII atime/date [option] allows the extraction of all available system font names to be stored into To execute the ASCII batch file, at the windows DOS prompt type the file name: file the type prompt DOS windows the at file, batch ASCII the execute To At the terminal command prompt, the command below allows script execution the command below allows script execution command prompt, the terminal At without the graphical user interface. using the Additionally, Windows, name the file with an extension
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ); ript.cnst for ); n' page 20 of 488 ' 0.4 4 44 0 ellipse' file. Subsequently, file. Subsequently, ); nt GDS layers names with spaces ellipses, each cast into a ellipses, each cast into e ); ); , int2str(i), Matlab ); to to create a GDS file. This was ' ' ); ); java ' layer' matlabScript.cnst ); Within ); 'w' , ); , int2str(i), Scripts , int2str(i), ); '"C:\Program Files\KLayout (64bit)\klayout" D: 'java -jar CNSTnanoToolbox.jar cnstscripting matlabSc GDS generation and viewing using a Matlab script. a Matlab and viewing using GDS generation ); CNST '%s%s\n' '%s%s%s%s\n' 2.8: '# Creating array of 100 ellipses along the diagonal\ 'matlabScript.cnst' '0 0 2 4 44 0 ellipse\n\n' '0.001 shapeReso\n\n' '0.001 gdsReso\n' '# Creating a simple ellipse with Matlab\n' '11 layer\n' '
i=1:100 Example matlab files are located in \EXAMPLES\CNSTscripting\Matlab. located files are Example matlab The return status shows the command prompt output during code execution. execution. code during output prompt command the shows status return The erent GDS layer, along a diagonal. diagonal. a along the using generated was latter The layer, GDS erent atus, cmdout rintf(fileID, rintf(fileID, rintf(fileID, rintf(fileID, rintf(fileID, atus, cmdout rintf(fileID, rintf(fileID, 2.1.6 fp fprintf(fileID, matlabGDSoutput.gds' st [status,cmdout] = dos( \DOCUMENTS\zTESTfiles\saveFiles\matlabGDSoutput.gds' st fileID = fopen( fp % open GDS with klayout - use quotes around directory % array of 100 ellipses along a diagonal with differ fp fp fp fp end fclose(fileID); % run the java code from matlab [status,cmdout] = dos( fp for 1/6/16 5:16 PM D:\DOCUMENTS\z...\CNSTscriptingWithMatlab.m 1 of 1 loop control statement. statement. loop control NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox In this case, the directory where the output GDS resides (see save directory 2.1.2). in section information Matlab Matlab allows for execution of system commands and return outputs. Fig a 2.1.6 shows how generates ure matlab using a system command, matlab runs another 2.1.4. section in described commands using by accomplished Lastly, in editor, and viewer layout source open an kLayout, executes command system the output GDS file. to display order file has The two generated GDS structures. diff The first has a single ellipse, and the second has 100
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 page 21 of 488 circles, each circles, 100 )) )) %(xCoord,yCoord))) )) )) )) ))) ) )) +1 'w' )) %(x , )) script file that contains two GDS structures, one Generation '%d layer\n' '%.4f %.4f 0.2 0.2 44 0 ellipse\n' Script (num): ( ( *math.pi/num '11 layer\n' '0 0 2 4 44 0 ellipse\n\n' '# 100 circles along a circular path\n' '
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 Monday, April 13, 2015 4:22 PM 4:22 2015 13, April Monday, 57.43 script files page 22 of 488 109.402 c c curveto curveto curveto curveto .cnst > c h CNSTscripting.xml lan CNSTscripting.xml language definition file. language definition \ arrayPolar -1- > 1R 131.602 329.459 132.156 329.065 language definition file. will have proper syntax coloring (Fig coloring syntax proper have will c verniers 37.141 225.803 31.551 197.69 33.297 c NotePad++XML \ .cnst CNSTscripting.xml Coloring 10 1 50 4 > Syntax struct CNSTscripting \ > > > 88.063 301.713 81.117 296.862 71.086 287.424 62.605 218.252 82.602 238.932 98.328 262.112 Lyr1 Layer4 c m struct struct struct 340.0 220.0 30.0 100.0 250.0 50.0 moveto 33.684 197.733 37.059 199.932 40.801 202.615 Notepad++ Notepad++ screenshot illustrating syntax coloring of defined by the CNSTscripting.xml EXAMPLES \ c NotePad++ 2.10: layer layer choose close NotePad++ and reopen a file with extension .cnst a file with extension and reopen close NotePad++ Some versions may require users to repeat this procedure this procedure repeat users to require Some versions may Language -> Define your language.... Language -> Define -> click Import.... 2.1.8 verniersTest 0 0 1 4 0.01 11 polarArrayV1rotated myPattern postScript1 postScript2 278.424 120.648 299.865119.484 126.66 321.201 316.112 197.725 new 1 new 277.61423749153965 500.0 300.0closepath 544.7715250169207 300.0 600.0 < # Verniers between Layer 1 and Layer 4 < # constructing polar array < < < 1 40.801 202.615 274.576 48.113 259.424 41.59 239.428 < 2 300.0 600.0 300.0 655.2284749830793 277.61423749153965222.38576250846035 700.0 700.0 250.0 200.0200.0 700.0 655.2284749830793 544.7715250169207 200.0 222.38576250846035 600.0 500.0 250.0 500.0 Figure v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox 2. guage definition file and click open 3. structor keywords listed within the XML file could be used to create a language within the XML listed file could be used create to keywords structor accom is NotePad++ within coloring Syntax editor. text any for file definition in the provided plished by reading extension with files all Subsequently, 2.10). ure This is useful when visualizing and debugging scripts. The following syntax coloring: NotePad++ for is a procedure The package provides a language definition XML file for Notepad++. Notepad++. for file XML definition language a provides package The con The 4. 1.
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 Tuesday, September 27, 2016 4:44 PM 4:44 2016 27, September Tuesday, page 23 of 488 -1- m) of the GDS file. This µ m) of vectorized shapes. µ scriptingExampleBasicScriptingExam > > Example struct ellipse ellipse struct rectangle Examples Scripting gdsReso shapeReso defines the rendering resolution (in layer dataType layer Basic simpleRectangles circlesAndEllipses defines the output rendering resolution (in resolution defines the output rendering ple.cnst). Basic scripting example ( D:\DOCUMENTS\zTESTfiles\loadFiles\0000ANLpattern.cnst # create an ellipse 0 0 40 100 88# create ellipse in GDS layer 40 with a datatype 44 22.0 40 44 100 80 40 40 44 0 # create a GDS structure/cell to store shapes < # set GDS layer 4 # create a rectangle -5 20 0 28 0 # create another structure < 0.001 0.001 Scripting 2.11: 2.1.9.1 Initialize layers and dataTypes, then place objects into structures. The shapeReso Create structures. structures. Create gdsReso 2.1.9 3. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure following subsections introduce a variety of constructors for creating complex creating a variety of for constructors subsections introduce following shapes. parameter is included at the top of each file. of each the top at is included parameter 2. Figure Figure 2.11 shows a simple script that creates two structures, rectangle and the one other with two ellipses. with a The for procedure creating script files is the following: vectorized shape. vectorized 4. 1. each for changed be can and file the in anywhere placed be can parameter This
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 } nm m long. m 250 µ labelMaker 10 page 24 of 488 Monday, January 18, 2016 6:33 PM Ruler scriptingExam m and m µ 5 . 7 Calibration 0051rowCol ) illustrates the construction of (b) a of (b) the construction ) illustrates markers are are markers 10 -1- > ) (a) (b and - Labeled > 5 2 -0.5 -2 arrayRect > arrayRect Example > arrayRect > 15Arial rectangle 10 7.5 2 1 10 0 1 rectangle struct 5541501 struct 20um > Scripting pleLabeledCalibrationRuler.cnst labeled calibration ruler. ruler. labeled calibration Labeled calibration ruler example. (a) Example script ( m long. Markers labeled long. m Markers µ 5 struct 00211101 2.12: gdsReso shapeReso 2.1.9.2 layer tickMarkExtension 0 5 10 15 tickMark tickMarkExtension calibrationRuler tickMark tickMarkExtension C:\Users\rob\Downloads\zJava\loadFiles\0000000000scriptingExampleRuler.cnst < # tick mark label (TAB delimited) { 0.001 0.001 4 Calibration Ruler # Example - Labelled #### tick marks 5um long and 250nm wide < -0.125 0 0.125 wide #### tick mark extension 2.5um long and 250nm 5 0 < -0.125 0 0.125 2.5 0 < # 20um long < # add tick mark extensions every 5um < # add tick mark extensions every 10um NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure The example script creates a labeled calibration ruler. are marks Tick ruler. calibration labeled a creates script example The microscopes. (optical and electron) calibrating is useful for This type structure wide and wide
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 top Wednesday, December 23, 2015 9:31 AM 9:31 2015 23, December Wednesday, } } } page 25 of 488 } ) illustrates the labelMaker structure. structure. Bond labelMaker labelMaker labelMaker > > > > autoOutLett electrodes autoOutLett autoOutLett -1- > autoOutLett structure is into structure instantiated bezierCurve bezierCurve bezierCurve bezierCurve ) is then instantiated to construct the construct to instantiated then is ) > > > > > instanceSym > > instance 1 0 instance arrayRect N instance electrodes m bond pad. bond m instantiated then is structure The scriptingExampleElectrode.cnst instance instance µ 1 90 1 0 N Y instance > 1 0 1 0 1 -90 250 X N Y constructor, ensuring symmetric extents around the the around extents symmetric ensuring constructor, > 1 0 cross cross cross Electrodes > electrodeSegment N 4750 0 > struct 0 0 4750 0 0 0 cross cross 100410751004104575 01000 0 01000 5000 0 0 0 1004275 5000 4600 0 4275 500 0 500 struct 0 0 0 4750 0 0 5 1 500 1 1 struct rectangle struct 0 0 0 0 4750 4750 , which is then used to form the > Labeled Serif Serif Serif Serif Scripting example ( with labels and 5 levels of alignment crosses. construction of electrodes gdsReso instanceSym rectangular array, Bezier curves and alignment then are crosses array, 1 rectangular struct shapeReso × 2.13: 5 electrodeSegment electrodes electrodeHalf electrodeHalf 0 8 0 8 8 0 8 0 top electrodes electrodeSegment bondPad250um 625 250 6251125 900 250 2200 11251625 625 900 250 2200 2250 16252125 2150 625 900 250 20 2250 2300 2125 0 2150 625 900 20 2300 2350 0 2150 625 20 2350 0 2150 20 0 electrodeHalf electrodeSegment electrodeSegment electrodeSegment bondPad250um D:\DOCUMENTS\zTESTfiles\loadFiles\zTEMP\ElectrodeExample.cnst < # electrode set < < < # electrode labels top and bottom - Letters { { # electrode labels left and right - Numbers { { # top cell centered electrode cell using instanceSym < < < < < < < < # JEOL alignment crosses 500 500 10750 750 60 101000 0 1000 60 101250 0 1250 101500 1500 60 10 0 60#1/2 electrode 0 60< 0 < < < 0.001 0.01 # 250um bondpad < 0 0 250 250 0 # 1/8 electrode 2.1.9.3 pad labels then are added and NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure using the origin. into into a ( added. structure This electrodeHalf The script initiates with a with initiates script The
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 Thursday, January 07, 2016 7:40 PM 7:40 2016 07, January Thursday, flexure2E page 26 of 488 constructor. Subse constructor. combDriveV1 combDriveV1 -1- flexure2E ) (a) (b Flexures Drive Comb > struct MEMS MEMS linear comb drive actuating flexure example. (a) Example script drive elements connected to a movable flexure. a movable flexure. to drive elements connected ) illustrates the construction of (b) comb (scriptingExampleMEMSv1.cnst) illustrates gdsReso shapeReso 2.14: 2.1.9.4 layer memsExample D:\DOCUMENTS\zTESTfiles\loadFiles\zTEMP\scriptingExampleMEMSv1.cnst # Example - MEMS Flexure With Comb Drive Elements < # Flexure 0 0 8.2# Top Comb 0.2 0.88-5.15 0.22 29.48 2.44 0.4# Bottom Comb 20 3.4 8 10.15.15 1.44 9.1 -29.48 2.42 10 0.4 3.4 1.1 3.4 0.2 4.1 10.1 8.44 31 9.1 4.4 0.2 10 0.4 7 1.1 7 0 4.1 0 31 0.2 7 180 0.001 0.001 4 Figure v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox quently, two linear comb drive structures are connected to the flexure element. the to flexure connected are two linear comb drive structures quently, The example script below first creates a microelectromechanical systems (MEMS) flexure with two anchored pads using the using pads anchored two with flexure (MEMS)
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 Thursday, January 07, 2016 7:28 PM 7:28 2016 07, January Thursday, page 27 of 488 -1- Hub combRadialV2 combRadialV2 combRadialV2 combRadialV2 Circular ) used to create (b) four radial comb drive comb radial four (b) create to used ) circularSpring > ) Drive (a) (b struct Comb Radial gdsReso shapeReso MEMS scriptingExampleMEMSv2.cnst layer MEMS radial comb drive actuator example. hub. a circular to elements connected (a) Example script ( circularSpringExample D:\DOCUMENTS\zTESTfiles\loadFiles\0000000000scriptingExampleMEMSv2.cnst 0.001 0.001 4 # Example - MEMS Flexure With Comb Drive Elements < # circular spring 0 0 1# radial combs 4 3.410 40 0 128 40 18 40 10 0.2 1 4 7-10 30 40 0 0 1.1 1 40 2.2 30 40 -10 10 1.1 1 4 32 2.2 30 40 40 10 1.1 1 20 32 2.2 30 1 40 10 1.1 7 20 32 2.2 0 1 40 10 7 20 32 90 1 40 7 20 180 1 7 270 2.15: 2.1.9.5 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure to a circular hub. a circular to The example script below first creates four radial comb structures connected connected structures comb radial four creates first below script example The
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 my- page 28 of 488 demonstrates the demonstrates is an example demon example an is Description creates a structure with the name the with structure a creates contains examples of variety of multi Files example demonstrates circular (section 2.3.3) (section circular demonstrates example is a simple script the demonstrating use of prim illustrates the use of the Bezier curve construc curve Bezier of the use the illustrates . The folder also contains an Excel spreadsheet Example with data used in several presented examples. A brief ers a variety of constructor objects that allow for any conceiv any for allow that objects constructor of variety a ers Scripting constructed from various and spiral primitive elements, including text from constructed files) and the corresponding GDS output files are contained in a folder folder a in contained are files output GDS corresponding the and files) 2.1.9.6 .cnst Pattern ne transformation of the of transformation affine and biasing shape copies, area general operations, is demonstrated. areas scriptingCNSTasmlContactLabelBarcodeGenerator.cnst contact lithography use (label of and various used generate constructors to logo) and CNST ASML PAS5500 i-line stepper reticles (reticle marks, label, and logo). barcode scriptingCircleTorusWave.cnst with sinusoidally varying boundaries. (section 2.3.16) structures and torus v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox itive shapes. line First, comments. we introduce of Then, features resolution output and shapes vectorized is explained. the GDS rendered Next, we present and layers. (cells) following, GDS structures Directly creating for constructors poly rectangles, rounded rectangles, (arcs), tori ellipses, vectorized ellipses, structures GDS initialized within constructed are crosses and shapes, star gons, and layers. scriptingBezierCurve.cnst tor. scriptingBooleansGenAreasBiasTransformations.cnst strating extraction of shapes layer from a GDS structure and casting the re sulting shapes into a generalized area object. Using these objects boolean CNSTscripting.xlsx file is given below. description of each example script scriptingAlignmentFeatures.cnst verniers, strategies, mark alignment defined user custom and preconfigured level in section 2.8. described and arrows. are Details of these features scriptingArraysAndInstancing.cnst objects. The structure is then instantiated at a 10X reduced magnification. hexagonal and polar rectangular, into arranged is structure the Furthermore, arrays. scriptingBasicShapes.cnst CNST scripting off scripting CNST of number a output. includes GDS a chapter into This rendered be to shape able ob these of functionality the on elaborate to designed examples scripting CNST jects. constructor. scripting CNST each covers collection example the Overall, examples. the presented of each in comments mentation scripts example The \loadFiles\CNSTscripting To improve the To readability of the script, we included brief constructor docu (
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 in script point ) x,y page 29 of 488 CNSTscript show various exam scriptingDiscRingSym example script creates the the creates script example , is an example of a basic script basic a of example an is is an example using construc (Bezier -(Bezier coupling), defined angle (Arcs - (Arcs length coupling and angle both (Bezier - coupling length defined) and is an example script of labeled electrodes is an example script of labeled electrodes are a collection of examples using the using examples of collection a are script creates four MEMS radial comb drives comb radial MEMS four creates script script creates a MEMS flexure with two linear with a MEMS flexure script creates illustrates illustrates the use of constructors from sec shows several functional plotting examples us example employs data from the scriptingDiscRingSymmetricPulleyDOUBLE3.cnst was used to create the GDS rendered output in , is an example using a variety of grayscale con shows the use of various fractal constructors de . customTaper ) y ,T x (T θ y T x file (CustomTaper sheet) to create a taper defined by the ( defined by a taper create to sheet) file (CustomTaper constructor section 2.4.4. constructor scriptingDiscRingSymmetricPulleyDOUBLE4.cnst stance scriptingLabelMaker.cnst ing.xlsx scriptingExampleLabeledCalibrationRuler.cnst NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure 2.45. Figure scriptingLabelOutline.cnst chip labels. tion 2.6.4. generate used to are outlines text Here, tors from sections 2.9.7.1 and from tors 2.9.7.3. scriptingGrayscale.cnst section 2.7.5. from structors scriptingInstanceExamples.cnst connected to a circular hub as described in section 2.1.9.5. a circular to connected scriptingFractals.cnst fined in section 2.7.3. scriptingFunctionPlot.cnst defined in section 2.7.4. ing constructors scriptingGratingsAndGratingCoupler.cnst labeled calibration ruler in section 2.1.9.2. labeled calibration scriptingExampleMEMSv1.cnst comb drive elements. 2.1.9.4. included in section Details of this scripts are scriptingExampleMEMSv2.cnst ples of the ring-disc systems with two coupling regions described in sections 2.9.9.2 sections in described regions coupling two with systems ring-disc the of ples to 2.9.9.16. scriptingExampleBasicScriptingExample.cnst shown in section 2.1.9.1. scriptingExampleElectrode.cnst scriptingDiscRingPulleysArc.cnst defined) show various examples of the disc pulley system described in sec tions 2.9.9.2 to 2.9.9.16. scriptingDiscRingSymmetricPulleyDOUBLE1.cnst and pairs. termi then file, script cnst the into pasted and copied simply was Data by T nated scriptingCustomTaper.cnst scriptingDiscRingPulleysBezier.cnst ingDiscRingPulleysBezierLC.cnst metricPulleyDOUBLE2.cnst with alignment crosses as shown in section 2.1.9.3. with alignment crosses
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 script is created created is page 30 of 488 example highlights example test shows various MEMS various shows scriptingMulti , example demonstrates demonstrates example example demonstrates demonstrates example example demonstrates the use the demonstrates example example demonstrates the use example demonstrates are files used to generate generate to used files are shows various examples of doubly of examples various shows scriptingMEMSarraysHIERARCHY.cnst illustrates illustrates various meandering channels shows various examples of cantilevers of is a script demonstrating structure instanti structure demonstrating script a is and shows various examples of MEMS actuators shows various MEMS accelerometer type an shows a variety of miscellaneous objects (inter miscellaneous variety of shows a scriptingMultiFile2.cnst , point pairs. point structure a case this In ) example shows the use of the three logo constructors constructors logo three the of use the shows example x,y ( . gener to files script multiple calls example that an This is scriptingMultiFile8.cnst and of various waveguides, slot waveguides and couplers defined in sections 2.9.1.1 sections in defined couplers and waveguides slot waveguides, various of File4.cnst shows interacting MEMS arrays as described in section 2.10.7. as described in section MEMS arrays shows interacting scriptingMEMScantilevers.cnst scriptingMEMSactuators.cnst scriptingMEMSdoublyClampedBeams.cnst to to 2.9.3.15. scriptingPhotonicsGratingCouplersWithWaveguides.cnst as defined in section 2.9.7.4. waveguides integrated couplers with grating scriptingPillarHoleHexagonalSquareArrays.cnst defined in section 2.4.6. arrays hexagonal and square the use of pillar-hole scriptingPoints2Instance.cnst defined user at ation and instantiated along a spiral path. Coordinates for the path were calcu- v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox ate a GDS output as seen in section 2.2.8. ate scriptingPhotonicCrystalsHexArrays.cnst crystals defined in section 2.9.8. of photonic scriptingPhotonicsCoupledWaveguideDiscTip.cnst de as tips, and discs waveguides, of architectures coupled various of use the fined in section 2.9.15. scriptingPhotonicsCouplersBendsMisc.cnst clamped beams of varying length extending from a base as described in sec in described as base a from extending length varying of beams clamped tion 2.10.6. scriptingMEMSflexures.cnst mass as described in section 2.10.4. with a proof flexures chored scriptingMEMSstressStrainMeasurementStructures.cnst Rings (see section 2.10.8). including Guckel devices measurement stress-strain scriptingMISCobjects.cnst in section 2.7. found electrodes) digitated scriptingMultiFile1.cnst scriptingLogos.cnst section 2.6.6. from scriptingMeanderChannels.cnst 2.10.1. as described in section scriptingMEMSarraysFLAT.cnst ingMultiFile.gds varying length extending from a base as described in section 2.10.5. a base as described in section from varying length extending with end reservoirs using constructors from section 2.7.8. section from constructors using with end reservoirs
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 T S con con file (Cus page 31 of 488 textOutline (number of skipped of (number T defined by the expo CNSTscripting.xlsx S constructor for creating creating for constructor W constructor. In the example, the In constructor. ). This feature is useful when CNSTscripting.xlsx textgds spiralDelayLineArchV2Inv similar to the previous example, while all other parameters remain remain parameters other all while 4 to to 0 describes the usage of spiral delay line script renders two user defined shapes. shapes. Both defined user two renders script fontOutline example demonstrates the use of various photonic various of use the demonstrates example using Figure 2.47 guidelines. using Figure example shows the use of the of use the shows example demonstrates postScript file a conversion to GDS demonstrates was used to create the GDS rendered output in varies from from varies illustrates illustrates the use of verniers between two litho script creates two along distinct paths user defined script creates spiralDelayLineArchV2 demonstrates production of Archimedes, Fermat and Fermat of Archimedes, production demonstrates T S file (CustomTaper and Gaussian sheets). and Gaussian file (CustomTaper demonstrates the use of use the demonstrates while all other parameters remain constant. remain while all other parameters to 8 to . line constructors Example describes the inverse spiral delay e W point pairs. Here, the two paths are defined within the supplementary ) varies from 0 varies from T x,y sure sleeve sure except except the spirals form a slot waveguide of width scriptingSpiralDelayLinesInverse.cnst file (SpiralArray sheet). file (SpiralArray scriptingPoints2Instance.cnst NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox crystal based waveguides defined in sections 2.9.10 to 2.9.14. 2.9.10 to defined in sections crystal based waveguides structor. structor. As shown in figure 2.44, the fonts rendered are defined by a shape outline of a user-specified width ( sys lithography beam electron write-time-limited, by defined devices labeling tems. scriptingVerniers.cnst graphic levels. scriptingWaveGuidePhCs.cnst Logarithmic spirals as defined in section 2.7.14. Logarithmic scriptingText.cnst objects within GDS files. text scriptingTextOutline.cnst structor. In the example, the In structor. constant. scriptingSpirals.cnst Figure 2.131. 2.131. Figure scriptingSpiralDelayLines.cnst 2.9.5). (section constructors the illustrates example The S CNSTscripting.xlsx the supplementary from shape. extracted were rendered statements Postscript file scriptingPostScript.eps shapes are defined within the supplementary and Gaussian sheets). tomTaper scriptingPolyPath.cnst scriptingPostScript.cnst scriptingRaceTrack.cnst lated lated using Excel and presented in the supplementary turns) parameter from the from parameter turns) (number of skipped turns) parameter from (number the of skipped turns) from parameter (Archimedes (Archimedes and as Fermat defined in section 2.9.6) and illustrates the (
This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 32 of 488 struct> , underscore (_), question 9, mark underscore layer dataType gdsReso − 0 , z − is specified in units of micrometers. is specified in units of micrometers. a , (Cells) Z − A Resolution ypeNumber Functions layerNumber m rendering resolution. resolution. defines a 0.001µm rendering gdsResolution 255. Any value be outside this range will automatically 255. Any value be outside this range will automatically This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 m (b) µ 1 page 33 of 488 (c) is specified in units m. This value could be µ 001 . 0 fontOutline shapeReso shapeResolution (b) idth m font outline width. defines a 0.400µm font m rendering resolution. resolution. defines a 0.001µm rendering Width example illustrating rendering a text object at (a) shapeResolution ontOutlineW f Resolution Outline 0.1µm and (c) 0.01µm. shapeReso Font Shape (a) fontOutline shapeReso 2.16: 2.2.7 2.2.6 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox text text and label objects (see sections 2.44 and 2.6.4). Default global value is 0.1µm. outlined object each could be changed for This value Figure 0.400 of micrometers. of micrometers. changed for each shape, providing flexibility on the number of points used to to used points of number the on flexibility providing shape, each for changed define a particular GDS shape. Parameter 0.001 The method sets the font outline width (in micrometers). This is used for outline for micrometers). used (in is width This outline font the sets method The The method sets the rendering resolution resolution for subsequent shapes Text elements, etc). Default global value is (primarily vector defined shapes, S-Bends, Y-Bends, postscript file conversions, defined (primarily shapes, vector S-Bends, Y-Bends, This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 34 of 488 has the exten the has logFileTimeDate must be omitted in the in omitted be must ) will be executed until setup file. Also, backslash fileName> fileName> .cnst Files fileName> , hence hence , cnstScriptFileName Script Stamp cnstScriptFileName CNST . is defined by the This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 expressed expressed page 35 of 488 ) ), defined by expressed expressed in ), the number ) y (x,y r x,y θ ( (x,y ellipse θ and x r ) ellipseVector (x,y θ parameter parameter (see section 2.2.6). ) constructor parameters. parameters. constructor x ) r (x,y (x,y θ θ ) sides N ,y y (x r y shapeReso ), defined by two radii ( r y . r x,y ( and ellipseVector sides Ellipse x Ellipse x Ellipses r ellipse and ), and rotated about the center at an angle at center about the and rotated ), y y r 2.17: ) and rotated about the center at an angle Primitive Vectorized x y r and sides x x Shapes Figure r Circles N 2.3.1.1 2.3.1.2 2.3.1 2.3 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox regularly spaced. More vertices are allocated to regions of higher curvature. of higher curvature. regions spaced. to regularly allocated are vertices More Elliptical shape is constructed from Bezier curves, centered at at Bezier curves, centered Elliptical from shape is constructed radii ( two in degrees. Rendering resolution of the vectorized shape (number of shape distributed, evenly are vertices shape where example ellipse primitive the Unlike not are vertices curves, Bezier using constructed is form vectorized the since Elliptical shape is centered at at Elliptical shape is centered of sides ( degrees. at evenly distributed are the shape defining vertices In this scenario, of 2π/Nangular increments vertices) vertices) is controlled using the This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 36 of 488 circlethree ) 3 ,y 3 sides N (x parameters. parameters. 3 y 3 points x circlethree 2 2.18: three ) y 2 ) ,y 1 2 ,y 1 (x Figure 2 (x x through 1 y Circle ). 1 x sides 2.3.2 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox The resulting shape is defined by the the three points and the number of sides shape is defined by the the three The resulting (N This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 A ). x,y ( page 37 of 488 is the number of sides used to to sides used of the number is circleWave s r N ) , π (x,y 2 is an integer number of oscillations ) θ n to to s (x,y Boundary is the rotation about the center point. about the center is the rotation ) (x,y with a sinusoidal boundary centered at at centered boundary sinusoidal a with n A N r Wave r Circle with a sinusoidal boundary variation. variation. with a sinusoidal boundary Circle a x y 2.19: With Figure Circle 2.3.3 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Circular structure of radius of structure Circular represents the sine wave amplitude, 0 from extending the boundary along θ and construct the boundary, This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 38 of 488 ) and rotation ) about and rotation L cross ) ), length ( (x,y L W ) ,y L θ W (x constructor parameters. parameters. constructor ), width ( x,y ( cross expressed in degrees. in degrees. expressed ) 2.20: (x,y Figure x y W Cross 2.3.4 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Cross is Cross defined by the center an angle θ at the center This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2.3.5 L-Shape L-shape is defined by the center (x,y), widths (W1 and W2), lengths (L1 and L2) and rotation about the center at an angle θ(x,y) expressed in degrees. x y W1 L1 W2 L2 θ(x,y) Lshape This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: W2 L2 L1 W1 (x,y) Figure 2.21: Lshape constructor parameters. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 39 of 488 . Sweep ) arc page 40 of 488 parameter parameter (x,y θ ) ), sweep angles, y r arcVector (x,y θ and shapeReso x ) r (x,y are expressed in degrees. in degrees. expressed are θ sides ) x ) N (x,y (x,y θ s e θ e θ x e r θ θ ), and θ e s θ s θ and θ Waveguide Waveguide s y ) y - Vector r ,y y ), defined by an two radii ( r (x ) and rotated about the center point about by the center ) and rotated y r x,y Arc Arc ( sides x N x r constructor used to create user defined pie-shaped arc sections. user defined pie-shaped arc create used to constructor Shaped Shaped arc Illustration Illustration shows an arc section at one end of a waveguide. Rounding waveguide corners alleviates stress crowding at sharp corners. This is thin films, (resist, layers particularly thick useful stressed when patterning etc). y Pie Pie 2.22: x y r 2.23: x 2.3.7 2.3.6 Figure Figure v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox resolution of the defined shape is controlled using the the using controlled is shape defined the of resolution defined in section 2.2.6. angles, start and end angles (θ angles, start and the number of sides ( The vectorized pie shaped arc is constructed using Bezier curves. Bezier using constructed is Rendering arc shaped pie vectorized The Arc shape is centered at at shape is centered Arc This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ), sides N page 41 of 488 polygon ), number of sides ( r ) expressed in degrees. in degrees. expressed A shape θ ) (x,y θ (x,y θ r ) constructor parameters. parameters. constructor ,y , outer radius ), ( outer sides (x N x,y ( polygon r 2.24: y Figure x Polygon 2.3.8 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Polygon is defined by the center Polygon an angle at about the center and rotation a closed figure. form to an arbitrary number of vertices by is characterized This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 H ) C ,y C (x ) θ C ,y L (c) C (x page 42 of 488 H rectangle rectangleLH rectangleC ) ) ) LL LL C ,y ,y L ,y (b) ) LL LL C LL (x (x (x ,y θ θ θ LL (x ) θ LL ,y UR LL y H (x ) corners. define used to are constructors Three ◦ UR ,y 90 UR LH x L UR (x C LL LL y y y (a) ) LL Three rectangle constructors. constructors. rectangle , and Three , (b) rectangleLH (a) rectangle ,y (c) rectangleC LL Rectangle C LL LL (x ) x x x θ 2.25: LL ,y LL 2.3.9 (x NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure the rectangular object. the rectangular The shape consists of four The shape consists of four This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 x ). r C y r ,y C x ( page 43 of 488 ) C ) roundrect roundrectC ,y L (b C (x ) ). rectangles Rounded ) LL C LL ,y ,y ,y LL C and are centered at at centered are and (x (x LL θ θ x ) and are rendered ) using and the are rendered H ( y r H y y and is defined using the lower left corner left lower the using defined is r r ). The curved sections of the rounded x , height height , r L H x x x r r y r roundrect are of length of are Rectangle resolution parameter (see section 2.2.6). parameter resolution of the Rotation LH L H r L (a) ) and height values ( L roundrectC LL C y y Rounded Rounded rectangle constructors defined by (a) lower left corner ). (roundrectC coordinates ) and (b) center (roundrect Rounded shapeReso ) ), length ( 2.26: LL LL ,y LL C ,y x x LL 2.3.10 LL H (x x NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure defined using defined Rounded rectangle constructor constructor rectangle Rounded defined are rectangle by the two radii ( specified is about the lower left rectangle corner rounded ( This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 3 L positive, page 44 of 488 ) ) 2 ,L 1 (x,y (x,y L ) ) (b (d negative, (c) negative, rectSUshape 2 L allow for a variety of S- and ) ) i L positive values. ( (x,y 3 positive, 3 W θ ,L 1 L 3 negative, L negative, L 2 ,L 2 3 1 SU-Shape L L W 1 are positive,(b) are ) i 2 L L (c (a) ) ) x y L Rectangular SU-shapes Rectangular using constructed various length values. (a) all lengths and (d) L negative 1 Rectangular (x,y (x,y L 2.27: 2.3.11 Figure v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox and negative values of the three lengths U-shapes. metal bond pads. runners to routing useful for are These structures The below constructor creates a rectangular S- a rectangular creates The below constructor and objects. U-shape Positive This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 2 L L page 45 of 488 and length 1 2 w w . 2 2 rectTaper L ) (x,y θ Taper 2 L 2 w Linear 1 L a to the end taper width w the end taper width to 1 Rectangle with a taper at one end. with a taper at Rectangle L 1 1 With 1 2.28: w ) Figure x y w (x,y Rectangle 2.3.12 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Below constructor creates a parametrized rectangle of width a parametrized rectangle Below creates constructor length taper the over linearly varies region Tapered taper. a to connected width w a the rectangle from This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 46 of 488 ), number of points o r expressed in degrees. in degrees. expressed ) star (x,y and ) θ i ) r (x,y (x,y θ θ points ) N ◦ constructor parameters. parameters. constructor r ,y ), the two radii ( (x o i r r star x,y ( i r 2.29: y x Figure Star ), and rotation about the center at an angle at about the center ), and rotation points 2.3.13 N NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Star Star is defined by the center ( This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 s θ . page 47 of 488 r constructor constructor constructors. constructors. ) w ) ,y (b (x torusW torusW and width w parameter parameter defined in ). start angles, Sweep e θ torus torusW sides and (b) N torus sides sides N N shapeReso , defined by an inner and outer radii outer and inner an by defined ), and defined by an inner and outer torusVector ) e e x,y θ θ ( x,y o ( r s s θ i , see section 2.3.1.2). of resolution Rendering o y s w θ r r θ = i ) are expressed in degrees. in degrees. expressed ) are The x r o e r is centered at at centered is r x y r θ i y r and - Vector - Arc torus ) s x x y r ,y θ (a) (x ). The shape by is subtracting constructed two circles vectorized o r Example of arc sections defined by (a) Example of arc Torus Torus e ), sweep angle, and the number of sides ( sides of number the and angle, sweep ), θ o and r i 2.30: r and 2.3.15 2.3.14 i r the defined shape is controlled using the NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox radii ( section 2.2.6. Figure and end angles ( radius r shape defined by the midpoint a similar creates The vectorized torus is centered at A shape defined by defined shape A (vectorized (vectorized ellipses with ( This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 . , ◦ π r 2 ◦ r is the to to and ) 0 i r ) (x,y ) y page 48 of 488 θ the number the (b i (x, r n torusWaveIn torusWaveOut ) ) (x,y (x,y θ θ s s boundary with inner and outer with inner sinusoidal boundaries and in outer ) n A N n A N x,y ◦ Wave ( represents the sine wave amplitude, wave sine the represents r ◦ ◦ a r r A ) i i (a) i (x,y r With ). out of phase (torusWaveOut x y r x y r 2 π ) and radii (a) in phase (torusWaveIn with inner and outer wave Torus (b) out of phase. of out Torus 2 π 2.31: is the number of sides used to construct and each boundary, 2.3.16 s NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure phase or phase of oscillations along the inner and outer boundaries extending from N point. about the center rotation Torus structure with a sinusoidal Torus boundary of inner and outer radii at is centered The structure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2.4 Arrays and Instances 2.4.1 Rectangular Arrays The method instantiates and arrays a GDS structure on a periodic rectangular grid. 2 constructors are available. Both define the starting point of the array (x,y) along with the number of columns (Ncolumns) and rows (Nrows). First (de- This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: noted as the 1 parameter prior arrayRect constructor) has a defined pitch of Δx and Δy in the x and y directions respectively. The second (denoted as the 2 parameter prior arrayRect constructor) is characterized by the number of elements distributed evenly between the start (x, y) and end (xe,ye) points of the array. (xe,ye) Δy (x,y) Δx (x,y) (a) (b) Figure 2.32: Two versions of the rectangular array constructor arrayRect (a) 1 (b) 2. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 49 of 488 page 50 of 488 arrayHex> Δs rows N . ), number of columns and rows x,y ( columns N y Δs constructor used to create hexagonal arrays. hexagonal arrays. create used to constructor x ) Arrays (x,y arrayHex ) are specified, with previously defined structure instantiated instantiated structure defined previously with specified, are ) rows 2.33: N Hexagonal and Figure columns 2.4.2 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 , (b) , = 0. r ) and ) times 1R s ) radii, ) arrayPolar> arrayPolar> arrayPolar> arrayPolar> r e r = 5 and 60 page 51 of 488 # 1 = θ 1 1R 2 2R θ . (a) times starting at at starting times # # ) and end ( end and ) Δr Δr r r 90 s r 0 1 2 3 4 5 = (b) = 5 In figure 2.34a, GDS m. Version 1R rotates rotates 1R m. Version θ # . µ r e e e e r r r r 0 . Δr arrayPolar ), along with start ( start with along ), 1 e is instantiated θ 120 s s s s r r r r degrees, and radially starting and radially starting degrees, = and θ Δθ # # Δθ Δθ θ θ is instantiated starting angularly at ), along with start ( with start along ), e oBeArrayed e e e e , and radially 120, and θ θ θ θ θ = e = 0. θ s s s s ) and end angles ( angles end and ) s θ θ θ θ to to θ 60 oBeArrayed = 60 structureT θ = m with radial increments of increments radial with m s µ θ in the angular and radial directions respectively. Region respectively. directions radial and angular the in 0 m. Version 2R rotates each instance to point towards point to each towards instance 2R rotates m. Version . 90 # 0 1 2 3 4 5 µ = (a) r ) and end angles ( end and ) 0 structureT s . θ = 4 Arrays θ r , in angular increments of 30 of 120, in angular increments = 4 and and 2R. = r # Four versions of the polar array constructor constructor array polar the of versions Four 2 e θ 120 m to to m θ Polar = µ 0 θ m to m to to to . ) radii, are specified, ) number radii, of are between is instances the defined regions 2.34: µ e 0 r 60 . = 2 Versions 2 and 2R: Start ( Start 2R: and 2 Versions = r 2.4.3 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ) LL ,y LL x ( instanceSym> page 52 of 488 θ (c) , mirroring (MIR), mirroring ), instance> x,y ( within other structures. within other structures. θ ) MIR MAG x,y ( UR y UR MIR MAG x LL y x y ) are defined in an identical manner as for defined in an identical manner as for ) are θ LL constructor. constructor. (b) x y Structures x coordinates of the structural boundary. This method of the structural boundary. coordinates ) GDS are double values. double are UR ) ,y UR x constructor. constructor. Polar Polar Array example. (a) cell containing two objects, versions (b) 1 and (c) 1R of the arrayPolar structureToBeInstanced This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 53 of 488 points2instance ) x 4 n y ) ,y 3 4 ,y (x 3 (x ) n ) 5 x 2 ,y ,y 5 2 (x (x y ··· ) 1 ,y 2 1 y constructor used to instantiate structures (cells) at user (cells) at structures constructor used to instantiate (x positions. ) i 2 coordinate pairs. coordinate Instance ,y x ) i To 1 y Points to instance example. instance to Points along instanced a defined path by a Structure set of (x,y defined (x points2instance Points 1 2.37: 2.36: » «structureToBeInstanced x 2.4.5 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure Figure by defining the instanced structure in double brackets, then the instantiating structure at the specified coordinates, terminated by . points2instance the constructor This method instantiates GDS structures along a list of user defined points. process: step two first, following the within accomplished is methodology This This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 sqrHole> hexHole> sqrPillarC> hexPillarC> sqrHoleC> hexHoleC> sqrPillar> hexPillar> arrays arrays of parameter. parameter. page 54 of 488 ) y θ θ θ θ θ θ θ θ θ N y y y y y y y y × sqrHoleVC> hexHoleVC> sqrPillarV> hexPillarV> sqrHoleV> hexHoleV> sqrPillarVC> hexPillarVC> N N N N N N N N x N ( x x x x x x x x θ θ θ θ θ θ θ θ defines the polygon, N N N N N N N N ) y y y y y y y y Arrays y y y y N N N N N N N N p p p p sides x x x x x x x x N x x x x x x x x ( N N N N N N N N p p p p p p p p y y y y p p p p Square sides sides sides sides sides sides sides sides x x x x x x x x p p N N N N N N p p p p p p N N and y y y y y y y y y y y y y y y y r r r r r r r r r r r r r r r r x x x x x x x x x x x x x x x x r r r r r r r r r r r r r r r r y y y y y y y y y y y y y y y y x x x x x x x x x x x x x x x x Hexagonal parameter. Vectorized array constructors are defined by the by defined are constructors array Vectorized parameter. defines an octogon. Vertices of the vectorized shapes are defined of the shapes vectorized are defines an octogon. Vertices Pillar-Hole = 8 . Narrow elliptical shapes are best defined in vectorized forms. forms. vectorized in defined best this In are shapes elliptical Narrow . shapeReso V sides This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: py ry ry (x,y) px (x,y) px rx rx (a) (b) (x,y) (x,y) py ry ry px px rx rx (c) (d) Figure 2.38: Square and hexagonal arrays of holes defined by the lower-left corner ((a) and (b)) and by the centroid ((c) and (d)). (a) (b) (c)(d)(e) Figure 2.39: Various pillar-hole examples. (a) Nsides = 4, (b) Nsides = 4 and θ = 45 de grees, (c) ellipses with Nsides defined, (d) vectorized ellipses with denser number of vertices at curved sections where shapeReso defines the ren dered resolution, (e) ellipse array with θ = 22 degrees. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 55 of 488 ). ) B (e A page 56 of 488 objects. genAreaName genArea> OPERATION> ) ) are then extracted B (d A constructor, constructor, the objects are ) B (c genArea extractedGDSLayer A Operations Area ) B (b Operations A A (AND) B A (OR) B B A (SUBTRACT) B A (XOR) is a string constructed form a continuous set of characters continuous set of a characters form is a string constructed constructor takes on values: the following constructor takes AND, OR, SUBTRACT Boolean operations Boolean between operations two objects. generalized area (a) two general area objects A and B, (b) A (AND) B, (c) A (OR) B, (d) A (SUBTRACT) B, A (XOR) B. (e) A (XOR) General Boolean B spaces or tabs. spaces (a) genAreaName This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 Tuesday, November 24, 2015 4:54 PM 4:54 2015 24, November Tuesday, con ) ) (c (b instance page 57 of 488 genArea -1- string identifier can not contain spaces spaces contain not can identifier string > (a) > > > genAreaName subtract genArea genArea 1) 44 11 7 struct ellipse > ellipse NOTES: Boolean SUBTRACT operation between an ellipse and a pentagon. (a) CNST script, (b) ellipse and a pentagon GDS shapes, (c) resulting GDS a Boolean shape subtraction following between an ellipse and a pentagon. When extracting large instantiated GDS arrays, the the arrays, GDS instantiated large extracting When struct 2) gdsReso shapeReso 2.41: layer layer Processing large, clear-field arrayed patterns could lead, under oper certain patterns arrayed clear-field large, Processing resultsSUBTRACT genArea1 genArea2 genArea1 devices genArea2 devices devices D:\DOCUMENTS\zTESTfiles\loadFiles\0000booleanManual.cnst # genArea1 SUBTRACT genArea2 cast to GDS layer 44 < < # extract shapes in layer 11 and store into variable genArea1 < # extract shapes in layer 7 and store into variable genArea2 < # create struct to store results < # create an ellipse in layer 11 11 0 0 2# create a pentagon in layer 7 4 447 0 1 0 1.5 1.5 5 0 0.001 0.001 structor flattens structor the flattens data (i.e. the GDS is structure hierarchy not preserved). NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure performed on a smaller instantiated GDS structure. structure. GDS circumvents instantiated smaller a on process This performed GDS structure. of the arrayed the hierarchy a host of dillemas and preserves 3) number of vertices. shapes to with a large ations, packages Some commercial limit per GDS shape. vertex an upper have example: Boolean SUBTRACT or tabs. tabs. or when intensive computationally is procedure the operations, Boolean to Similar a take could operations these used. are Consequently, arrays instantiated large the using built arrays, periodic large time. of amount For considerable constructor, the above process is considerably faster when operations are IMPORTANT This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 are are y and page 58 of 488 Transfor x , genAreaCopy> genAreaCopyC> resultGDSLayer Affine genArea 0). , and θ and constructor. then objects The constructor. Bias instantiation, the process of copying of process the instantiation, BIAS resultGDSLayer BIAS resultGDSLayer genArea Shape θ θ struct omits area scaling. Rotation defined by the Copies, = 1 defines the areas extracted via extracted defines the areas Area - first centers the object around the origin, then performs affine performs then origin, -the around object the centers first - of the the structural to coordinates objects relative translates is expressed in degrees in degrees is expressed genAreaName General These constructors copy a defined general area (flattened area) into an Variable Variable defines BIAS the parameter amount of expansion shape (positive perimeter mations 2.5.2 genAreaName This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 59 of 488 BIAS (Negative) BIAS (Negative) BIAS (Positive) BIAS (Positive) ) (a) (b and negative bias. and negative Shape biasing (a) expanding and (b) contracting an area using a positive a using area an contracting (b) and expanding (a) biasing Shape 2.42: NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 60 of 488 does not exist, not does Logos textgds> textgdsC> textgds> textgds> textgds> 0 0 0 and fontName fontName x y x y 0 0 0 example. 20 20 20 fontSize fontSize fontSize fontSize }} ) of the text string. text the of ) function Interface }} }} }} Serif Arial PostScript {{Algerian}} {{ {{ textgdsC textgds GDS rendered {{fontName {{fontName 2.43: !@#$}} }} }} }} }} defines the rendering resolution of the text. text. the of resolution rendering the defines Parameter ext Labels, ext ext Figure ) or at center ( center at or ) values are in micrometers. Font size is specified by conventional in micrometers. values are Font ) shapeReso <{{4!AaBbCc <{{SomeT <{{4!AaBbCc Text represents all printable characters. characters. printable all the represents If x,y Text <{{someT <{{someT ( textgds ext 2.6.1 2.6 parameter parameter NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox "Serif" will be used and a comment will be placed within the error log file. If list will within font the "Serif" does system font not exist, then first encountered be used. in line ascender the to descender the from measured definitions, fontmetrics micrometers. fonts. Text shapes are directly placed within the active GDS structure. structure. GDS active the within placed directly There are shapes fonts. Text left lower the at either is placement where shapes, text for constructors two are ( corner someT The following are scripts used to generate the text in Figure 2.43: in Figure the text generate scripts used to are The following Text shape is characterized by a string of characters using vector based system system based vector using characters of string a by characterized is shape Text This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ) does page 61 of 488 fontOutline textOutline shape in the fontName fontName Text textOutline> textOutlineC> parameter. parameter. x y x y ). two for constructors are There x,y ( fontSize fontSize fontSize fontSize }} }} Text Outline GDS example. Outline GDS example. Text values are in micrometers. size Font is specified 2.44: ) of the text string. Interface function parameter ) {{fontName {{fontName x,y ( Figure Within this object, errors dealing with exceeding maximum dealing Within with this object, exceeding errors }} }} ext ext Outline textOutlineC NOTE: defines the rendering resolution of the text. If the Text <{{someT <{{someT 2.6.2 parameter (see section 2.2.7). parameter NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox IMPORTANT number of GDS vertices could be encountered. circumvent this dilemma, To shapeReso system the within file. font log encountered first then exist, not does "Serif" If font list will be used. the to descender the from measured definitions, fontmetrics conventional by line in micrometers. ascender Outline width is specified using the lithography) are of consideration. In a similar manner to name section, the outline a font shape string of is previous characterized text, and size, width of the outline and position text shapes, where placement is either at the lower left corner ( not exist, "Serif" will be used and a comment will be placed within the error or at center ( Text outline shapes are useful when lithographic write times (e.g. electron beam (e.g. times electron write lithographic when useful are shapes outline Text when using larger letters, increase the shapeReso increase letters, when using larger This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 x Δ labelMaker} labelMaker} font- ). Each labelMaker} labelMaker} labelMaker} labelMaker} page 62 of 488 out rowCol ). Label place r y y ,y Δ Δ r ), font name ( ), font ). con remaining 2 x x x rowColumn ( col Δ Δ N r r and y y Carriage returns cannot Carriage returns r r autoOut autoRowCol autoOutLett autoRowColLett x x 2) y y y y outer Δ Δ Δ Δ )or a combination of numbers of combination a )or option. the for placement Label x y x y x x x x Δ Δ Δ Δ : SEPARATED allowed. All specified parameters r r r r y y y y are are constructed from any printable ) and columns ( separated. separated. r r r r n x x x x row NOT N ...L autoRowColumnLetters TAB 1 row-column x y x y x y x y L ). In name all is not cases, contained if the font m), and the pitch along the two directions ( autoRowColumn and n and µ in ...L option initiates with the top-left label at a position and fontName fontName fontSize fontName fontSize Labels 2 outer ,L 1) 1 col col L N N fontSize fontSize Maker row row autoOuter N N and the left hand side placement initiates at and at the left hand side initiates placement NOTES: row-column ) fontName fontName fontSize fontName fontSize fontName fontName fontSize fontName fontSize n n autoOuterLetters L L x,y Label col col col col ( ...... N N N N ) are specified. Similarly, custom labels are defined by an additional set labels are custom specified. ) are Similarly, 2 2 option is along the top and left side of the chip array. Top side placement Top option is along the top and left side of the chip array. ), font size ( y L L Δ ). In both ( cases number of rows row row row row 1 1 2.6.3 x,y {N {N {N {L {N {L TAB are parameters labels where 2 custom Name be used within the script line constructor. be used within the script line constructor. v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox ment for the and ( of label parameters Label maker has 6 available constructors. constructors. gen available 6 automatically has constructors 4 maker Label erate labels based on the number of rows and columns. Chip labels are ei ( numbers ther ( letters and labels ( user-defined, custom, generate structors an has pair constructor outer starts at IMPORTANT between constructor parameters is 4 auto labels: 4 auto ASCII character, including the space character. including the space ASCII character. character, space separation Therefore, within above constructors must be within above constructors ( a Serif font. to will default list, label maker font within the system This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 63 of 488 (f) (b) (d) ) ,y (x x Δ (c) (e) (a) Label Maker Constructor Examples: Constructor , , (b) autoRowCol Label Maker (a) autoOut ) . , (e) out, and (f) rowCol , (d) autoRowColLett (c) autoOutLett ) r y ,y ,y Δ r (x (x 2.45: NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 labelOutline} labelOutline} labelOutline} labelOutline} labelOutline} labelOutline} shapeReso page 64 of 488 out rowCol y y Δ Δ x x Δ Δ r r y y Carriage returns cannot Carriage returns r r autoOut autoRowCol autoOutLett autoRowColLett x x 2) y y y y Δ Δ Δ Δ x y x y x x x x Within this object, errors dealing dealing errors object, this Within Δ Δ Δ Δ : SEPARATED allowed. All specified parameters r r r r 3) y y y y are are constructed from any printable separated. separated. r r r r n x x x x Text NOT ...L TAB 1 parameter (see section 2.2.7). (see section parameter x y x y x y x y L - Outline fontName fontName fontSize fontName fontSize Labels 1) col col N N Maker row row N N NOTES: fontName fontName fontSize fontName fontSize fontName fontSize fontName fontName fontSize n n L L Label col col col col ...... N N N N 2 2 L L row row row row 1 1 2.6.4 {N {N {N {L {N {L TAB are parameters labels where 2 custom parameter. parameter. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox be used within the script line constructor. constructor. line script the within used be the fontOutline is specified using circumvent circumvent this dilemma, when using larger letters, increase the IMPORTANT between constructor parameters is This method is identical to the previously defined label maker section (2.6.3) This method defined is label identical maker the to previously 4 auto labels: 4 auto ASCII character, including the space character. including the space ASCII character. character, space separation Therefore, within above constructors must be within above constructors with exceeding maximum number of GDS vertices could be encountered. To with the exception that rendered shapes are outlined text objects. text width outlined Outline are shapes rendered that exception the with This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 and page 65 of 488 autoRowColLett (b) (a) x Δ ) ) ,y ,y y Δ (x (x Label Maker Outlined Text Constructor Examples: Constructor (a) Text Outlined Maker Label . (b) rowCol 2.46: NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 psFracEle page 66 of 488 pixelScaling psFracElements psPixelValue Shapes psPixelValue psPixelValue times. Alternatively, times. Alternatively, psFracElements Value 20 0.100 Pixel Fracturing GDS 10.000 Postscript FracturedElements pixelScaling to , implying that the shape is unfractured. unfractured. is shape The the that implying 1, -direction. postscript -direction. each for changed be could value This y numberOf PostScript Defining PostScript PostScript parameter allows direct control of allows parameter control number direct of vertices per GDS shape. 2.6.5.1 2.6.5.3 2.6.5.2 2.6.5 e 2.47 illustrates the relevant portion of the EPS file. This information is ments Bitmap images could be vectorized using either Illustrator, Inkscape (open source package) or some other package capable of exporting EPS files. Fig ur within the CNST script file. copied and pasted v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Default global value is value global Default per GDS shape. the maximum number of vertices could exceed implies that the overall postscript shape area will be subdivided into 20 seg the along ments shape. reduces the postscript image by 10. Once the value is set, subsequent postscript subsequent set, is value the 10. Once by image postscript the reduces shapes are rendered to this value. This value postscript shape. could be changed for each PostScript shapes are defined by double values in conjunction with constructors constructors with conjunction in values double by defined are shapes PostScript doubles. 1.000. is value global Default coordi postscript the that implies This unscaled and in units of micrometers. values are nate Parameter represents the scaling of the postscript coordinate values. For instance, instance, values. coordinate the scaling of the postscript For represents scales each postscript value by 10 The following parameter defines the number of fractured postscript shapes. shapes postscript continuous large, scaled, aggressively since important is This (moveTo (m), lineTo (l), curveTo (c), etc). The pixel value defines scaling of these these of scaling defines etc). value (c), pixel The curveTo (l), lineTo (m), (moveTo This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 67 of 488 . . . GDS shape of the rendered postscript shape. GDS shape of the rendered 2.48: Figure PostScript scriptingPostScript.eps example. scriptingPostScript.eps PostScript the denotes rele The arrow the CNST script file. into be copied and pasted to vant text olog 2.47: ostScript Example - PSshapeRaven.eps P f QQ showpage 3.843 140.852 3.562 c 142.531 3.175 q 0 -1 1510 88 86.913 rectclip 151 q -870 re g W n 6.23 134.422 6.87 134.422 6.179 c 134.426 5.476 138.051 2.675 5.913 134.035 6.249 c 134.035 6.593 134.09 6.675 134.363 6.738 c 140.336 1.617 c 142.469 0.624 146.109 0.07 147.922 0.46 c h 135.105 6.913 136.297 6.339 137.813 5.074 c 138.77 4.277 139.641 4.046 142.695 3.468 142.695141.691 3.335 3.015 c c 142.695 139.914 3.066 3.327 142.234 138.77 2.917 3.808 137.688 4.706 c 135.844 143.895 0.167 m 142.457138.094 0.456 2.331 140.961 135.961 0.925 3.824 140.039 134.777 1.378 5.058 c c 134.176 5.687 134.035 %%Trailer %%EndPr %%Page: 1 1 %%BeginPageSetup %%PageBoundingBox: 0 -1 151%%EndPageSetup 87 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 con ) are are ) page 68 of 488 cnstLogo nistCnstLogo and (b) and constructor. constructor. parameter defines the defines parameter ) (b ) or combined ( combined ) or shapeReso cnstEmblem cnstLogo nistLogo nistCnstLogo cnstLogoEmblem nistLogo , scale scale scale scale logos y y y y cnstLogo NIST , using the nistLogo NIST logo created x x x x (a) and 2.50: parameter. parameter. CNST logos created using the (a) the using created logos CNST structors. using the nistCnstLogo NIST and CNST logos created Combined constructor. Figure CNST cnstEmblem 2.51: 2.49: 2.6.6 placed placed at that coordinates define the centroid of the GDS logo shape. Since Figure v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure logos are cast using postscript values, the the values, postscript using cast are logos rendering resolution of the logo shapes. Scaling of the resulting logo is set using the scale dividual ( Three Three constructors are available for placement of CNST and NIST logos. In This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 = 8) and with i o r N r arcSquareFillV> arcHexFill> arcHexFillV> arcSquareFill> page 69 of 488 shapeReso ). Parameter Parameter ). Δx Δx Δx Δx ), start and end and start ), o r s s arrays n n are either defined by by defined either are ). s s s s and r r r r s ) or by the (f) i r (c) r arcHexFillV ) ) ) ) (x,y (x,y (x,y (x,y and θ θ θ θ ). For a defined torus by ). For N N N N N square-hex arcHexFill e e e e θ θ θ θ and s s s s (e) (b) θ θ θ θ o o o o r r r r arcSquareFillV bounded i i i i r r r r y y y y arcSquareFill = 8) boundary. ( x x x x s 360. radius of dots circular The n (d) (a) = e . A circular boundary is represented by a radius a by 360. represented is boundary circular A θ ) and the number of ( vertices = e e θ (Torus-Circle) θ and boundary. boundary. Hexagonal array of dots inside (d) an arc, (e) circular and (f) Square Square array inside (a) an arc, (b) circular and (c) hexagonal ( hexagonal (N and Objects Arc and s = 0 θ s 2.52: θ = 0 defines the shape rotation about the arc origin (x,y about the arc defines the shape rotation s ) θ 2.7.1 = 0, , 2.7 (x,y This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1, ) ≤ (2.3) (2.4) (2.5) (2.1) (2.2) t 3y ) ≤ ,P 0 2y space as space 3x ) ,P page 70 of 488 2x x,y parameter. In parameter. ) 3y 3x P P 3 (b , with respective 3 3 )(P P t t 3 3 P 1y t + + )(P ,P + 2y 2x 2 0y 1x P P and P 2 2 ,P 2 (P 0 )t )t shapeReso )t P 0x t t k t P (P − − − k is a variable ranging variable a is t )! t k 3(1 3(1 3(1 n−1 − + + ) + t 1 1x 1y !(n − k tP tP tP 2 (1 2 2 ) k ) ) t t t C − k − n − n n! is the index, the is k n =0 = = 3(1 k n 3(1 3(1 , but become closer together in ( closer together but become , equation 2.1 becomes equation k t + + + C 0 ) = ) n P 0x 0y = 3 = 1 3 P P 3y ) t B(t 3 3 t ) ) ) ,P t t − . Equation 2.3 for the two coordinates is written as is written . the two coordinates 2.3 for Equation 2y 3x 2 − − (1 ,P (1 (1 = 2x Curve ) = = and P x y ) ) 1 (a) B(t )(P 1y B(t B(t Cubic Bezier curves rendered at a (a) at lower and (b) higher resolution. Bezier Cubic curves rendered Dots curve vertices. rendered represent )(P ,P Bezier 0y 1x is the binomial coefficient given by is the polynomial degree, degree, polynomial the is ,P (P k 2.53: n C 0x n = 0 (P t 2.7.2 Figure v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure Figure 2.53 shows rendered curves at varying resolution. Rendered curves exhibit an increased vertex density at higher curvatures automatically. The in spaced uniformly are points increases. curvature and curved shapes. with n With points P control shapes are rendered to a resolution defined by the by defined resolution a to rendered are shapes vector computer in path a as used curve parametrized a is curve Bezier general, graphics. of Bezier multiple can paths be used to model smooth Concatenation as expressed is mathematically A Bezier curve complexity. curves of arbitrary The nanolithography toolbox complex employs cubic Bezier creating curves for The toolbox employs Bezier curves to represent complex curved objects. curved complex represent to The curves Bezier employs toolbox The where where where the corresponding start and end points are This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 Bezier Curve is defined using a start (x1,y1) and end (x2,y2) points, two control points (cx1,cy1) and (cx2,cy2), curve width (W ) and θ(x1,y1) rotation about (x1,y1). shapeReso parameter defines the rendering resolution of the Bezier curve. (x1,y1) (cx1,cy1) Figure 2.54: Bezier Curve example showing the start and end points along with the corresponding control points. Figure 2.55: Two example GDS shapes of the bezierCurve constructor. Highlighted periphery shows curved sections with densely packed vertices. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 71 of 488 ) 2 ,y 2 (x bezier- page 72 of 488 bezierCurveInv> ) 1 ,y 1 (x θ ) 2 s W ) ,cy 1 2 e ,cy (cx W 1 2 (cx y 2 x 2 cy 2 cx constructor. constructor. 1 cy e s 1 W W cx CurveInv Schematic Schematic illustration showing various parameters from the ) 1 1 y ,y 2.56: 1 1 (x This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: (x2,y2) (cx2,cy2) We g (cx1,cy1) Ws (x1,y1) Figure 2.57: Schematic illustration of the bezierCurveInvSlot constructor. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 73 of 488 page 74 of 488 ). Iteration x,y ( sierpinskiTriangle> sierpinskiCarpet> vicsekSaltire> vicsekCross> curvedTree> parameter. parameter. W idth Length Length Length Length Length iterations iterations iterations iterations iterations y y y y y Generated GDS fractal examples shapes. Generated x x x x x 2.58: Figure Fractals 2.7.3 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 functionRT> functionXY> ), ◦ co N ( ) 22.5 180 (2.6) (2.7) 180 0 0 r,θ 1000, a ) to gen ) to ( 1 1 = page 75 of 488 N and ) 0.22 (b) = 2. In order to x,y ( functionXY> functionRT> ). EL 1000 1000 0.22 ) ) (θ . Functional representa . Functional (x,y (x,y BEV θ θ 6.28 ER ), number of segments 0 U and (b) r = 1, parameter parameter is as represented ) θ x 44 θ (x MIT ) = 2. Join is by represented the D −10 −10 0 88 − JOIN JOIN e ), = and 4θ ( 10 10 x 2 U r,θ ( x ( ROUN CAP scriptingFunctionPlot.cnst JOIN 11sin 44)}} SQUARE 14sin = = 0, ) and = (−x/ ) (θ N W CAP NW r ER (x Function plots (a) y Function y = 1, or (a) U U x θ MIT ROUND 2.59: and upper limits Math.exp L L 10). Both curves were constructed using = ) ∗ − )}} Plot L , t θ 2) ∗ ROUND Figure (10 CAP x y x x y θ and = 0, m, L µ x T . Mathematical functions are represented in terms of the Java ( )}} t )}} about 22 Function . (x (t , cap and join parameters. Cap is represented by the following integer integer following the by parameters. join and cap ), represented is Cap ◦ Math.sin(4 Math.sin(x/ 5 BUT . W ∗ ∗ ( <{{y <{{r 22 ), lower As seen above, in polar coordinates 2.7.4 x,y <{{11 <{{14 following following integer values a variable NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox erate functional plots in Figure 2.59: functional plots in Figure erate Functional plots in figures 2.59(a) and 2.59(a) figures in plots Functional by rotated respectively are 2.59b and given by the two curves is correspondingly tion for avoid exceeding GDS shape point limits, each horizontally function exceeding is fractured avoid the centroid. and vertically about Functional plot method allows functional representation in representation functional allows method plot Functional ordinate systems. Generated curves are defined by a function, translation values The following scripts (see example file The following width of 0 ( width This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1) ). Several x page 76 of 488 ( ) ) ) ) Math.sin (x 1 10 − n x log e x random number in [0, sinh(x cosh(x tanh(x is represented as is represented ) x ( sin Math.log10(x) Math.expm(x) Math.pow(x,n) Math.random() Math.sinh(x) Math.cosh(x) Math.tanh(x) ) ) ) ) x x ln(x √ e π cos(x tan(x sin(x Math.log(x) Math.exp(x) Math.sqrt(x) Math.PI Math.cos(x) Math.tan(x) Math.sin(x) NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Math class methods. For instance instance class Math methods. For methods from the Java Math class are shown below. The entire Java Math class limits, method is summary available including documentation, argument online. This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ) n (c and x ,r y ), with ,d page 77 of 488 x x,y d ( . y r = x = 4, r x s r (inner). Figures 2.60a, b and grayENgon grayER 0 y ) ) r ) (b (x,y (x,y θ θ ) and (c) N s s (outer) (outer) to 1 n n N − y y n d r y x x d degree rotated n-gon structures where the number of sides of number the where structures n-gon rotated degree x y r x y d x 45 d ers a variety of means for constructing grayscale objects from objects from constructing grayscale ers a variety of means for Polygons rotation about rotation the origin. Rectangular structures 2.60a) (figure Evenly distributed grayscale segments for (a) rectangles and n-gons with (a) rectangles segments for grayscale Evenly distributed ) large number of vertices (N number of vertices (b) large (a) Grayscale (x,y θ (figure 2.60c). 2.60c). (figure 2.60: 2.7.5.1 = 4 2.7.5 , and s y NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure number of segmentations, the outermost dimensions defined by defined dimensions outermost the segmentations, of number r to equivalent are N segmented segmented polygons. GDS layers are assigned to each of the sections with layer numbers ranging from c show evenly distributed grayscale structure are centered at This section off This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ) The (c . i y r = . Similarly, . Similarly, i page 78 of 488 n x y . d n y > r = 4, r > s ··· 3 ) coordinate )) pairs. coordinate ··· y i )). constructors The grayUDR grayUDNgon y 3 d 1 y y ,r r 1 n 2 > ) ) i y y y ,r . . . x r r r 2 > 1 r y x 1 ( (x,y (x,y 2 d r x ) and (c) N y θ θ ( r s r > 2 (or > 1 x s y ) r (or 1 N d y ) yi 1 ... y ,d n n y n ) y ,d and xi x d r 1 and r r d n (b x ( x n d n x d n ( x r x d r > > ··· ··· 3 ··· ··· 3 x x d r 2 2 y > y > d r 2 2 x x d r 2 2 x x n 2 1 > > d r y y y 1 1 . . . d d d x x 1 1 d 1 x y y d r d 2 x 1 d 1 x x r d ... User defined distribution of grayscale segments for (a) rectangles and (N number of vertices n-gons with (b) large n x d (a) x y x y 2.61: NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure User defined grayscale segments are shown in figures 2.61a, b and c. that assume further r n-gon segments for respective respective constructors are defined by The outer most segment is defined by defined is segment most outer The This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2.7.5.2 Ramp grayERamp constructor allows ramping with either UP = 1, where the dx is subdivided into n segments with GDS layer numbers range from 0 to n 1. Alternatively, with UP = 0, the GDS layer numbers range from n 1 to 0. gray− ERamp2 constructor forms a double ramp (up then down) with evenly− divided segments where GDS layers range from This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: ⎧ ⎪L n ...L ...L n n is even ⎨⎪ 2 0 2 1 L = ⎪ − (2.8) ⎪⎩L n 1 ...L0 ...L n 1 n is odd −2 −2 x y dx dy n UP θ(x,y) grayERamp x y dx dy n θ(x,y) grayERamp2 L0 L1 L2 Ln 1 Ln 1 L1 L0 ··· − − ··· dy dy (x,y) (x,y) dx dx (a) (b) L n 1 L L L L n 1 −2 ··· 1 0 1 ··· −2 dy (x,y) dx (c) Figure 2.62: Evenly distributed grayscale ramp segments using grayERamp with UP values of (a) 1 and (b) 0. (c) Grayscale ramp up/down segments using the grayERamp2 constructor. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 79 of 488 and (2.9) ) t y ,y d t with GDS n x 0 x ( page 80 of 488 with UP val UP with L 1 n > · y · , d ··· · n 3 n x x > d ) −1 < (b 2 n is the number of defined of number the is grayURRamp L n−3 ··· n 2 grayUDRamp grayUDRamp2 L 3 x ) ) t t < x n−2 ,y ,y ··· 3 2 t t L 2 1 (x (x is even is odd and n = = x , where where 1, θ θ n n n n < x − 1 n x UP −1 y y ) 2 0 2 n n−1 d d L ··· (c y ..L n n d . ...L x x n 0 0 x .L ..L ...... 1 constructor with an even number of points n. constructor n−2 defined: L −1 ··· 2 ,L 2 2 2 n n−3 0 0 x x n−1 L L L L x n−3 ⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ 1 1 2 L x x x = (a) −1 L t t 2 n . Constructors assume y y ··· ··· ) L t 1 ,y t t x User defined grayscale ramp segments using segments ramp grayscale defined User grayURRamp2 ues of (a) 1 and (b) 0. (c) Grayscale ramp up/down segments using the t x x (x θ 0 1 2.63: L x Figure / v2016.09.01 • http://www.nist.gov/cnst NIST • CNST Nanolithography Toolbox Similarly, user defined ramp segments are defined using the below constructors. constructors. below the using defined are segments ramp defined user Similarly, to equal is shapes constructed of Number by translation a positions. segment undergo segments Grayscale rotation grayUDRamp2 for layers This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ), n ( ). ) page 81 of 488 (x,y 1 10 n n 9 2 ◦ n n r i ) r ) ) 8 3 ,y n n (c (b (x 7 4 n n ), number of arc segments 6 5 ◦ n n r graySpiralStairOverlap and the rotation angle (θ and the rotation ) and ) i r ( (x,y sides θ sides N n 4 3 2 1 0 9 8 7 6 5 ). The resulting structure is defined by the center i L L L L L L L L L L L ◦ ( Staircase r i (a) Spiral ), inner and outer radii Grayscale spiral with Grayscale staircase overlapping segments. (a) 3D projection parameters. showing and various (b) constructor 2D illustration (c) Scan structure. Scale fabricated beam ion focused a of micrograph electron ning 200 nm. to bar corresponds of L. Ocola [82]) (Courtesy x y r x,y ( 2.64: 2.7.5.3 erent erent GDS layers position NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure number of sides of each segment (N number of sides of diff The spiral structure is constructed using overlapping arc segments cast to This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 82 of 488 9 0 L L 1 10 n 8 1 n L L 9 2 ◦ r n n graySpiralStair ) (x,y i ) r θ ) 8 3 7 2 ,y L L n n (b (x sides Grayscale spiral staircase. spiral staircase. Grayscale N n is represented by a distinct GDS layer. by a distinct GDS layer. is represented 7 4 2.65: ) n n ◦ i r i 6 3 Figure L L 5 6 n n x y r 4 5 L L Here, each segment (n Here, The following constructor creates a grayscale spiral staircase structure NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox without overlapping arc segments. arc without overlapping This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 83 of 488 3 3 intElec1 intElec2 l l ) ) (x,y (x,y 1 1 l l θ θ and (b) intElec2. W W b b H H ) (a) (b N p b N p b 3 3 p p l l 2 2 l l Electrodes 1 1 l l 1 1 w w 2 2 Interdigitated electrodes (a) intElec1 electrodes Interdigitated 2 2 2 2 w w l l w w 1 1 2.66: W W b b ) ) Interdigitated Figure x y w x y w (x,y (x,y H H b b 2.7.6 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 84 of 488 3 3 l l 1 1 intElec3 intElec4 l l ) ) and (b) intElec4. (x,y (x,y θ θ W W b b ) H H (a) (b p b p b p p N N 3 3 l l 2 2 l l 1 1 1 1 w w l l 2 2 2 2 l l 2 2 w w w w Interdigitated electrodes (a) intElec3 electrodes Interdigitated 1 1 W W b b 2.67: ) ) y (x,y (x, x y w x y w H H b b Figure NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 85 of 488 3 l intElec5 1 ) l (x,y θ W b H N p b p 3 l Interdigitated electrodes intElec5. electrodes Interdigitated 2 l 1 w 1 l 2.68: 2 w 2 w Figure 1 2 l W x y w b ) (x,y H b NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2.7.7 Junctions 2.7.7.1 T Junction x y w1 w2 L1 L2 r Nsides θ(x,y) tJunction This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: L1 w2 L2 w1 r (x,y) (a) L1 w2 L2 w1 r (x,y) (a) Figure 2.69: T junction (a) with and (b) without (r = 0) circular ports. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 86 of 488 2.7.7.2 H Junction x y w1 w2 L1 L2 r Nsides θ(x,y) hJunction This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: L1 w2 L2 w1 r (x, y) (a) L1 w2 L2 w1 (x,y) (b) Figure 2.70: H junction (a) with and (b) without (r = 0) circular ports. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 87 of 488 2.7.7.3 Arrow Junction x y w1 w2 L1 L2 r Nsides θ θ(x,y) arrowJunction This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: θ L2 w2 L1 w 1 r (x,y) (a) θ L2 w2 L1 w1 (x,y) (b) Figure 2.71: Arrow junction (a) with and (b) without (r = 0) circular ports. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 88 of 488 meanderSqr> meanderRamp> meanderTri> meanderSin> of width b page 89 of 488 ) ) ) ) parameters. parameters. = 0. ) 2 (x,y (x,y (x,y (x,y 2 and H H a = 2 . Number of wave b and 1 (H a b c θ a b ca θ b ca θ b c θ and/or L . = 0 1 segments H and height height and = ) segments ˜ refmeanderPortsExample, rectangular rectangular refmeanderPortsExample, 2 1 and are of length L L a = and ANN AN AN AN x 1 (L W W W W 2 2 2 2 H H H H . a number from is constructed structure The sine wave Channel N 2 2 2 2 L L L L 1 1 1 1 H H H H 1 1 1 1 Meander e 2.72 illustrates the four meander channel configurations with re Figur . Wave structures initiate at 2.7.8 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 2 2 2 H H H H , 2 2 2 2 L L L L page 90 of 488 meanderSin constructors. constructors. c c c c and (d) meanderTri ) ) ) (c (a) (b (d b b b b N N N N ...... A A A A a a a a W W W W ) ) ) ) 1 1 1 1 ,y ,y ,y ,y Example shapes illustrating various parameters from the (a) Example from shapes various illustrating parameters (b) meanderSqr, (c) meanderRamp L L L L (x (x (x (x 2.72: 1 1 1 1 H H H H Figure v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 H = 0. 2 H 2 = L =left (b) 0, 2 page 91 of 488 L 2 W W = H 1 = H 2 L = 1 L c c c ) ) (c (a) (b ...... b b b N N N . . . and (c) reservoirs and using (c) reservoirs = 0 1 H = 1 L A A A a a a ) ) ,y ,y W (x (x ) 1 ,y Meander channel example illustrating various rectangular reservoir con reservoir rectangular various illustrating example channel Meander using reservoir figurations. right (a) without Structures reservoir using reservoir L (x 2.73: 1 H NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 92 of 488 point pairs. point point Last ) ) x 4 ). 5 ) ,y x,y 3 4 ,y ( 5 ,y (x 3 (x (x ) ... ) ) 5 points2shape 2 1 ,y ,y n 5 ,y 2 y 1 (x (x constructor illustrating a illustrating constructor closed shape con n y x ··· ) to close the shape. close the shape. to points, (x 1 ) example illustrating a GDS rendered polygon. a GDS rendered example illustrating 2 1 ,y y 1 ,y 2 1 (x x points2shape 1 y Shape 1 x To points2shape 2.75: Example of the points 5 from structed Points connects the first (x connects the first 2.74: ) Figure n ,y 2.7.9 n NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure The method creates a polygon from user defined user from polygon a creates method The (x This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 = 0, T BUT page 93 of 488 polypath ) Join x ) along a defined path by 3 ). 5 ,y W 3 ,y 5 (x (x Cap ) ... ) ) 4 2 1 ,y ,y W 4 ,y = 2. 2 1 (x (x EL n y y constructor constructor illustrating a shape rendered con n ) Path points, (x x 1 . Join is represented by the following integer a ,y = 1, BEV 1 = 2 (x ··· polypath 2 example illustrating a GDS polygon along a Gaussian path. along a Gaussian path. a GDS polygon example illustrating y Along 2 x SQUARE = 0, ROUND polypath 1 , or y ER Example of the points 5 from structed Polygon = 1 1 2.77: x 2.76: point pairs. values integer by the following Cap is represented ) 2.7.10 Figure x,y NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure ROUND values MIT The method creates a polygon of a specified The width method ( creates ( This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ) S I will = 1 ). R R R R , with 400, page 94 of 488 and = 3 S randomPolygons> option for for features features for option for m respectively. Generated respectively. m R µ R R 2 R . Separation parameter I number of shapes are then H e e N m and m 1, each shape will be randomly N µ 1 S . The sides is created sides and cast is into created a GDS s s N and height N is set to r R W R H with r W y m, number of elements and iterations were set to to set were iterations and elements of number m, µ x 40 Polygons uniqueStructName × m µ 40 an element radius and separation of separation and radius element an View of a generated GDS file using the Random Polygons module. Polygons area Random The the using file GDS generated a of View was enabled. shapes had (a) 44 sides and (b) 3 sides with random rotation Random 2.78: Random rotation Random is rotation enabled if 2.7.11 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ). = 1). R page 95 of 488 randomEllipses> randomEllipsesV> R R R R randomEllipsesV I I e e ) between adjacent circular ) between circular adjacent N N Ellipses S S S s N . y y y r r x x Vectorized r r S H H ) and vectorized ellipses ( ellipses vectorized and ) and W W y y x x Ellipses x r randomEllipses y r GDS rendered random ellipses with random rotation enabled (R random ellipses with random rotation GDS rendered defines the rendering resolution of randomEllipsesV . of resolution defines the rendering Random ellipse example showing ( separation boundaries defined by the radius r Random 2.80: 2.79: 2.7.12 Figure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 construc page 96 of 488 ) creates a creates ) can be any positive any be can i resoPatternPi width. resoPatternPi w nπ and (b) and ). pattern ensure to In this scenario, is an even positive integer. For even is an even positive integer. For circumference, circumference, resoPattern resoPatternPi (w ) ) πr resoPattern ) 2 (a) (b ,...,n (x,y (x,y 4 θ constructor, the constructor, structure is defined by the , Pattern = 2 and width i ) (r Test x y r w θ x y r n , where , where resoPattern i = ), radius /w (x,y Resolution patterns using (a) using patterns Resolution tors. Resolution 360 2.81: 2.7.13 Figure v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Radial pattern below is useful for characterizing the stigmation of a lithogra a of stigmation the characterizing for useful is below pattern Radial phy tool. Using the origin center symmetry, the across segments of distribution zero. than ( constructor second The greater integer of π is an integer the end-segment where similar figure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 , in H re S (text (text H and (b) and , height , page 97 of 488 incremental incremental W ), with a δ e resoPatternRS 2.0 resoPatternRSA and W ) s value of W ··· resoPatternRS (x,y (W ) ) S θ (x,y (a) (b . The font resolution is defined using the . using defined is resolution font The W N 1.25 H N θ S δ H constructors. constructors. e W ) 1.0 ,y s W parameter. The font height is equal to the value of value the to equal is height font The parameter. 1.0 (x x y W ) elements in each row. above the directly label is placed A text elements in each row. ,y H N (x soPatternRSA Resolution pattern of rectangular lines using (a) using lines rectangular of pattern Resolution x y W and shapeReso W 2.82: 2 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure patterns using a start and end width values using a start and end width values patterns units. micrometer pitch pitch of value the indicating lines of array global scale). shown to 2.82 is not label in Figure Resolution pattern formed using two rows of rectangles of width of rectangles of rows two using formed pattern Resolution variation. variation. The space between the arrays is defined by the parameter The following constructor creates arrays of rectangular shaped resolution This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 , H re and (b) and , height page 98 of 488 W resoPatternLS W 2.0 resoPatternLSA ) value of W ··· resoPatternLS (x,y ) S θ (x,y ) (a) (b in micrometer units. in micrometer N 0.8 S incremental incremental variation. The space between the H N θ δ δ H ) 0.4 constructors. constructors. e 1.0 ,y . label definition is identical to one Text described for W (x H H constructor (previous example). example). (previous constructor s = ), with a e x y W W number of shapes. The maximum number of generated shapes shapes. generated of of number number maximum The W N soPatternLSA Resolution pattern of rectangular lines using (a) using lines rectangular of pattern Resolution and x y W s and W ( W 2.83: 2 Figure v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox pitch pitch is defined when the resoPatternRS S by the parameter is defined arrays values The following resolution patter is formed using L-shapes of width of L-shapes using is formed patter resolution The following An arrayed version of the above is constructor defined by a start and An end arrayed width This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 99 of 488 Separation (c) spiralArch spiralFermat spiralLog (Figure 2.84a). (Figure ) π (2 / ) increment increment increment spiralArch spiralFermat spiralLog width (b) + b 0.010 Separation a a separation = ( m turns turns turns , is shown in Figure 2.84b. as defined Figure spiral, in logarithmic shown The is , the pitch between subsequent spiral turns. Fermats spiral, turns. spiral subsequent between pitch the Fermats N N N in Figure 2.84: in Figure θ 2 0) a = √ , where where , = (a) GDS rendered spiral examples. (a) Archimedes (b) Fermat and (c) Logarith spiral examples. GDS rendered (b) Fermat (a) Archimedes mic spiral. Spirals r mθ W idth W idth W idth = 0,y = , is shown in Figure 2.84c. Figure point the in by shown defined is is , spiral each of Center r 2.84: y y y bθ ). ae 2.7.14 x x x 0 0 1.0 5.0 2 0.010 0 0 2.50 7 0 8 4.4 4.0 8 0.1 0 .010 = NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox origin (x Figure r Spiral objects are characterized by uniform, converging and diverging spacing and diverging converging by uniform, characterized Spiral objects are between subsequent turns. spiral an Archimedes spacing represents Constant defines parameter as defined The following scripts were used to the generate spirals around the centered (x,y where where This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 , start w page 100 of 488 , of width urns t N p spiralRect w ) (x,y s θ L Rectangular spiral. Rectangular turns ) p N (x,y 2.85: s L Figure w between turns. - Rectangular x y Spiral and pitch p and pitch s 2.7.15 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Below constructor creates a rectangular spiral of length L This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 m) m). rep µ µ 80 , 255) 1000 m − µ − , defines the ) if their re alignFFFB2 page 101 of 488 ) (0 m W (80 are GDS layer GDS are layer I µ (x,y b and to to alignVern> θ L 0. extents Pattern are tone-reversed tone-reversed are ) m) 1000 b µ − L and ( (x,y a 80 ), pattern extents range extents pattern ), θ L − , Elements defines the resolution be W alignFFFB1> alignFFFB2> align3Level> m ) and width ( alignVernLb2> alignVernLb1> I alignFFFB1 L µ and/or I a ) ) L 80 position. The pattern pattern extents in range from ) ) ) I L are integer values integer are ) − ( c (x,y (x,y (x,y (x,y (x,y b L θ θ x,y align3Level vernReso θ θ θ 900µm). ( are are integer values defining the two are activated. are activated. The boolean inversion b 1000µm). INV and b Reticle L c b L a L m. Layers , µ a INV and L alignVernLb2 - Predefined b b b INV a ). vernReso vernReso to (900µm, to L L L L 155µm). and and a b b to (1000µm, to V L L a a a parameter parameter defines the resolution between the two L pattern pattern extents in range from IN Marks a a −900µm) L L vernReso to (117µm, to m), whereas b µ y y L −1000µm) vernReso a This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 102 of 488 are shown sepa are b L , and a L . Two layers layers . Two ) (a) (b alignFFFB2 and (b) alignFFFB1 rately as blue (left) and orange (right). orange and (left) blue as for rately used be could methods These alignment. or front-to-back front-to-front Two Two level lithography alignment mark strategies constructed using (a) 2.86: NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ) L I ) (c page 103 of 488 . c respectively. ( Length respectively. b verniers constructed using constructed verniers L y and (c) L and b and a x L , (b) L a L ) (b with layers (a) L with layers ) parameters define the region extent used for tone reversal reversal tone used for extent define the ) region parameters W I . are Blue orange and layers W Two-level alignment mark strategy with strategy mark alignment Two-level alignVern and width ( of the specified alignment layers. This method conventional is suitable for lithography applications. overlay Three-level, front-side, lithography alignment mark strategy constructed constructed strategy mark alignment lithography front-side, Three-level, using align3Level (a) 2.88: 2.87: NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure Figure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 . and Blue page 104 of 488 verniers, and la layer y alignVernLb2 and x and (b) and a a L L ) respectively. respectively. These method is suitable for (a) (b b alignVernLb1 L and b b a L L L Two-level alignment mark strategies with Two-level (a) using constructed bels orange layers are lithography applications. conventional overlay 2.89: Figure v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ). at at ) will and and x,y ( W ) ) L L B P P ( ( INV page 105 of 488 command (see command and width ( alignCustC4> ), a horizontal and ) L alignCustC3> layer ) W B ( ( ) alignCustC2> (x,y alignCustC1> ), paddle length ), paddle length θ ) (x,y L L ), a horizontal and vertical θ ( ( ) about the center point (x,y W W ) θ I ( (x,y W I θ (x,y L W I θ I L I W denotes the denotes boundary within which I ), length ), length L I W signifies that tone reversal within the I W W L ( ( I INV ). INV = 0 2 from the edge. from W INV ) X B - Custom L INV X INV L W and L 2 and width P , and a rectangle of length ), and a rectangle 1 W 2 L P I L L d B P Marks L WL P 2 and . A value 1 1 W L ( WL INV 1 from the cross edge. the cross from 1 ) This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 W B L P W , P L 1 B d L d L ) ) 2 L L I I L W W page 106 of 488 (b (d alignCustC2 , (b) alignCustC1 W W I I constructors. constructors. X L L P W 1 P L 2 L 1 L ) L L I I W W (c (a) Custom Custom alignment crosses using (a) , (d) alignCustC4 (c) alignCustC3 2.90: W W I I Figure v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 will 0 page 107 of 488 characters) characters) 22 cnstASML> cnstContact5> cnstContact7> Frames MIRROR Label MIRROR MIRROR and }} {{barCode CNST ASML PAS5500 reticle frame with MIRROR= reticle CNST ASML PAS5500 0. Barcode }} <{{labelText }} <{{labelText 2.91: }} <{{labelText Reticle Figure 2.8.3 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox mirror the resulting reticle frame. frame. reticle the resulting mirror logo: and label barcode, marks, reticle with frame stepper PAS5500 ASML CNST inch and 7 inch). Contact reticle frames contain a label (up to inch). to 7 (up and label inch a contain frames reticle Contact along with a NIST and CNST logos. In all cases MIRROR defines is if parameter the that final structure will be mirrored. Any integer other than Contact Frames: Frames: Contact The following methods create reticle marks, barcodes and labels for the CNST the CNST and labels for marks, barcodes reticle methods create The following ASMLPAS5500 i-line stepper and reticle labels for contact lithography tools (5 tools lithography contact for labels and reticle stepper i-line ASMLPAS5500 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 b L align- , width ), L ( and/or a page 108 of 488 represent a represent L ) W I ( alignCustVern> ) W (x,y θ and width and W p I ) (orange) created using the (orange) created L I b L ( ) I L L b I (x,y L I a s I s (blue) and defines the resolution of the verniers. of the defines the resolution a L = layers of inversion boolean 0, b I p vernReso and/or constructor. constructor. = 0 a ). length of rectangle Dotted I LW p ( b L CustVern Verniers between layers between layers Verniers , i.e. 0, a Vernier take place. take Any other integer value will invert the pattern within the 2.92: not , and pitch pitch and ), 2.8.4 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 verniers> P itch page 109 of 488 L W L f ontSize . These strings cannot have W example between two lithographic LblB LblB and itch LblA P verniers LblA LblB LblA ticks constructor illustrating parameters between two between parameters illustrating constructor N Labels veniers . Text font used is Serif. The verniers are centered at at Serif. is centered used are font verniers The . Text With vernierReso are are GDS layer numbers (integers from 0 to 255), Parameter LyrB shapeReso and string parameters and string parameters . Vernier resolution is in micrometers. parameters, micrometers. in is resolution layer two The ). Vernier GDS rendered GDS output rendered of the levels. Example of the of Example layers. LyrB Vernier x,y ( LyrA 2.94: 2.93: represents the total number of represents vernier labels defined bars. are by Text and ontSize y f 2.8.5 ticks This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 , arrowHead page 110 of 488 N ) ) . . . ,y (c structures. structures. (x arrowHead> arrow> arrowArray> element. Constructor ) ) ) (x,y (x,y (x,y arrow θ θ θ L features. features. ) ) ,y W (b (x arrow constructors. constructors. LN W W WL a a a L L L a a a a a 2 L W and (c) arrowArray GDS file example with arrowArray Rendered ) ,y W (a) (x 2.96: a defines a linear array of N defines a linear array Example shapes illustrating various parameters from the (a) the from parameters various illustrating shapes Example 2 (b) arrow W Arrows This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 111 of 488 Library nm stoichiometric silicon nitride silicon stoichiometric nm 700 b d Nanophotonics Silicon nitride waveguides with square ((a) and (b)) and rounded corners rounded and (b)) and ((a) square with waveguides nitride Silicon at stresses corners alleviate edges. with rounded waveguide Waveguides formation. cracks and preventing (a) in bar Scale thereby corners, sharp ((c) and (d)). Waveguides with square corners show cracks initiating at the ((c) corners and show at (d)). cracks initiating with square Waveguides 20µm. 250µm and in (b) and (d) represents (c) represents CNST c a nm patterned ZEP layer on top of top on layer ZEP patterned nm 2.97: 600 2.9 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure initiated initiated at the sharp edges within the nitride layer during the reactive ion 2.97a, b). (figure step etch by corner rounding The dilemma was circumvented sciences. sciences. user the allowing definitions, constructor several has element Each using either positive resists. tone or structures negative create to Additionally, addition points. of allow endcaps the constructors at for structural termination of deposition. vapor chemical pressure cracks low using case, this In deposited applications. applications. Many of these shapes (tapers, etc) S-bends, could be Y-bends, used for micro- and nano-fluidics, MEMS/NEMS and other fields of applied venting undesired formation of stress cracks. example stress an of shows 2.97 Figure formation undesired venting This in turn alleviates stresses at sharp field crowding corners, thereby pre This section contains a variety of shapes commonly encountered nanophotonic nanophotonic encountered commonly shapes of variety a contains section This (figure 2.97c, d). 2.97c, (figure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 and t ), width lef 2 ,y EC 1). 2 page 112 of 488 x = ( right ) 2 0), (b) with left end cap waveguide> = 0,E ,y t 2 = ), end point (x lef 1 ,y right constructor. constructor. The method is ben right 1 E x ( EC = t t lef lef E ( ) ) EC waveguide W W W (c (a) (b ) 1 . The waveguide is defined in the horizontal the in ). defined is waveguide The ,y correspond to slot waveguides without and without waveguides slot to correspond 1 1 must be satisfied. vertical For waveguides, 1 (x ,y 2 1 x x ( 0), (c) with right endcap (E = and = W θ 1 0 x ) 2 1 y right ,y 1 2 (x x = 1,E t 1 y = defined by 90. parameters endcaps are Waveguide lef ) Waveguide 1 Waveguide example using the Waveguide resist. tone a negative from waveguides Waveguides eficial when creating examples (a) without endcaps 1 (E ,y 1 Waveguides This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ), W ( . Slot slot W page 113 of 488 . The shape 0), (b) with right slot = constructor. constructor. The W ) ) right waveguideSlot> 2 2 E ,y ,y = 2 2 ), waveguide width t 2 (x (x right lef ,y 2 E ( x EC ). is defined in The waveguide correspond to slot waveguides waveguides slot to correspond ( must be satisfied. vertical For 1 1 waveguideSlot t 2 ,y x 1 lef (x = and slot slot 1 0 EC W W x ) (b) (a) 1 1). ,y ), end point 1 1 = (x ,y θ 1 x W W right ( Slot =parame by defined are endcaps 90. Waveguide slot ) 1 W = 0,E ) ) ,y t 1 1 1 (x . Endcap values of . values Endcap ,y ,y lef W θ 1 1 (x (x right 2 and rotation about point and rotation y ) EC 2 Waveguide x slot Slot waveguide example using the resist. tone negative a from waveguides creating when beneficial is method Positive-tone resist exposure creates a waveguide of width examples (a) without endcaps waveguide end cap (E and 1 t y lef 2.99: 1 EC This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 0), (b) with page 114 of 488 = right ). waveguide The 1 E , waveguide width waveguide ), correspond correspond to slot ,y ) ) 2 = 1 2 2 1 must be satisfied. For be satisfied. must For waveguideInv> t ,y x ,y ,y 2 ( 2 2 2 y lef x constructor. The method constructor. is ( E and (x (x = ( right 1 0 y EC t lef 1). e e , end point end ), = 1 waveguideInv EC W W W W ,y (b) (a) 1 ) 1 = 90. endcaps defined are by Waveguide x right ( ,y ) 1 1 ,y (x 1 θ = 0,E . Endcap values of and rotation about point about rotation and (x t ) θ e e Inverse lef right W W ( ) ) EC 1 1 W ,y ,y 1 1 2 and (x (x y t 2 lef x Waveguide Waveguide example using the Waveguide resist. a positive tone from waveguides Inverse beneficial when creating waveguide examples (a) without endcaps right end cap (E EC 1 y 1 2.100: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 = t lef E ( constructor. constructor. page 115 of 488 ), waveguide 2 ,y 2 x 1). ( ) ) = 2 2 waveguideInvSlot> ,y ,y 2 2 and rotation about point and rotation right (x (x ) e right waveguideInvSlot W = 0,E ( EC t ), end point 1 t lef ,y lef 1 x e e ( EC W W W W Slot ) (b) (a) 1 ,y 1 (x θ s s W W e Inverse W ), exposed sleeve width s ) ) s 1 1 W W ,y ,y ( must be satisfied. must be satisfied. 0), (b) with right end cap (E 1 1 2 = (x (x W x = 2 1 right y x Waveguide resist. resist. Inverse slot waveguide examples (a) without endcaps E Inverse slot waveguide example using the using example waveguide slot Inverse a positive tone from waveguides The method is beneficial when creating 2 x ), slot width 1 W 2.101: y ( . The waveguide is defined either in the horizontal or vertical direction, ). direction, vertical or horizontal the in either defined is waveguide The 1 1 2.9.1.4 ,y 1 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 , ΔL (2.10) (2.11) and two di page 116 of 488 H H b b , length division L wgExpander> ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ) ⎟ ⎟ ⎟ ⎟ ⎟ ⎟ ⎠ ) x w (x,y , base height ( θ is represented in nanometers. in nanometers. is represented , length 2 λ 2 w w −x erf H − 1 ⎛ ⎞⎞ ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ λ b ) θ y 0 L 0 w exp are in micrometers. in micrometers. )are The variable gap is (x, sin Waveguide expander Waveguide H 1.5 = , wavelength ,b 0 . λ Wavelength 0 aw w b w 2λπ 2.102: ⎜ ⎜ ⎜ ⎜ ⎜ ⎜ ⎝ ⎛ Expander and ln b 1 ΔL,w,w Figure L, ΔL a b θ w ) = ( ) (x g (x , beam waist w g θ Waveguide This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ), width 2 ,y constructor. constructor. 2 page 117 of 488 ). linear The x ( 1 ,y 1 ) x 2 ( ,y 2 linearTaper> (x linearTaper 2 ), end point 1 ) W 1 ,y ,y 1 1 x (x ( θ 2 W 1 W 2 points, and rotation about point about rotation and points, y ) 1 2 W W 2 ( Taper ) x 1 ,y 1 must be satisfied. must be satisfied. 1 2 (x y y and end and Linear Structure is useful with negative tone resists. resists. tone with negative is useful Structure Linear waveguide taper generated using the = ) 1 1 1 Tapers W This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ) ), 2 2 s ,y W 2 ( x ( must be must 2 y page 118 of 488 = and end 1 linearTaperSlot ) y 1 ) s 2 or , end point end ), W ,y ( 2 1 2 linearTaperSlot> x ,y (x 1 = ) x 1 ( 1 2 s x ,y 1 W (x θ 2 W 2 s W 1 ). either defined is shape taper linear The s 1 W ,y 1 points, slot width at start points, slot width at x 1 ( ) 2 2 W Slot W W ( 1 s 1 respectively. respectively. W 3 W s Taper ) 1 2 and end y ,y ) 1 and W 1 (x 1 2 s W ( x Linear Linear taper slot waveguide structure created using the created structure Linear taper slot waveguide resists. tone tone is useful with negative Structure constructor. Positive of with end and start of structure waveguide tapered a generate resists W 1 y 2.104: 1 2.9.2.2 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 or 2 x = and end and 1 ) x 1 s page 119 of 488 ), end point 1 W ( ,y 1 ) x 2 ( linearTaperInvSlot> ,y 2 g ) (x 1 ,y 1 2 ). shape taper linear The constructor. constructor. s (x 1 θ W ,y 1 x 2 ( 2 s W W 1 Slot s points, slot width at start at width slot points, ) W 2 W ( g 1 W 2 Inverse W Example of the linearTaper 1 and end and s ) 1 1 W W Taper W ) ( 2.105: 1 , and rotation about point about rotation and ), ,y 2 g 1 ( y (x Figure 2 Linear x 1 y must be satisfied. must be satisfied. , width at start at width ), points, gap points, 2 2 y ) 1 2 2.9.2.3 ,y s = 2 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ). 1 ,y 1 x ( ) 2 page 120 of 488 exponentially L,y ) 1 + 1 ,y 1 (x x ( exponentialTaper> constructor. constructor. 2 ) W 1 ,y 1 (x segments. at start point start at , and rotation about point about rotation and ), ) 1 1 ,y W 1 ( x N θ ( 2 from from L W Taper 1 Example of the exponentialTaper 1 at a length a at 2.106: ) W LW 2 ) W ( 1 Exponential ,y 1 Figure 1 y (x 1 2.9.2.4 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 N con and ) e W ( ) 2 page 121 of 488 exponentially L,y ) 1 + 1 ,y 1 (x x ( exponentialTaperInv 2 exponentialTaperInv> W ) 1 ,y ), exposed sleeve width at start point start at 1 1 ) (x 1 ,y θ 1 W x ( ( e Inverse W from from L N Taper ). The exponential curve is constructed from 2 1 W ,y 1 x ( 1 e at at a length 1 W ) W 2 LW ) W ( 1 Exponential Tapered exponential shape created using the exponential shape created Tapered structor. ,y 1 1 y (x 1 2.107: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 s W ( ). The 1 exponen ,y ) 1 2 page 122 of 488 x ( exponentially L,y ) 1 + 1 exponentialTaperInvSlot> ,y 1 (x x ( ) 1 ,y 1 (x 2 θ s W 2 Slot s 2 W ), start and end slot widths at start point start at 1 W ) 1 ,y segments. 1 1 s W x ( ( and rotation about point W ) Inverse e e W ( from from W L Taper constructor. constructor. N 1 2 W W e 1 at at a length s 1 W ) W 2 W ) ( 1 Exponential tialTaperInvSlot Tapered exponential slot waveguide shape created using the using created shape waveguide slot exponential Tapered LW ,y 1 (x 1 ), exposed sleeve width y 2 s 2.108: W 1 2.9.2.6 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 123 of 488 constructor with constructor and rotated about and rotated customTaper coordinates. coordinates. Points ) ) y ) ,T y x x,y ( ,T T x ( (T θ y T customTaperExamples x T n y n x . ) y ,T ··· x Taper (T 2 y 2 x Custom Two example GDS shapes of the of shapes GDS example Two user defined vertices. highlighted 1 y 2.109: 1 x 2.9.2.7 NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure Custom tapered shape characterized by user-defined by user-defined shape characterized tapered Custom to translated shape that’s y = 0, closing the tapered point θ the translation (x1, y1) to (xn, yn) are generated (top portion of the curve) and mirrored around around mirrored and curve) the of portion (top generated are yn) (xn, to y1) (x1, This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 constructor. constructor. page 124 of 488 r 3 L directionalCoupler1> ) (x,y θ directionalCoupler1 ) sides 2 ,y e 2 N g w w (x 2 1 r L L g 2 e w 2 Couplers w 3 L 2 L 1 e w Directional Directional coupler example using the Directional 1 w 1 e 1 Couplers 1 w w 2.110: 2.9.3.1 2.9.3 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 constructor. constructor. page 125 of 488 r 3 L directionalCoupler2> ) (x,y θ directionalCoupler2 ) sides 2 ,y 2 e N g w w (x 2 1 r L L g 2 e w 2 w 3 L 2 L 1 e w Directional coupler example using the Directional 1 w 1 e 1 1 w w 2.111: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 constructor. constructor. page 126 of 488 r 2 L directionalCoupler3> directionalCoupler3 ) (x,y ) θ ,y (x 1 L sides N e g w w r 2 L 1 L g e w w Directional coupler example using the Directional 2.112: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 B H constructor. constructor. page 127 of 488 B L directionalCoupler4 directionalCoupler4> ) ) ,y (x (x,y 1 θ L e B g w w H B L 1 L g e w w Directional coupler example using the Directional This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 , height ), L ) ( page 128 of 488 H + L,y constructor. constructor. sBendTaper> , length ), + (x x,y ( ) H end (x,y θ W end W L waveguide widths, and rotation about point about rotation and widths, waveguide ) start W end W ( H Taper An example GDS shape of the sBendTaper parameter parameter defines the rendering resolution of the S-bend and end and L start ) W 2.114: ) S-Bend start y ,y W ( (x Figure shapeReso This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ), height ) L sBendFun ( H page 129 of 488 + y L, + parameter parameter defines ), length (x x,y ( sBendFunnel> ) shapeReso ). (x,y θ x,y ( L Funnel constructor. constructor. W and rotation about point H ) S-Bend nel Schematic illustration showing various parameters from the from parameters various showing illustration Schematic ) W This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ). 1 ,y 1 x ) ( . 2 y H , 2 − page 130 of 488 1 (x sBend> sBendLH> ) ) 1 1 ,y ,y 1 1 (x (x parameters. parameters. are constructors Both ) and the rotation about the start point and the rotation H ( ) W θ L parameters parameters are defined by positive and W ( would place the end point at y the end point at would place points. the by characterized is second The H ) 2 2 y H W θ ,y and 2 x and height and L ( ) 2 L ( x L parameter defines the rendering resolution of the S-bend the of resolution rendering the defines parameter 1 1 and end and y y ) 1 , length ), 1 ,y W 1 ,y S-Bend An example S-Bend GDS shape illustrating various parameters from the from various parameters An example S-Bend GDS shape illustrating two sBend constructors. 1 1 1 x ( ) x ( 1 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ), y ) is L ( H W + 1 sBendInv L,y + page 131 of 488 , length ), 1 1 (x ,y 1 and the rotation and the rotation x ) ( sBendInv> e W parameters are defined are parameters ) 1 and a slot of width H ,y 1 e (x would place the end point end the place would W θ and constructor constructor is used to create H + L W e W parameter defines the rendering reso rendering the defines parameter sBendInv L , exposure sleeve width ( ), exposure W shapeReso ). 1 ,y Inverse 1 LHW x ( 1 y . e S-Bend constructor. constructor. Schematic illustration showing various parameters from the showing from various illustration parameters Schematic H W W . For instance, a negative value of value negative a instance, ). For − 1 1 1 , waveguide width ( ), waveguide ) ,y 1 H 1 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 . ). ), ) 1 H g ( H ,y − 1 + 1 x y 1 param ( ) 1 ), gap L,y s sBendInvS ,y + page 132 of 488 1 W 1 ( x ( (x value at value at y sBendInvSlot> ) 1 ,y 1 ), slot width (x H θ constructor is used to create create to used is constructor ( e ), height L ( parameters parameters are defined by positive and g W L sBendInvSlot would place the would end place point H Slot H s and W ), length L 1 and the rotation about the start point start the about rotation the and ,y ) 1 e x ( Inverse W ( parameter parameter defines the rendering resolution of the S-bend LH constructor. constructor. e s S-Bend lot Schematic illustration showing various parameters from the showing from illustration various Schematic parameters W g W 1 y ) 1 ,y shapeReso 2.118: H 1 1 (x 2.9.3.6 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ), ) ) 1 2 3 ,y ,y ,y 1 2 3 x points ( (x (x ) 2 2 3 ,y value. page 133 of 488 would place would place 2 H H W 3 x 3 ( yBend> yBendLH> H and the rotation parameters. parameters. Both ) ) ) 1 1 ) W 3 ,y ,y ( 1 1 H (x (x and and two end 2 ) 1 H ( W θ W θ ,y 1 parameter parameter defines the rendering x ( 3 3 2 3 y H L L 3 3 x L shapeReso . H 2.119 shows a negative Figure 3 ). H . For instance, a negative value of a negative instance, ). For 1 1 and pair of height − 2 2 ,y ) 1 ,y 1 y H 3 1 x L x ( ( 2 2 )). The second is characterized by the start point and x L 3 2 ,y value at y value at L ( 3 x Y-Bend An example Y-Bend GDS shape illustrating various parameters from the from parameters various illustrating shape GDS Y-Bend example An two yBend constructors. ( 1 1 y y and ) ) 2.119: 1 1 1 2 ,y ,y 2.9.3.7 1 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ) ) 2 3 ,y ,y 2 3 (x (x value in yBendInv 3 2 3 and a slot page 134 of 488 H H H e W yBendInv> W + and the rotation ) ), a pair of heights ) W 1 e 3 ,y L 1 W ( parameter parameter defines the (x θ and 2 L , hence value of e ( 3 constructor constructor is used to create W H − . For instance, a negative value of value negative a instance, ). For 1 shapeReso 1 y W ,y 1 2 3 x L L yBendInv ( 3 ), exposure sleeve H W value at ( y 3 parameters. parameters. ), a pair of lengths L 1 ) 1 ,y 1 ,y 1 x 2 ( x Inverse H ( 2 L Y-Bend constructor. constructor. Schematic illustration showing various parameters from the from showing various parameters illustration Schematic ), waveguide width is constructed. The shape characterized is characterized by the e 1 3 y W H W ) 2.120: 1 1 and ,y would place the end point 2.9.3.8 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2.9.3.9 Y-Bend Inverse Slot Similar to Y-Bends (section 2.9.3.7), yBendInv constructor is used to create a y-bend slot waveguide bifurcation using a positive tone resist. The shape characterized is characterized by the start coordinate point (x1,y1), a pair of lengths (L2 and L3), a pair of heights (H2 and H3), slot width (Ws), gap (g), exposure sleeve width (We) and the rotation about the start point (x1,y1) parameters. shapeReso parameter defines the rendering resolution of the This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: Y-bend (Bezier based) curve. Both length and height parameters are defined by positive and negative double precision values relative to the start coordinate point (x1,y1). For instance, a negative value of H3 would place the end point y value at y H , hence value of H value in Figure 2.121 is negative . 1 − 3 3 L2 (x2,y2) H2 We g (x1,y1) H3 Ws (x3,y3) L3 Figure 2.121: Schematic illustration showing various parameters from the yBendInvS lot constructor. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 135 of 488 page 136 of 488 yBend90> ) (x,y θ sides N w degree An example of a 90 degree Y-Bend. Y-Bend. An example of a 90 degree w 2 r ) 2 1 r r - 90 1 ,y 2.122: (x Figure Y-Bend This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 137 of 488 w yBendInv90> e ) w (x,y θ degree sides N - 90 e w w 2 Inverse r An example of a 90 degree Y-Bend inverse shape. Y-Bend An example of a 90 degree ) 2 1 r r 1 ,y (x 2.123: Y-Bend Figure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 138 of 488 s yBendInvSlot90> w g ) e (x,y w θ degree - 90 sides N e Slot w g s Inverse w ) An example of a 90 degree Y-Bend inverse slot shape. Y-Bend An example of a 90 degree 2 1 2 r r ,y r (x 1 Y-Bend 2.124: Figure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 139 of 488 ) H + 1 90degreeBend> 90degreeBendLH> parameters. parameters. Both construc and the about rotation the L,y ) ) + H W ) ) 1 ( ( 1 1 (x ,y ,y 1 1 points. characterized is second The (x (x ) 2 ,y L 2 x ( and height ) W θ L ( parameter defines the rendering resolution of resolution rendering the defines parameter Bend 2 W y H W θ and end and ) 1 ) 1 ), length ,y 1 1 ,y 2 H 1 x L x ,y ( 1 shapeReso (x Degree x ( ). 1 1 1 90 ,y y y 1 An example 90 degree bend GDS shape illustrating various parameters parameters various illustrating shape GDS bend degree 90 example An the two constructors. from x ( 1 1 2.125: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 , ). ), 1 H W ,y − ( 1 90de 1 x y ( page 140 of 488 parameters. parameters. constructor constructor ) 1 value at value at ,y ) y 1 x H ( + 1 90degreeBendInv> , waveguide width width waveguide ), L,y H ( + 1 ) 1 (x ,y 1 90degreeBendInv (x θ , height ), L ( e L W Inverse would place would the place end point H , length ), 1 is constructed. The shape is characterized by ,y Bend 1 W x e ( constructor. constructor. W W ) and the rotation about the start point and the rotation 1 ) e Degree ,y H in Figure 2.126 is positive . in Figure 1 LHW W ( (x 90 greeBendInv Schematic Schematic illustration showing various parameters from the parameter defines the rendering resolution of the 90 degree (Bezier degree 90 the of resolution rendering the defines parameter 1 y and a slot of width e 2.126: 1 W 2.9.3.14 + This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 pa 90de page 141 of 488 constructor is constructor shapeReso , hence , value hence of ) . For instance, a instance, ). For H 1 H − ,y + 1 1 y 1 x ( ), exposure sleeve width L,y 90degreeBendInvSlot> g + ( parameters. parameters. 1 ) ) (x 1 value at value at 1 ,y Slot y ,y 1 90degreeBendInv ), gap 1 s (x x ( θ W ( L e Inverse g W constructor. constructor. ), slot width Bend H e ( W g W ) 1 would place would the place end point Degree ,y H 1 H ), height (x L ( 90 LHW greeBendInvSlot Schematic Schematic illustration showing various parameters from the 1 y 2.127: ), length and the rotation about the start point and the rotation 1 1 ) 2.9.3.15 ,y e in Figure 2.127 is positive. in Figure 1 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 with 2 L page 142 of 488 and 1 L 180degreeBend> 2 L ) (x,y is measured from the midpoints of from is measured N θ D D . constructing the The number of vertices D 180 degree bend example. 180 degree Bend parameter. parameter. ) DW N 2.128: W (x,y 1 2 L L Degree Figure 1 180 degree, u-shaped, bend is characterized by a lengths a by characterized is bend u-shaped, degree, 180 2.9.3.16 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 143 of 488 2 L . e 180degreeBendInv> ) (x,y θ N D Inverse e W Bend 180 degree bend inverse example. bend inverse example. 180 degree ) W DW 2.129: (x,y e W Degree 2 degree bend in the previous section (2.9.3.16), the inverse inverse the (2.9.3.16), section previous the in bend degree L 1 Figure L 180 180 1 2.9.3.17 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 L page 144 of 488 . 180degreeBendInvSlot> ) Slot (x,y N θ D Inverse e g W Bend 180 degree bend inverse slot example. 180 degree ) W (x,y 2.130: DW Degree g degree inverse bend in the previous section (2.9.3.17), the the (2.9.3.17), section previous the in bend inverse degree e 2 L Figure W 180 180 1 1 L 2.9.3.18 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2.9.4 Racetrack Racetrack object is characterized by the center coordinate (x,y), length of the straight section (L), track width (W ), inner radius (rin), rotation about the center point (θ(x,y)), and the number of segments creating each of the curved sections (N ). This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: W rin (x,y) W L Figure 2.131: An example GDS shape illustrating various parameters from the race- Track constructors. Dots along the structural periphery represent the number of points (N ) used to construct the curved racetrack sections. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 145 of 488 2.9.5 Spiral Delay Line Interdigitated spiral delay line objects are characterized by either uniform (Archimedes) and converging (Fermat’s) spacing between subsequent turns. Constant spacing Archimedes spiral delay line illustrated in Figure 2.9.5a is represented by � mθ (2.12) r(θ) = This publication is available free of charge from: mθ (2.13) − where m = (S + W )/ (2π), and the separation parameter S defines the pitch between subsequent spiral turns. Spiral is further defined by ΔR defining the resolution of the spiral, the length of the coupling waveguide (L), the rotation about center (θ(x,y)), and EC = 1 or 0 corresponding to the waveguide coupling segment without and with semi-circular endcaps. Fermat’s spiral spiral delay line illustrated in Figure 2.9.5b is represented by ⎧ ⎪ √a2θ (2.14) r(θ) = ⎨ ⎪ ⎩ √a2θ (2.15) − x y W Nturns S ΔR L θ(x,y) EC spiralDelayLineArch x y W Nturns a ΔR L θ(x,y) EC spiralDelayLineFermat http://dx.doi.org/10.6028/NIST.HB.160 L L W W (a) (b) Figure 2.132: Spiral delay lines for the (a) Archimedes spiral constructor spiralDe layLineArch and (b) Fermat spiral constructor spiralDelayLineFermat. Central dot represents the coordinate defined by (x,y). IMPORTANT NOTE: The above interdigitated spirals are created and fractured along the y axis. On the one hand, this action eliminates any possibility of exceeding maximum− number of allowed points per GDS shape. On the opposite NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 146 of 488 ), spiral 0) defining x,y spiralDelay page 147 of 488 ( ≥ T S L spiralDelayLineArchV2 is an integer ( ) between subsequent turns, turns, subsequent between ) T S S EC ) ) (x,y (x,y T L θ , separation ( separation ), S T S turns N ( T constructor. constructor. Parameter SP , and the number of skipped turns before spiral rendering rendering spiral before turns skipped of number the and ), T P ( turns W N LineArchV2 the number of skipped turns before rendering of the spiral initiates. of the spiral initiates. rendering the number of skipped turns before Archimedes interdigitated spiral delay line constructed by constructed line delay spiral interdigitated Archimedes . In this case, points per spiral turn are controlled, hence for spirals for hence controlled, are turn spiral per points ). case, this In T S ( 2.133: The following is an interdigitated Archimedes The spiral Archimedes line is following delay that an allevi interdigitated x y W NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure points per turn per points initiates containing many turns, the resolution of the outermost ring will be coarser rings. than the internal than ones shown much faster This spiral is generated 2.132. in Figure amounts of RAM and takes a considerable amount of time for spirals of many of spirals for time of amount considerable a takes and RAM of amounts collection points. large turns defined by a end of the spectrum, this action is computation intensive, consuming large ates ates some of the computational strains of the previous version. The delay in 2.133 line Figure is illustrated by characterized a point center width, the number of turns of number the width, This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 L e W W spi ), x,y ( page 148 of 488 , number of e W spiralDelayLine- (b) value defining resolu defining value R Δ spiralDelayLineArchInv spiralDelayLineFermatInv EC EC W ) ) , exposure sleeve width L (x,y (x,y W Line e and (b) Fermat spiral constructor and (b) Fermat W L θ L θ R R Delay ) between turns, and the and turns, between ) Δ Δ S S a ), slot width . Central dot represents the coordinate defined by x,y are the corresponding slot and exposure sleeve widths. slot and exposure the corresponding are ( Spiral e turns turns (a) N N e e FermatInv ralDelayLineArchInv and W Inverse spiral delay Inverse lines spiral the for delay (a) spiral Archimedes constructor ), separation ( separation ), W W Inverse turns W W N 2.134: y y 2.9.6 x x W NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure Inverse spiral delay line objects are characterized by either uniform (Archimedes) (Archimedes) uniform either by characterized are objects line delay spiral Inverse spacing between subsequent turns. Section 2.9.5 and (Fermat’s) converging the construction of the shows two details spirals. for defined These spirals are by the point center ( turns of the spiral. tion rendering This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ), x,y ( L 0) defining ≥ spiralDelay page 149 of 488 e T ), separation W S turns N ( is an integer ( is an integer spiralDelayLineArchV2Inv T ), and the number of skipped S T P ( EC ) ) ). turn spiral per points case, this In axis. As mentioned in the previous T (x,y − (x,y S y ( L θ T S T S T constructor. Parameter constructor. SP The above interdigitated spirals (Figures 2.134- 2.135) turns N e NOTE: LineArchV2Inv the number of skipped turns before rendering of the spiral initiates. of the spiral initiates. rendering the number of skipped turns before Archimedes interdigitated spiral delay line constructed by constructed line delay spiral interdigitated Archimedes W W 2.135: between subsequent turns, points per turn ) x y W S are are created and fractured along the NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox IMPORTANT maximum number any of section, possibility fracturing of eliminates exceeding the fracturing is computationally allowed points per GDS shape. Unfortunately, defined turns many of spirals for RAM of amounts large consuming intensive, collection points. by a large Figure spiral width, exposure sleeve width, the number of turns initiates rendering spiral before turns the of resolution the turns, many containing spirals for hence controlled, are rings. be coarser than the internal ring will outermost The delay line illustrated in Figure 2.135 is characterized by a center point center a by characterized is 2.135 Figure in illustrated line delay The The following is another version of the inverted Archimedes spiral delay line. is The another version following spiral of delay the Archimedes inverted ( This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 parameter parameter grating> page 150 of 488 lines N lines N and arrayed (instanti and arrayed L itch P constructor. constructor. W L W itch P y x Example of the grating singleRectangleStructName ame ) ,y (x 2.136: Figure Grating Gratings 2.9.7.1 2.9.7 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ), the in L G page 151 of 488 ( apodizedGrating> ), and grating with the lower the with ) ) L CC 2 (x,y G d ( θ (+ 5 constructor. constructor. d to to ) 4 L 2 d G H − L 3 ( 2 G d + 2 d 1 d ) ), duty cycle ff cuto L ,y 4 H G p (x ( 3 p 2 p L 2 G 1 ). − p Grating Example of the apodizedGrating CC . from extends grating The i d d 2.137: H and L ), grating line height i L Apodized p Figure ΔG ΔG ( L G y 2.9.7.2 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 construc page 152 of 488 gratingCoupler> from center to the mid the to center from gratingCoupler of the section, arc start ) r ) ( elements p ( for each of the arc sections arc the of each for N s e ) θ θ p sides N ( sides , distance distance ), N and pitch W ) x,y ( W e ( θ ). r s θ elements ) p Coupler , number of sides of number ), ,y e θ (x ( W r Grating Example illustrating various parameters of the of parameters various illustrating Example tor. y 2.138: and end angles end and 2.9.7.3 ) This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2.9.7.4 Grating Couplers With Waveguides The following constructors generate grating couplers with integrated waveg uides within the x y plane using − � 2 2 qλ = nef f x + y xnc cosθc (2.16) ◦ − This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: where the focal point is located at the origin (x,y) with x along the waveguide axis, q is an integer for each grating line, θc is the grating angle span, nc and nef f are the respective cladding and effective refractive index values, and λ is the wavelength. The following are the constructors for the waveguide (GDS◦ Layer Lwg ) with an integrated grating coupler (GDS Layer Lg ) g = g ratio (2.17) w p ∗ Ng defines the number of generated grating lines with the maximum number grating lines within R given by nef f R Nmax = ceil (2.18) λ ◦ The outer and inner radius of each ring is defined by qλ rq(out) = ◦ (2.19) n n cos α cosθ ef f − c i r = r (g ratio) = r g (2.20) q(in) q(out) − p ∗ q(out) − w where λ θ = arccos nef f ◦ (2.21) − gp and αi is the angular range from θx to θc. Parameter (x,y,w,L,H,s,λ ,R,gp) dimensions are expressed in micrometers.− ◦ NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 153 of 488 = 0. c c 2 2 c c θ θ EC 2 2 θ θ − − page 154 of 488 p p g g w w R R g g c c θ θ ) ) ,y ,y (x (x ) (a) (b L L Grating couplers (a) waveguide with sleeve and (b) waveguide with waveguide (b) and sleeve with waveguide (a) couplers Grating 2.139: w s w H H Figure v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 c c 2 2 c c θ θ 2 2 θ θ − − page 155 of 488 p p g g w w R R g g c c θ θ ) ) ,y ,y (x (x ) (a) (b L L = 1. Grating couplers with endcaps. Grating with sleeve and (b) waveg (a) waveguide uide with EC 2.140: w s w H H NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox Figure This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 156 of 488 in the corre phC> phCV> hex> hexV> y N δ δ and defines the number x sides sides N Arrays sides N N N y y y y N N N N r r x x x x between the two arrays. arrays. Parameter two the between ) N N N N δ ( ) δ Hexagonal p p p p , parameter (a) (b x x x x hex r r r r p p and x x ), number of elements p ), resulting structures are circles with number of circles are structures ), resulting and y y y y x ( x x x x phC hexV ) ) Crystals (x,y (x,y ), pitch and r represents the name for the structure (cell) for the circular the circular for (cell) the the structure name for represents ( directions, and spacing and directions, y phCV (a) Photonic crystal and (b) hexagonal array examples illustrating various illustrating examples array hexagonal (b) and crystal Photonic (a) parameters. constructor and Photonic x 2.141: , circle ), radius circle Within constructors 2.9.8 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2.9.9 Disc-Ring Architectures 2.9.9.1 Disc-Ring - Bezier Curves, Arcs and Endcaps The following sections illustrate coupled waveguides to disc and ring structures. The coupling region is defined by an arc section that symmetrically interacts with the disc/ring structure. The waveguide region leading away from the coupling region is defined by either a Bezier or an arc segment. This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: 1 P1 L 1 C1 H C2 P2 2 θ θ (x,y) (x,y) (a) (b) Figure 2.142: Schematic illustration highlighting the waveguide coupling region con structed using (a) Bezier and (b) arc segments. Figure 2.142a illustration has coupling region (labeled as 1) defined by an arc. The continuing segment ending at a distance L is defined by a Bezier curve consisting of start and end points (P1 and P2) and their corresponding control points C1 and C2. Control points are defined as, R C = P + cos(φ) (2.22a) 1x 1x 4 ∗ R C = P sin(φ) (2.22b) 1y 1x −4 ∗ L C = P (2.22c) 2x 2x − 2 C2y = P2y (2.22d) where R = √H2 + L2, and φ = 90 θ. − Figure 2.142b shows a coupling region defined by two arc segments. For this segment, the straight waveguide portion of length L is omitted. In both cases, the drawn structures are mirrored around the y axis. − NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 157 of 488 page 158 of 488 (b) (a) = 1. structure. the end point of the waveguide denotes circle The red Illustrations showing semicircular encaps on the right hand side of (a) a (a) side of right hand the encaps on showing semicircular Illustrations waveguide. positive inverse and inverse an Endcaps (b) and waveguide parameter when waveguide the of sides right and left both on included are EC width. waveguide radius of the equals half of the endcap Semicircular 2.143: Figure 2.143 shows shows waveguide structures with semicircular endcaps. with semicircular structures 2.143 shows shows waveguide Figure NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ v2016.09.01 • http://www.nist.gov/cnst/ NIST • CNST Nanolithography Toolbox stressed stressed thin film underlayers are patterned using thick resists. The corner field, thereby stress the end alleviates termination waveguide the at rounding mitigating resist and thin film cracking during subsequent reactive ion etch steps. processing Figure The structures are encountered in subsequent sections and are useful when useful are and sections subsequent in encountered are structures The This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 and is an ) L ( and EC controls controls if i page 159 of 488 r , number of number ), EC ) x,y W g r ( ,y L (b) W (x ) above a disc and ring discInfinite> ringInfinite> ∞ = , waveguide length ), waveguide g ( and the ring is characterized characterized is ring the and wg ) R d r ( ). Boolean parameter r W ( d r constructors. constructors. Infinite N gN L g W L EC W EC ) for waveguides without and with endcaps, respectively. and with endcaps, respectively. without waveguides for W g and ring width ,y r L i (a) r (x = 1 W d i Disc-Ring of the (a) discInfinite various parameters Examples illustrating (b) ringInfinite ), gap between the object and shape N and EC ( ). radius a by defined is object Disc = 0 W 2.144: ( EC 2.9.9.2 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 Infinite disc and ring structures with an additional coupling waveguide. L1 L1 W1 W1 g1 g1 Wr rd ri (x,y) (x,y) g2 g2 W2 W2 L2 L2 (a) (b) Figure 2.145: Examples illustrating various parameters of the (a) discInfDS and (b) ringInfDS constructors. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 160 of 488 ). r W and ( i page 161 of 488 r is formed is by formed , waveguide ), waveguide e L ( ) W W W g r ,y L (b) ringInfiniteInv> discInfiniteInv> W (x and ring width ) ), number of segments i r . The overall shapes are ( e EC EC x,y ( W e e ) above a disc and ring objects. ∞ for waveguides without and with and without waveguides for = , waveguide ), length waveguide ). Disc object is defined by a radius = 1 e g wg ( R W ( EC Inverse and constructors. constructors. = 0 d r EC Infinite N gN L g W L W W W e controls controls if semicircular endcaps are incorporated in ) W W g ,y L r EC (a) (x W d i Disc-Ring of the (a) discInfiniteInv various parameters Examples illustrating (b) ringInfiniteInv and exposure sleeve width ) W 2.146: ( and the ring is characterized by an inner radius 2.9.9.3 ), gap between the object and shape ) This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 and i page 162 of 488 r 2 1 e 2 1 e 2 1 discInfInvDS> ringInfInvDS> ) g W W W W g r 2 1 ,y L L (b) W (x EC EC 2 2 e e W W 2 2 W W 2 2 L L 2 2 g g 1 1 e e W W 1 1 W W d constructors. constructors. r 1 1 2 1 L L e 2 1 e 2 1 ) g W W W W g 1 1 2 1 ,y L L (a) (x N g N g r Examples illustrating various parameters of the (a) discInfInvDS various parameters Examples illustrating (b) ringInfInvDS W d i 2.147: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2.9.9.4 Disc-Ring Infinite Inverse Positive Tone The structure is similar to the disc-ring waveguide structure defined in sec tion 2.9.9.2. Here, a waveguide of width W and either a ring of width Wr or disc of radius r r are formed by positive tone resist exposure of the respective d − e exposure sleeve regions We and re. The overall shapes are characterized by a straight waveguide (Rwg = ) above a disc and ring objects. Both objects are described by the center coordinate∞ (x,y), number of segments (N ), gap This publication is availablehttp://dx.doi.org/10.6028/NIST.HB.160 free of charge from: between the object and shape (g), waveguide length (L), waveguide width (W ) and exposure sleeve width (We). Disc object is defined by a radius (rd ) and the ring is characterized by a radius (ri ) and ring width (Wr ). L L We We W W g g re rd re Wr re ri (x,y) (x,y) (a) (b) Figure 2.148: Examples illustrating various parameters of the (a) discInfiniteInvPos and (b) ringInfiniteInvPos constructors. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 163 of 488 Infinite inverse positive disc and ring structures with an additional coupling waveguide. L1 L1 We1 We1 W1 W1 g1 g1 re rd re Wr re ri (x,y) (x,y) g2 g2 W2 W2 We2 We2 L2 L2 (a) (b) Figure 2.149: Examples illustrating various parameters of the (a) discInfInvPosDS and (b) ringInfInvPosDS constructors. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 164 of 488 ) ). r W Disc ( −R ), width discSym = wg N page 165 of 488 L L ( and width ) discSymmetric> ringSymmetric> i waveGuide r ( R ( , gap between the object between ), gap H H N ), number of sides d θ r r ( i θ θ ), ring radius ) ) r W g W g W d ) r ,y ,y ( constructors. constructors. (a) (b WLHECWLHEC Bezier (x (x wg wg )objects. Both objects described (disc/ring) by are ), disc radius, , number of segments ( of ), number Symmetric Ring H ( x,y ( −R N g θ N N g θ N = and (b) ringSymmetric for waveguides without and with endcaps, respectively. and with endcaps, respectively. without waveguides for r , waveguide opening angle ), waveguide g W ( = 1 ), height L Disc-Ring metric Example shapes illustrating various parameters the from (a) ( i d waveGuide R ( and EC 2.150: = 0 2.9.9.5 ), length This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 con 1 page 166 of 488 L discSymDS discSymDS> EC 2 L H 2 d W r 2 1 2 1 θ ) 2 g W W g 2 ,y L (x H g 1 L 1 W wg N θ 1 g Example shape illustrating various parameters from the from parameters various illustrating shape Example structor. N d 2.151: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 discSymPul 1 page 167 of 488 L L discSymPul> EC 2 2 1 H H H 2 L 2 2 1 2 1 2 1 θ θ ) W g W W g ,y 2 θ (x d 2 r g 1 H 1 L 1 W wg N 1 θ 1 g constructors. constructors. Example shape illustrating various parameters from the N d 2.152: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 con 1 page 168 of 488 L ringSymDS> ringSymDS EC 2 L 2 H W 2 2 1 r i θ 2 1 ) r g W W g W H g 2 ,y L (x 1 L 1 W wg N θ 1 g N r Example shape illustrating various parameters from the from various parameters Example shape illustrating structor. W i 2.153: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ringSymPul 2 1 page 169 of 488 L L ringSymPul> EC 2 H 2 2 H L H 2 W 2 1 2 1 r 2 2 1 θ θ ) g W W g W θ ,y 2 (x i r H g 1 L 1 W wg N 1 θ 1 g N constructor. constructor. Example shape illustrating various parameters from the r W i 2.154: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 W W discSym page 170 of 488 L L discSymmetricLC> ringSymmetricLC> H H d constructors. constructors. r LHEC r i ) ) r g W g ) c c ,y ,y L L (a) (b WLHECW (x (x wg wg N N c c . c and (b) ringSymmetricLC N gN L g L r W metricLC Example shapes illustrating various parameters the from (a) d i 2.155: The following disc-ring waveguide symmetric structures are defined by the are symmetric structures disc-ring waveguide The following This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 W 1 page 171 of 488 L discSymLCDS discSymLCDS> EC 2 L H 2 W d r 2 2 1 2 ) g W g c 2 ,y L L (x H g 1 L 1 W wg N c L 1 g constructor. constructor. Example shape illustrating various parameters from the from parameters various illustrating shape Example N d 2.156: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 2 W W 2 1 page 172 of 488 L L discSymLCPul> discSymLCPul EC 2 H 2 2 1 L H H 2 W 2 c 2 1 ) L g g 2 1 c c ,y 2 L L (x g d 1 r H 1 L 1 W wg N 1 c L 1 g constructor. constructor. Example shape illustrating various parameters from the from parameters various illustrating shape Example N d 2.157: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 W 1 page 173 of 488 L ringSymLCDS> ringSymLCDS EC 2 L 2 W H 2 2 r i 2 1 ) r H g g W g W c 2 ,y L L 1 (x L 1 W wg N c L 1 g N r constructor. constructor. Example shape illustrating various parameters from the from parameters various illustrating shape Example W i 2.158: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 2 W W ringSymLCPul> 2 1 page 174 of 488 L L ringSymLCPul EC 2 H 2 L 2 2 1 W H H 2 c L r 2 ) 2 1 g g g W ,y 2 1 c c 1 (x L L i H r 1 L 1 W wg N 1 c L 1 g N constructor. constructor. Example shape illustrating various parameters from the from parameters various illustrating shape Example r W i 2.159: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ), ), d r W ( ( discSym page 175 of 488 ), width wg S S N L L ( ), disc radius, S L discSymmetricA> ringSymmetricA> ( EC EC for waveguides without and waveguides for ), gap between the object and S S = 1 N constructors. constructors. ), number of sides EC d r r θ i WL WL θ θ ( ) ) Arc r W g W g W ) ,y ,y and (a) (b (x (x wg wg = 0 EC ). r W Symmetric ), number of segments ( N gN θ g N θ N and (b) ringSymmetricA x,y r W and width ( ) Disc-Ring metricA Example shapes illustrating various parameters the from (a) , waveguide opening angle ), waveguide i r d i g ( 2.160: 2.9.9.6 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 176 of 488 discSymADS S L discSymADS> EC d r 2 1 2 θ 2 1 ) g W W g L 2 ,y L 2 (x W 2 g S L 1 W wg N θ 1 g constructor. constructor. Example shape illustrating various parameters from the N d 2.161: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 177 of 488 discSymAPul 2 1 S S L L discSymAPul> EC 2 S L 1 2 2 1 θ 1 θ 2 ) 2 W W g g ,y W (x 2 θ d r 2 g 1 S L 1 W wg N 1 θ 1 constructor. constructor. Example shape illustrating various parameters from the g N d r 2.162: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 178 of 488 ringSymADS S L ringSymADS> EC 2 L 2 1 r 2 i θ 2 1 ) r g W W g W W 2 ,y L 2 (x g S L 1 W wg N θ 1 g N constructor. constructor. Example shape illustrating various parameters from the r W i 2.163: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 179 of 488 ringSymAPul 2 1 S S L L ringSymAPul> EC 2 S L 1 2 2 1 r 2 θ 1 θ 2 ) W W g W g W ,y 2 (x i θ r 2 g S L W wg N 1 g θ constructor. constructor. Example shape illustrating various parameters from the N r W i r 2.164: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 W W discSym page 180 of 488 S S L L discSymmetricLCA> ringSymmetricLCA> EC EC constructors. constructors. S S r . W c d r WL WL i ) ) r g g ) c c ,y ,y L L (a) (b (x (x wg wg N N c c and (b) ringSymmetricLCA N gN L g L r W metricLCA Example shapes illustrating various parameters the from (a) d i 2.165: The following arc based, disc-ring waveguide symmetric structures are This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 W discSymL- page 181 of 488 S L discSymLCADS> EC 2 L 2 d r 2 W 2 1 ) g W g c 2 ,y 2 L L g (x S L 1 W wg N c L constructor. constructor. 1 g CADS Example shape illustrating various parameters from the (a) N d 2.166: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 1 W W discSymL- page 182 of 488 2 1 S S L L discSymLCAPul> EC 2 S L 2 d W r 1 2 ) 2 g g 2 1 c c c ,y L L L (x 2 g 1 S L 1 W wg N constructor. constructor. 1 c L 1 g CAPul Example shape illustrating various parameters from the (a) N d 2.167: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 W page 183 of 488 ringSymLCADS S L ringSymLCADS> EC 2 L 2 r W W 2 2 g i 2 1 ) r g W g c 2 ,y S L L L (x 1 W wg N c L 1 g N r constructor. constructor. Example shape illustrating various parameters from the from various parameters Example shape illustrating W i r 2.168: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 1 W W page 184 of 488 2 1 ringSymLCAPul S S L L ringSymLCAPul> EC 2 S L 2 W r 2 W c L i 1 2 ) r g g 2 2 1 c c ,y g L L (x 1 S L 1 W wg N 1 c L 1 g N constructor. constructor. Example shape illustrating various parameters from the Example from shape various illustrating parameters r W i 2.169: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 discSym page 185 of 488 is formed by formed is W L L . tone Using a negative discSymmetricInv> ringSymmetricInv> e W Bezier constructors. constructors. H H LHEC LHEC d e e r r θ θ ) ) Inverse i W W g W W g W e e ) r ,y ,y (a) (b (x (x WW WW wg wg Symmetric and (b) ringSymmetricInv N g θ N N g θ N r Disc-Ring metricInv Example shapes illustrating various parameters the from (a) W i d 2.170: 2.9.9.7 to a slotted waveguide. waveguide. a slotted to This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 discSymIn page 186 of 488 1 L discSymInvDS> EC 2 L 2 e W H 2 2 1 d e 2 1 e r θ 2 1 W ) g W W W g W 2 ,y 2 L (x H g 1 L 1 e W 1 W wg N constructor. constructor. θ 1 vDS Example shape illustrating various parameters from the (a) the from parameters various illustrating shape Example g N d 2.171: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 discSymIn page 187 of 488 discSymInvPul> EC 2 1 L 2 L H 2 L 2 e 2 W H 2 1 W H 2 2 1 2 1 2 1 e e θ 2 θ θ ) g W W g W W 2 ,y g (x 1 d r H 1 L 1 e W 1 W wg N constructor. constructor. 1 θ vPul Example shape illustrating various parameters from the (a) the from parameters various illustrating shape Example 1 g N d 2.172: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 page 188 of 488 ringSymInvDS ringSymInvDS> 1 L EC 2 L 2 e W 2 H W 2 1 2 r e 2 1 e θ 2 1 ) i W g W W W g W r 2 ,y H g L (x 1 L 1 e W 1 W wg N θ 1 g constructor. constructor. Example shape illustrating various parameters from the from parameters various illustrating shape Example N r W i 2.173: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ringSymInvPul> page 189 of 488 EC 2 H 2 1 L L 2 L 2 e W 2 2 H W 2 1 θ H 2 2 1 2 1 r 2 1 g e e 2 1 θ θ W g W W g 1 W W ) H i ,y r 1 (x L 1 e W 1 W wg N 1 θ 1 g Example shape illustrating various parameters from the ringSymInvPul from various parameters Example shape illustrating constructor. N r W i 2.174: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 The following disc-ring waveguide symmetric inverse structures are defined by the coupling length parameter Lc. W H L Lc We g rd (x,y) (a) W H L Lc We g Wr ri (x,y) (b) Figure 2.175: Example shapes illustrating various parameters from the (a) discSym metricInvLC and (b) ringSymmetricInvLC constructors. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 190 of 488 1 discSymIn W page 191 of 488 discSymInvLCDS> 1 L EC 2 L 2 e W 2 H W 2 1 d e 2 2 e r 2 1 ) g W W g W c 2 ,y L L H g (x 1 L 1 e W 1 W wg N constructor. constructor. c L 1 g vLCDS Example shape illustrating various parameters from the (a) the from parameters various illustrating shape Example N d 2.176: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 1 discSymIn W W page 192 of 488 discSymInvLCPul> EC 2 2 1 L L H 2 L 2 e W 2 2 W 1 H 2 H c 2 1 L e e ) 2 1 2 g g ,y 2 1 W W g c c (x L L 1 d H r 1 L 1 e W 1 W wg constructor. constructor. N 1 c L vLCPul Example shape illustrating various parameters from the (a) the from parameters various illustrating shape Example 1 g N d 2.177: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 W page 193 of 488 ringSymInvL- ringSymInvLCDS> EC 1 2 L L 2 e W 2 W 2 H 2 1 r e 2 e H g 2 1 ) i W g W W g W r c 1 2 ,y L L L (x 1 e W 1 W wg N c L 1 constructor. constructor. g N CDS Example shape illustrating various parameters from the r W i 2.178: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 1 ringSymInvLCPul> W W page 194 of 488 ringSymInvL- EC 2 H 2 1 2 L L L 2 e W 2 W 2 c 2 L H H 2 g 2 1 r e e ) 2 1 1 W g g ,y 2 W W c c H L (x L i 1 r L 1 e W 1 W wg N 1 c L constructor. constructor. 1 g CPul Example shape illustrating various parameters from the N r W i 2.179: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 e e W W W W discSym page 195 of 488 is formed by S S W L L . tone Using a negative e W discSymmetricInvA> ringSymmetricInvA> Arc constructors. constructors. EC EC S S L L d r r Inverse i θ θ e e ) ) r g g W ) ,y ,y (a) (b (x (x WW WW wg wg Symmetric and (b) ringSymmetricInvA N g θN N g θ N r Disc-Ring metricInvA Example shapes illustrating various parameters the from (a) W d i 2.180: 2.9.9.8 to a slotted waveguide. waveguide. a slotted to This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 1 e W W page 196 of 488 discSymInvADS S L discSymInvADS> EC 2 L 2 e W 2 d 2 r e 2 W θ 2 1 ) g W W g 2 2 ,y g L (x S L 1 e W 1 W wg N θ 1 g constructor. constructor. Example shape illustrating various parameters from the from parameters various illustrating shape Example N d 2.181: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 1 2 e 1 e W W W W page 197 of 488 discSymInvAPul 2 1 S S L L discSymInvAPul> EC 2 S L 2 e W 2 W 1 2 2 ) θ 1 θ 2 θ g g ,y 2 (x g 1 d S r L 1 e W 1 W wg N 1 θ constructor. constructor. Example shape illustrating various parameters from the from parameters various illustrating shape Example 1 g N d 2.182: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 e W W ringSymIn page 198 of 488 S L ringSymInvADS> EC 2 L 2 e W 2 W 2 2 e 2 r i g θ 2 1 ) r g W W g W 2 ,y S L L (x e W 1 W wg N θ constructor. constructor. 1 g N vADS Example shapes illustrating various parameters from the r W i 2.183: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 1 2 e 1 e W W W W page 199 of 488 ringSymInvA- 2 1 ringSymInvAPul> S S L L EC 2 S L 2 e W 2 W 2 θ 1 2 r 2 ) θ 1 θ 2 g g W g ,y 1 S (x i L r 1 e W 1 W wg N 1 θ constructor. constructor. 1 g Pul Example shapes illustrating various parameters from the from parameters various illustrating shapes Example N r W i 2.184: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 e e W W W W discSym page 200 of 488 S S L L constructors. constructors. discSymmetricInvLCA> ringSymmetricInvLCA> . c EC EC r S S L L W d r e e i ) ) r g g ) c c ,y ,y L L (a) (b (x (x WW WW wg wg N N and (b) ringSymmetricInvLCA c c N g L N g L r metricInvLCA Example shapes illustrating various parameters the from (a) W d i 2.185: The following arc based, disc-ring waveguide symmetric inverse structures symmetric inverse structures based, disc-ring waveguide arc The following This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 1 e W W page 201 of 488 discSymInvL- S L discSymInvLCADS> EC 2 L 2 e W d 2 r 2 e 2 2 1 ) W g W W g c 2 ,y 2 L L g (x S L 1 e W 1 W wg constructor. constructor. N c L 1 CADS Example shape illustrating various parameters from the g N d r 2.186: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 1 2 e 1 e W W W W page 202 of 488 discSymInvL- 2 1 S S L L discSymInvLCAPul> EC 2 S L 2 e W 2 W d r 2 c 1 2 ) g L g 2 1 c c ,y 2 L L g (x 1 S L 1 e W 1 W wg constructor. constructor. N c L CAPul Example shape illustrating various parameters from the 1 g N d 2.187: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 1 e W W page 203 of 488 ringSymInvL- S L ringSymInvLCADS> EC 2 L 2 e W r 2 W W 2 e 2 2 i 2 1 ) r g g W W g c 2 ,y S L L L (x 1 e W 1 W wg N c constructor. constructor. L 1 g CADS Example shape illustrating various parameters from the N r W i 2.188: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 1 2 e 1 e W W W W page 204 of 488 ringSymInvLCAPul> ringSymInvLCA- 2 1 S S L L EC 2 S L 2 e W 2 W 2 r c L W 2 i g 1 2 r g g 2 1 1 c c ) S L L ,y L 1 (x e W 1 W wg N 1 c L constructor. constructor. 1 g Pul Example shape illustrating various parameters from the from parameters various illustrating shape Example N r W i 2.189: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 discSym Bezier page 205 of 488 away from a from away g Tone L L constructors. constructors. discSymmetricInvPos> ringSymmetricInvPos> Positive H H i r d e e r θ θ LHEC LHEC ) ) Inverse W g W W g W ) e e ,y ,y (a) (b (x (x e r WW WW r e r W wg wg e r and (b) ringSymmetricInvPos Symmetric . N g θ N N g θ N e e e r r and r r Disc-Ring metricInvPos Example shapes illustrating various parameters the from (a) e W i d 2.190: 2.9.9.9 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 Disc symmetric inverse positive structure with an additional coupling waveg uide. θ H We1 L1 W1 g1 re rd (x,y) g2 W2 We2 L2 Figure 2.191: Example shape illustrating various parameters from the discSymIn vPosDS constructor. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 206 of 488 2 1 e e W W discSymIn page 207 of 488 discSymInvPosPul> 1 2 L L EC 2 H 2 L 2 e 2 H W H 2 W 1 d 2 1 r 2 2 θ 2 θ θ g W g ) W 2 ,y g (x 1 H 1 L e r 1 e W 1 W constructor. constructor. wg N 1 θ 1 vPosPul Example shape illustrating various parameters from the g N e r 2.192: d This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 Ring symmetric inverse positive structure with an additional coupling waveg uide. θ H We1 L1 W1 g1 re Wr re ri (x,y) g2 W2 We2 L2 Figure 2.193: Example shape illustrating various parameters from the ringSymIn vPosDS constructor. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 208 of 488 2 1 e e W W ringSymIn page 209 of 488 ringSymInvPosPul> 2 1 EC L L 2 H 2 L 2 e W 2 2 H H W 2 i θ r 1 2 1 2 2 θ θ 2 1 ) g g W g W 1 ,y H (x 1 L e r 1 e r W W 1 e r W wg constructor. constructor. N 1 θ 1 g vPosPul Example shape illustrating various parameters from the N e r r W 2.194: i This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 discSym e e W W W W page 210 of 488 L L constructors. constructors. . c discSymmetricInvPosLC> ringSymmetricInvPosLC> H H i r d LHEC LHEC r ) ) g g ) e e c c ,y ,y L L (a) (b (x (x e WW WW r r e r wg wg W and (b) ringSymmetricInvPosLC N N e r c c N g L N g L e e r r r metricInvPosLC Example shapes illustrating various parameters the from (a) W d i 2.195: The following disc-ring symmetric waveguide inverse positive tone struc This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 1 e discSymIn W W page 211 of 488 discSymInvPosLCDS> 1 L EC 2 L 2 e W H 2 W 2 d 2 e 2 r 2 ) g W W g c 2 ,y L H g L (x 1 L 1 e e r W 1 W constructor. constructor. wg N c L 1 g vPosLCDS Example shape illustrating various parameters from the N e r d 2.196: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 2 e W W 1 1 discSymIn e page 212 of 488 W W discSymInvPosLCPul> EC 1 2 2 L H L 2 L 2 e W 2 2 1 W H H 2 c L d 2 r 2 2 g g g ) c 1 c 1 L ,y L H (x 1 L 1 e e r W 1 W constructor. constructor. wg N 1 c L 1 g vPosLCPul Example shape illustrating various parameters from the N e r d 2.197: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 1 e ringSymIn W W page 213 of 488 ringSymInvPosLCDS> 1 EC L 2 L 2 e W 2 W H 2 i r 2 2 e H g 2 1 ) g W W g 1 c 2 ,y L L L (x 1 e e W r r 1 W W e r wg N constructor. constructor. c L 1 g N e vPosLCDS Example shape illustrating various parameters from the r r W i 2.198: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 2 e W W 1 1 ringSymIn e ringSymInvPosLCPul> page 214 of 488 W W EC 2 H 2 1 L 2 L L 2 e W 2 W 2 2 c H 1 L H 2 i g r 1 2 1 ) H g g 2 1 c c ,y 1 L L L (x 1 e e r W r 1 W W e r wg constructor. constructor. N 1 c L 1 g N vPosLCPul Example shape illustrating various parameters from the e r r W i 2.199: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 e e W W W W Arc discSym page 215 of 488 S S Tone L L constructors. constructors. Positive discSymmetricInvPosA> ringSymmetricInvPosA> EC EC i r . S S d Inverse e r θ θ L L ) ) g g ) ,y ,y e e (a) (b (x (x and r e e r WW WW r e r W wg wg e Symmetric and (b) ringSymmetricInvPosA r N g θ N N g θ N e e r r Disc-Ring r metricInvPosA Example shapes illustrating various parameters the from (a) W away from a disc or using from a exposure a ring positive structure resist away g i d 2.200: 2.9.9.10 This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 1 e W W discSymIn page 216 of 488 S L discSymInvPosADS> EC 2 L constructors. constructors. 2 e W 2 2 d 2 e r θ 2 1 ) W g W W g 2 ,y 2 L g (x S L 1 e e r W 1 W and (b) ringSymInvPosADS wg N θ 1 g vPosADS Example shapes illustrating various parameters from the (a) from Example various shapes illustrating parameters N e r d 2.201: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 1 2 e 1 e W W W W page 217 of 488 2 1 discSymInvPos- S S L L discSymInvPosAPul> EC 2 S L 2 e W 1 d 2 2 r θ 2 1 θ W g g ) 2 ,y θ (x 2 g 1 S e L r 1 e W 1 W wg N constructor. constructor. 1 θ 1 APul Example shape illustrating various parameters from the Example from shape various illustrating parameters g N e r 2.202: d This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 1 e W W ringSymIn page 218 of 488 S L ringSymInvPosADS> EC 2 L 2 e W i 2 r 2 2 e θ W 2 1 ) g W W g 2 2 ,y g L (x S L e r e r W W e W r wg constructor. constructor. g θ N N e vPosADS Example shape illustrating various parameters from the r r W i 2.203: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 1 2 e 1 e W W W W page 219 of 488 2 1 ringSymInvPos- S S L L ringSymInvPosAPul> EC 2 S L 2 e W 2 i W r 1 2 2 θ 2 1 θ ) θ g g ,y 2 g (x 1 S e L r 1 r e W W e 1 r W wg N 1 θ constructor. constructor. 1 g N APul Example shape illustrating various parameters from the from Example shape various parameters illustrating e r r W 2.204: i This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 e e W W W W discSym page 220 of 488 . c S S L L constructors. constructors. discSymmetricInvPosLCA> ringSymmetricInvPosLCA> EC EC i r S S d L L r ) ) g g ) c c e e ,y ,y L L (a) (b (x (x e WW WW r r e r wg wg and (b) ringSymmetricInvPosLCA W N N e r c c N g L N g L e e r r r metricInvPosLCA Example shapes illustrating various parameters the from (a) W d i 2.205: The following arc based, disc-ring waveguide symmetric inverse positive This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 Disc symmetric inverse positive arc structure with an additional coupling waveg uide. W1 We1 Lc LS g1 re rd (x,y) g2 W2 We2 L2 Figure 2.206: Example shape illustrating various parameters from the discSymIn vPosLCADS constructor. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 221 of 488 2 1 2 e 1 e W W W W discSymIn page 222 of 488 2 1 S S L L discSymInvPosLCAPul> EC 2 S L 2 e W 2 d r W 2 1 g g 2 ) 2 1 c c c ,y L L L 2 (x g 1 S e L r 1 e W 1 constructor. constructor. W wg N 1 c L 1 vPosLCAPul Example shape illustrating various parameters from the g N e r 2.207: d This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 Disc symmetric inverse positive arc structure with an additional coupling waveg uide. W1 We1 Lc LS g1 re Wr re ri (x,y) g2 W2 We2 L2 Figure 2.208: Example shape illustrating various parameters from the ringSymIn vPosLCADS constructor. NIST • CNST Nanolithography Toolbox v2016.09.01 • http://www.nist.gov/cnst/ page 223 of 488 2 1 2 e 1 e W W W W ringSymIn page 224 of 488 2 1 S S L L ringSymInvPosLCAPul> EC 2 S L 2 e W 2 W i r 2 c 2 1 L ) g g 2 2 1 c ,y c g L L (x 1 S e L r 1 e r W W 1 e r W constructor. constructor. wg N 1 c L 1 g N vPosLCAPul Example shape illustrating various parameters from the e r r W 2.209: i This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ). > r and W ( waveGuide page 225 of 488 R ( discPulley ), gap between N discPulley> ringPulley> ( ), number of sides θ and ring width ( ) i r ( d r i r r ) ) ). radius a by defined is object Disc W g W W g ) ,y ,y WLHECWLHEC H (a) (b ( (x (x , number of segments ), number of segments )objects. de are (disc/ring) objects Both θ θ Bezier wg wg x,y ( Ring H H −R , waveguide opening angle ), waveguide > and height and g Pulley ) ( constructors. constructors. L ( N g θ N N g θ N for waveguides without and with endcaps, respectively. and with endcaps, respectively. without waveguides for waveGuide r R ( , length ), W L L = 1 Disc-Ring W Example shapes illustrating various parameters of the (a) the of parameters various illustrating shapes Example (b) ringPulley ( i d and ring and and EC 2.210: ) , width ), and the ring is characterized by an inner radius = 0 2.9.9.11 Disc ) wg This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 con page 226 of 488 discPulDS discPulDS> EC 2 L 2 d r W 2 1 2 1 2 ) g W W g 2 ,y L (x H g θ 1 L 1 H W wg N θ 1 g 1 L Example shape illustrating various parameters of the structor. N d 2.211: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 con page 227 of 488 discPulPul> 2 discPulPul L EC 2 H 2 L 2 H 2 W 2 θ 2 2 1 2 1 θ d g W W g r ) 2 g ,y (x 1 1 H θ 1 1 L H 1 W wg N 1 θ 1 1 L g Example shape illustrating various parameters of the structor. N d 2.212: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 con page 228 of 488 ringPulDS> ringPulDS EC 2 L 2 W 2 i r 2 1 r 2 1 ) H g g W W g W 2 ,y L 1 (x L θ 1 W H wg N θ 1 g N 1 L r Example shape illustrating various parameters of the structor. W i 2.213: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 con ringPulPul> page 229 of 488 2 ringPulPul EC L 2 H 2 L 2 2 W H 2 θ 2 2 2 1 r g 2 1 θ i g W W g W r ) 1 ,y H 1 (x θ 1 L 1 1 W H wg N 1 θ 1 g 1 L N Example shape illustrating various parameters of the structor. r W i 2.214: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 W W page 230 of 488 discPulleyLC discPulleyLC> ringPulleyLC> d r i r r ) ) g W g ) c c WLHECWLHEC ,y ,y L L (a) (b (x (x wg wg N N constructors. constructors. c c H H . c N gN L g L r W L L and (b) ringPulleyLC Example shapes illustrating various parameters of the (a) the of parameters various illustrating shapes Example d i 2.215: The following disc-ring waveguide pulley structures are defined by the This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 W con page 231 of 488 discPulLCDS discPulLCDS> EC 2 L 2 d W r 2 2 2 ) g W g c 2 ,y L L (x H g 1 L 1 H W wg N c L 1 g 1 L Example shape illustrating various parameters of the of various parameters illustrating shape Example structor. N d 2.216: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 W con page 232 of 488 2 L discPulLCPul discPulLCPul> EC 2 H 2 2 H L 2 ) W ,y 2 2 g g (x c 2 1 c c L L L 2 g d 1 r H 1 H L 1 W wg N 1 c L 1 L 1 g Example shape illustrating various parameters of the Example various shape parameters illustrating structor. 2 N W d 2.217: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 W con page 233 of 488 ringPulLCDS> ringPulLCDS EC 2 L 2 W 2 i r 2 r 2 H g ) g W g W c 2 ,y 1 L L (x L 1 W H wg N c L 1 g N L r Example shape illustrating various parameters of the of parameters various illustrating shape Example structor. W i 2.218: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 1 W con page 234 of 488 2 ringPulLCPul> L ringPulLCPul EC 2 H 2 L 2 2 H W i 2 c r r L 2 g g W 2 1 2 c c ) L L ,y H g (x 1 L 1 H W wg N 1 c L 1 g 1 L N Example shape illustrating various parameters of the various Example parameters shape illustrating structor. r 2 W W i 2.219: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 ), S S g L L ( discPulleyA page 235 of 488 ), and length and ring width ring and W ) ( i r ( discPulleyA> ringPulleyA> ), width EC EC wg ). a by defined is object Disc N S ( S S L d ( r i r r ) ) W g W W g ) ,y ,y WL WL (a) (b (x (x θ θ Arc wg wg constructors. constructors. ), gap between the object and waveguide N ), number of sides ( θ Pulley ( for waveguides without and with endcaps, respectively. respectively. endcaps, with and without waveguides for N g θ N N g θ N = 1 r EC W Disc-Ring and (b) ringPulleyA Example shapes illustrating various parameters of the (a) and i d and the ring is characterized by an inner radius inner an by characterized is ring the and ) = 0 d r ( 2.220: EC ), number of segments ). 2.9.9.12 r This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 S L con page 236 of 488 discPulADS discPulADS> EC 2 L d r 2 2 1 2 1 ) W g W W g 2 ,y L 2 (x g θ S L 1 W wg N θ 1 g Example shape illustrating various parameters of the of various parameters illustrating Example shape structor. N d 2.221: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 1 S S L L con page 237 of 488 discPulAPul discPulAPul> EC 2 S L 2 2 θ 2 1 W 2 1 d g W W g r ) 2 ,y θ (x 2 g 1 θ 1 S L 1 W wg N 1 θ 1 g Example shape illustrating various parameters of the of parameters various illustrating shape Example structor. N d 2.222: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 S L con page 238 of 488 ringPulADS ringPulADS> EC 2 L 2 W i r 2 1 r 2 2 1 ) g g W W g W 2 ,y L S (x L θ 1 W wg N θ 1 g N r Example shape various of illustrating parameters the structor. W i 2.223: This publication is available free of charge from: http://dx.doi.org/10.6028/NIST.HB.160 2 1 S S L L con page 239 of 488 ringPulAPul ringPulAPul> EC 2 S L 2 W 2 θ 2 2 1 r θ 2 1 i g W W g W r ) 2 g ,y (x 1 S 1 L θ 1 W wg N 1 θ 1 g N Example shape illustrating various parameters of the of parameters various illustrating shape Example structor. r W i 2.224: