• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC Design
  3. layer map file for GDS transfer to virtuoso

Stats

  • Locked Locked
  • Replies 9
  • Subscribers 125
  • Views 29807
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

layer map file for GDS transfer to virtuoso

oAwad
oAwad over 8 years ago

Hello all,

I have a GDS layout previously designed in SoC encounter, I want to import it in Virtuoso but I don't have a layer map provided with PDK (I'm using Nangate Open Cell Library 45nm). I now have two files; a technology file provided with PDK and a streamOut.map file generated from GDS export in Encounter.

Here is the technology file:

---------------

; Technology File NCSU FreePDK 45nm
;********************************
; LAYER DEFINITION
;********************************
layerDefinitions(
 techLayers(
 ;( LayerName                 Layer#     Abbreviation )
 ;( ---------                 ------     ------------ )
  ( IP                        63         IP )
  ( nwell                     3          nwell )
  ( pwell                     2          pwell )
  ( nimplant                  4          nimplant )
  ( pimplant                  5          pimplant )
  ( active                    1          active )
  ( vtg                       6          vtg )
  ( vth                       7          vth )
  ( thkox                     8          thkox )
  ( poly                      9          poly )
  ( contact                   10         contact )
  ( metal1                    11         metal1 )
  ( via1                      12         via1 )
  ( metal2                    13         metal2 )
  ( via2                      14         via2 )
  ( metal3                    15         metal3 )
  ( via3                      16         via3 )
  ( metal4                    17         metal4 )
  ( via4                      18         via4 )
  ( metal5                    19         metal5 )
  ( via5                      20         via5 )
  ( metal6                    21         metal6 )
  ( via6                      22         via6 )
  ( metal7                    23         metal7 )
  ( via7                      24         via7 )
  ( metal8                    25         metal8 )
  ( via8                      26         via8 )
  ( metal9                    27         metal9 )
  ( via9                      28         via9 )
  ( metal10                   29         metal10 )
  ( DRC                       400        DRC )
 ) ;techLayers
 techLayerPurposePriorities(
 ;layers are ordered from lowest to highest priority
 ;( LayerName                 Purpose    )
 ;( ---------                 -------    )
  ( IP                        drawing )
  ( nwell                     drawing )
  ( pwell                     drawing )
  ( nimplant                  drawing )
  ( pimplant                  drawing )
  ( active                    drawing )
  ( vtg                       drawing )
  ( vth                       drawing )
  ( thkox                     drawing )
  ( poly                      drawing )
  ( contact                   drawing )
  ( metal1                    drawing )
  ( via1                      drawing )
  ( metal2                    drawing )
  ( via2                      drawing )
  ( metal3                    drawing )
  ( via3                      drawing )
  ( metal4                    drawing )
  ( via4                      drawing )
  ( metal5                    drawing )
  ( via5                      drawing )
  ( metal6                    drawing )
  ( via6                      drawing )
  ( metal7                    drawing )
  ( via7                      drawing )
  ( metal8                    drawing )
  ( via8                      drawing )
  ( metal9                    drawing )
  ( via9                      drawing )
  ( metal10                   drawing )
  ( DRC                       drawing )
 ) ;techLayerPurposePriorities
 techDisplays(
 ;( LayerName    Purpose      Packet          Vis Sel Con2ChgLy DrgEnbl Valid )
 ;( ---------    -------      ------          --- --- --------- ------- ----- )
  ( IP           drawing      PacketName_0     t t t t t )
  ( nwell        drawing      PacketName_2     t t t t t )
  ( pwell        drawing      PacketName_3     t t t t t )
  ( nimplant     drawing      PacketName_4     t t t t t )
  ( pimplant     drawing      PacketName_5     t t t t t )
  ( active       drawing      PacketName_6     t t t t t )
  ( vtg          drawing      PacketName_11    t t t t t )
  ( vth          drawing      PacketName_12    t t t t t )
  ( thkox        drawing      PacketName_13    t t t t t )
  ( poly         drawing      PacketName_14    t t t t t )
  ( contact      drawing      PacketName_19    t t t t t )
  ( metal1       drawing      PacketName_26    t t t t t )
  ( via1         drawing      PacketName_30    t t t t t )
  ( metal2       drawing      PacketName_31    t t t t t )
  ( via2         drawing      PacketName_35    t t t t t )
  ( metal3       drawing      PacketName_36    t t t t t )
  ( via3         drawing      PacketName_40    t t t t t )
  ( metal4       drawing      PacketName_41    t t t t t )
  ( via4         drawing      PacketName_45    t t t t t )
  ( metal5       drawing      PacketName_46    t t t t t )
  ( via5         drawing      PacketName_50    t t t t t )
  ( metal6       drawing      PacketName_51    t t t t t )
  ( via6         drawing      PacketName_55    t t t t t )
  ( metal7       drawing      PacketName_56    t t t t t )
  ( via7         drawing      PacketName_60    t t t t t )
  ( metal8       drawing      PacketName_61    t t t t t )
  ( via8         drawing      PacketName_65    t t t t t )
  ( metal9       drawing      PacketName_66    t t t t t )
  ( via9         drawing      PacketName_70    t t t t t )
  ( metal10      drawing      PacketName_71    t t t t t )
  ( DRC          drawing      PacketName_77    t t t t t )
 ) ;techDisplays
) ;layerDefinitions
------------------------------------------------------------------------
and here is the streamOut.map file:
-------------------
metal1 NET 1 0
metal1 SPNET 2 0
metal1 PIN 3 0
metal1 LEFPIN 4 0
metal1 FILL 5 0
metal1 FILLOPC 6 0
metal1 VIA 7 0
metal1 VIAFILL 8 0
metal1 VIAFILLOPC 9 0
metal1 LEFOBS 10 0
NAME metal1/NET 11 0
NAME metal1/SPNET 12 0
NAME metal1/PIN 13 0
NAME metal1/LEFPIN 14 0
via1 LEFPIN 15 0
via1 FILL 16 0
via1 FILLOPC 17 0
via1 VIA 18 0
via1 VIAFILL 19 0
via1 VIAFILLOPC 20 0
metal2 NET 21 0
metal2 SPNET 22 0
metal2 PIN 23 0
metal2 LEFPIN 24 0
metal2 FILL 25 0
metal2 FILLOPC 26 0
metal2 VIA 27 0
metal2 VIAFILL 28 0
metal2 VIAFILLOPC 29 0
metal2 LEFOBS 30 0
NAME metal2/NET 31 0
NAME metal2/SPNET 32 0
NAME metal2/PIN 33 0
NAME metal2/LEFPIN 34 0
via2 LEFPIN 35 0
via2 FILL 36 0
via2 FILLOPC 37 0
via2 VIA 38 0
via2 VIAFILL 39 0
via2 VIAFILLOPC 40 0
metal3 NET 41 0
metal3 SPNET 42 0
metal3 PIN 43 0
metal3 LEFPIN 44 0
metal3 FILL 45 0
metal3 FILLOPC 46 0
metal3 VIA 47 0
metal3 VIAFILL 48 0
metal3 VIAFILLOPC 49 0
metal3 LEFOBS 50 0
NAME metal3/NET 51 0
NAME metal3/SPNET 52 0
NAME metal3/PIN 53 0
NAME metal3/LEFPIN 54 0
via3 LEFPIN 55 0
via3 FILL 56 0
via3 FILLOPC 57 0
via3 VIA 58 0
via3 VIAFILL 59 0
via3 VIAFILLOPC 60 0
metal4 NET 61 0
metal4 SPNET 62 0
metal4 PIN 63 0
metal4 LEFPIN 64 0
metal4 FILL 65 0
metal4 FILLOPC 66 0
metal4 VIA 67 0
metal4 VIAFILL 68 0
metal4 VIAFILLOPC 69 0
metal4 LEFOBS 70 0
NAME metal4/NET 71 0
NAME metal4/SPNET 72 0
NAME metal4/PIN 73 0
NAME metal4/LEFPIN 74 0
via4 LEFPIN 75 0
via4 FILL 76 0
via4 FILLOPC 77 0
via4 VIA 78 0
via4 VIAFILL 79 0
via4 VIAFILLOPC 80 0
metal5 NET 81 0
metal5 SPNET 82 0
metal5 PIN 83 0
metal5 LEFPIN 84 0
metal5 FILL 85 0
metal5 FILLOPC 86 0
metal5 VIA 87 0
metal5 VIAFILL 88 0
metal5 VIAFILLOPC 89 0
metal5 LEFOBS 90 0
NAME metal5/NET 91 0
NAME metal5/SPNET 92 0
NAME metal5/PIN 93 0
NAME metal5/LEFPIN 94 0
via5 LEFPIN 95 0
via5 FILL 96 0
via5 FILLOPC 97 0
via5 VIA 98 0
via5 VIAFILL 99 0
via5 VIAFILLOPC 100 0
metal6 NET 101 0
metal6 SPNET 102 0
metal6 PIN 103 0
metal6 LEFPIN 104 0
metal6 FILL 105 0
metal6 FILLOPC 106 0
metal6 VIA 107 0
metal6 VIAFILL 108 0
metal6 VIAFILLOPC 109 0
metal6 LEFOBS 110 0
NAME metal6/NET 111 0
NAME metal6/SPNET 112 0
NAME metal6/PIN 113 0
NAME metal6/LEFPIN 114 0
via6 LEFPIN 115 0
via6 FILL 116 0
via6 FILLOPC 117 0
via6 VIA 118 0
via6 VIAFILL 119 0
via6 VIAFILLOPC 120 0
metal7 NET 121 0
metal7 SPNET 122 0
metal7 PIN 123 0
metal7 LEFPIN 124 0
metal7 FILL 125 0
metal7 FILLOPC 126 0
metal7 VIA 127 0
metal7 VIAFILL 128 0
metal7 VIAFILLOPC 129 0
metal7 LEFOBS 130 0
NAME metal7/NET 131 0
NAME metal7/SPNET 132 0
NAME metal7/PIN 133 0
NAME metal7/LEFPIN 134 0
via7 LEFPIN 135 0
via7 FILL 136 0
via7 FILLOPC 137 0
via7 VIA 138 0
via7 VIAFILL 139 0
via7 VIAFILLOPC 140 0
metal8 NET 141 0
metal8 SPNET 142 0
metal8 PIN 143 0
metal8 LEFPIN 144 0
metal8 FILL 145 0
metal8 FILLOPC 146 0
metal8 VIA 147 0
metal8 VIAFILL 148 0
metal8 VIAFILLOPC 149 0
metal8 LEFOBS 150 0
NAME metal8/NET 151 0
NAME metal8/SPNET 152 0
NAME metal8/PIN 153 0
NAME metal8/LEFPIN 154 0
via8 LEFPIN 155 0
via8 FILL 156 0
via8 FILLOPC 157 0
via8 VIA 158 0
via8 VIAFILL 159 0
via8 VIAFILLOPC 160 0
metal9 NET 161 0
metal9 SPNET 162 0
metal9 PIN 163 0
metal9 LEFPIN 164 0
metal9 FILL 165 0
metal9 FILLOPC 166 0
metal9 VIA 167 0
metal9 VIAFILL 168 0
metal9 VIAFILLOPC 169 0
metal9 LEFOBS 170 0
NAME metal9/NET 171 0
NAME metal9/SPNET 172 0
NAME metal9/PIN 173 0
NAME metal9/LEFPIN 174 0
via9 LEFPIN 175 0
via9 FILL 176 0
via9 FILLOPC 177 0
via9 VIA 178 0
via9 VIAFILL 179 0
via9 VIAFILLOPC 180 0
metal10 NET 181 0
metal10 SPNET 182 0
metal10 PIN 183 0
metal10 LEFPIN 184 0
metal10 FILL 185 0
metal10 FILLOPC 186 0
metal10 VIA 187 0
metal10 VIAFILL 188 0
metal10 VIAFILLOPC 189 0
metal10 LEFOBS 190 0
NAME metal10/NET 191 0
NAME metal10/SPNET 192 0
NAME metal10/PIN 193 0
NAME metal10/LEFPIN 194 0
NAME COMP 195 0
COMP ALL 196 0
DIEAREA ALL 197 0
---------------------------------------------------------------
Please anyone give me a hint how to map my layer correctly to virtuoso.
Thanks
  • Cancel
Parents
  • oAwad
    oAwad over 8 years ago
    In LEF file, metal1 type is "routing". I read this statement in Encounter User Guide :
    "Note: In routing layers, using ALL is the same as using NET, SPNET, VIA, PIN, LEFPIN, FILL, LEFOBS, and VIAFILL. In cut layers, using ALL is the same as using VIA or VIAFILL."

    So taking this part from streamOut.map file:
    -------------------
    metal1 NET 1 0
    metal1 SPNET 2 0
    metal1 PIN 3 0
    metal1 LEFPIN 4 0
    metal1 FILL 5 0
    metal1 FILLOPC 6 0
    metal1 VIA 7 0
    metal1 VIAFILL 8 0
    metal1 VIAFILLOPC 9 0
    metal1 LEFOBS 10 0
    NAME metal1/NET 11 0
    NAME metal1/SPNET 12 0
    NAME metal1/PIN 13 0
    NAME metal1/LEFPIN 14 0
    via1 LEFPIN 15 0
    via1 FILL 16 0
    via1 FILLOPC 17 0
    via1 VIA 18 0
    via1 VIAFILL 19 0
    via1 VIAFILLOPC 20 0
    ----------------------------------------
    I need to tell Encounter to map all metal1 layers to be "metal1 drawing 11 0", all NAME layers to be "metal1 label 11 0" and all via1 layers to be "via1 drawing 12 0" as required by Virtuoso.

    How can I do that using a layer map file that I'll attach it to Encounter GDS export ?
    ---------------------------------------------------------
    Also, what about this section: (it's not included in the automatically generated streamOut.map file by Encounter)
    active drawing 1 0
    pwell drawing 2 0
    nwell drawing 3 0
    nimplant drawing 4 0
    pimplant drawing 5 0
    vtg drawing 6 0
    vth drawing 7 0
    thkox drawing 8 0
    poly drawing 9 0
    contact drawing 10 0

    The only information related to this part in the LEF file is
    "LAYER poly
    TYPE MASTERSLICE ;
    END poly

    LAYER active
    TYPE MASTERSLICE ;
    END active"
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • oAwad
    oAwad over 8 years ago
    In LEF file, metal1 type is "routing". I read this statement in Encounter User Guide :
    "Note: In routing layers, using ALL is the same as using NET, SPNET, VIA, PIN, LEFPIN, FILL, LEFOBS, and VIAFILL. In cut layers, using ALL is the same as using VIA or VIAFILL."

    So taking this part from streamOut.map file:
    -------------------
    metal1 NET 1 0
    metal1 SPNET 2 0
    metal1 PIN 3 0
    metal1 LEFPIN 4 0
    metal1 FILL 5 0
    metal1 FILLOPC 6 0
    metal1 VIA 7 0
    metal1 VIAFILL 8 0
    metal1 VIAFILLOPC 9 0
    metal1 LEFOBS 10 0
    NAME metal1/NET 11 0
    NAME metal1/SPNET 12 0
    NAME metal1/PIN 13 0
    NAME metal1/LEFPIN 14 0
    via1 LEFPIN 15 0
    via1 FILL 16 0
    via1 FILLOPC 17 0
    via1 VIA 18 0
    via1 VIAFILL 19 0
    via1 VIAFILLOPC 20 0
    ----------------------------------------
    I need to tell Encounter to map all metal1 layers to be "metal1 drawing 11 0", all NAME layers to be "metal1 label 11 0" and all via1 layers to be "via1 drawing 12 0" as required by Virtuoso.

    How can I do that using a layer map file that I'll attach it to Encounter GDS export ?
    ---------------------------------------------------------
    Also, what about this section: (it's not included in the automatically generated streamOut.map file by Encounter)
    active drawing 1 0
    pwell drawing 2 0
    nwell drawing 3 0
    nimplant drawing 4 0
    pimplant drawing 5 0
    vtg drawing 6 0
    vth drawing 7 0
    thkox drawing 8 0
    poly drawing 9 0
    contact drawing 10 0

    The only information related to this part in the LEF file is
    "LAYER poly
    TYPE MASTERSLICE ;
    END poly

    LAYER active
    TYPE MASTERSLICE ;
    END active"
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information