Hi All, question about sky130 layers and magic. I...
# magic
t
Hi All, question about sky130 layers and magic. I just found this spreadsheet (thank you whoever created/posted this) detailing the layers and how they map to magic layers. I'm trying to start a layout in magic for which I've generated some transistors but I don't want the auto generated gate contacts so I'm having to do that myself. How do I connect to the poly gate? The spreadsheet/diagram in the docs only shows vias to the "field poly" but not to "polysilicon gate". Which magic layers do I need to get the gate upto M1?
I think I've figured it out but if someone could confirm that'd be great
t
You cannot make a contact to a polysilicon gate, only to field poly. "Field poly" is defined as any poly that is not overlapping diffusion. That just means that you can't drop a contact directly on top of your transistor.
t
@Tim Edwards thanks. That's what I figured. specifically for a gate contact to M1 is this what I should have? 'polysilicon' > 'licon' > 'locali' > 'viali' > 'metal1' I can't actually find 'viali' or 'via1' for that matter. Is there a doc. which details the sky130 layer to magic pallet matching? or are there 'macro layers' I should be using? I noticed there's an m2contact for example, does that take m2 all the way down to licon? Cheers
t
m2contact
is
met1
->
met2
t
Thanks @tnt, what about poly to m1?
t
Poly does not connect directly to m1. Local interconnect is between them. You have to go from poly to li and then from li to m1.
t
Poly to m1 is what you described, you need to go throug
li
So when I paint I have
polysilicon
then
pcontact
then
locali
then
licon
then
metal1
t
@Tom: The layers you describe are SkyWater layer names. In magic, to get from poly to metal 1, use "pc" + "via". Note that magic layers have a number of aliases so that there are several names for each type, usually at least a longer descriptive name and a shorter name that is easy to type (e.g., "pcontact" and "pc").
@Tom: And unless you are doing some kind of special custom layout, then you should use the "Devices" menus in magic to create devices, which can automatically generate all the contacts up to metal1.
t
Is there a way to list layers and alias ? I usually type
see help
which ends up giving a list but not sure if there is something better.
t
@tnt: Probably "see help" is the best way, although even that doesn't tell you what the aliases defined in the "aliases" section of the techfile are (e.g., "allm1", "alldiff", etc., which can be very useful, especially with "see" and "see no")
I'm not sure there is a command that tells you what those aliases are. . .
t
@Tim Edwards that's exactly what I'm looking for, thanks. so pcontact gets me to locali but I don't see 'via'. See help shows me "m2c or m2contact or m2cut or v or v1 or via or via1" but that suggests that 'via' is the same as 'via1' which looks like an m1-m2 connection. what do I want for to complete the transition from pcontact upto m1? Sorry for the confusion. I am actually using the devices generator, it's extremely helpful, I'm just creating my own gate contacts so I can create parallel runs of m1 from D, G and S in a common centroid layout without violating m1 to m1 spacing rules as I didn't want to have to define the contact width on the gate as a percentage of its length. I also want the guard ring to surround the whole common centroid layout so I presume I'm going to have to manually draw that too. Any suggestions welcome.
t
m2contact
is from
met1
to
met2
For
locali
to
met1
it's named
lic or licon or m1c or mcon or v0 or vial or viali
(lots of names for the same thing)
t
@tnt : Use of "licon" in magic being an incorrect conflict with the SkyWater documentation, I am now getting rid of the name. There is no concept in magic of a single contact type that can serve for contacting local interconnect to poly, diffusion, or tap; each type has to have its own contact type. While I'm at it, I'm getting rid of or alleviating other inconsistencies between magic's names and SkyWater's, such as using the name "tap" for tap layers ("ntap" and "ptap", since magic distinguishes between the two). Also changing THKOX to HVI in the cifinput/cifoutput sections, as well as changing NPLUS/PPLUS to NSDM/PSDM. Most of the name differences are due to the choice of using magic's traditional names for layers from the old SCMOS technology files vs. using the foundry's names.
t
@Tim Edwards does that mean I shouldn't use
licon
to connect the guard ring to
M1
? How should I do that?
t
No, it's just the
licon
alias in magic that's the wrong term.
t
I take sole responsibility for this stupid mistake. @Tom:
mcon
is the right layer name, and the one that SkyWater uses, so go with that.
t
ok thanks, @Tim Edwards / @tnt
151 Views