You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Mosfets are the bread and butter of IC design, so having a good icon for them is super important. There are so many styles though.
This seems to be the most common one in datasheets and papers. Nice and simple, but hides the bulk connection.
Some more variants.
I don't like the ones with the arrow/ball at the gate because it doesn't make much physical sense. It does convey the symmetric nature of a mosfet, which on the one hand is nice, but doesn't communicate design intent well in terms of the side with the high/low impedance.
The ones with the bulk line are more explicit, but more "busy"
Current design: explicit bulk connection. I choose it because it's the closest to what is physically happening. Downside: often the bulk connection isn't very "interesting"
It also prevents connections like this which are very common in current mirrors and the like
So I think ideally we'd have the first example for the common case where I suppose the bulk connection is specified in the properties pane, rather than in the schematic. And then the 4 terminal case is there if you want to do something fancy with backgates and tripple wells and such.
In the 4 terminal case you should be able to do this with a better UX than what I did here, which is draw a single segment wire, add a label to it, give it a name, and then drag it under the bulk terminal. It can still be that under the hood, but the UX should be more like a proper "label" element.
anotations
Besides the mosfet itself there is a bunch of info you might want to show in the schematic. On the one hand you want to keep the schematic as clean as in a datasheet or paper, so you can focus on the core topology, on the other hand you also want to see all the important design info at a glance.
Cadence goes for the all out verbose mode, which isn't great IMO.
Currently, no annotations are implemented at all, so even more bare than the paper "M1" label. Also not great maybe.
An amazing thing EveryCircuit does is that it shows the mosfet operating region. I would love to steal this. Not so sure about the real-time dots racing around the circuit, I think it doesn't scale very well to more complex simulations. But as discussed in #18 the little mini plots could be a useful annotation.
Another key thing to annotate might be the W/L ratio. But the range of sizes is such that literally scaling the mosfets would look quite ridiculous. But what if it had a little rectangle? Doesn't really convey the absolute size, but dunno it seems kinda cute.
For other things I think some generic templating language might be perfect. Like you just add a little textbox with gm: {op.m1.gm} and it shows you the gm from the operating point simulation or whatever. Good idea or too hacky/finicky?
The text was updated successfully, but these errors were encountered:
Another important thing to consider is how to easily tell PMOS and NMOS appart. Currently these have their own background color which works better than trying to remember which way the arrow points.
the symbol itself
Mosfets are the bread and butter of IC design, so having a good icon for them is super important. There are so many styles though.
This seems to be the most common one in datasheets and papers. Nice and simple, but hides the bulk connection.
Some more variants.
I don't like the ones with the arrow/ball at the gate because it doesn't make much physical sense. It does convey the symmetric nature of a mosfet, which on the one hand is nice, but doesn't communicate design intent well in terms of the side with the high/low impedance.
The ones with the bulk line are more explicit, but more "busy"
Current design: explicit bulk connection. I choose it because it's the closest to what is physically happening. Downside: often the bulk connection isn't very "interesting"
It also prevents connections like this which are very common in current mirrors and the like
So I think ideally we'd have the first example for the common case where I suppose the bulk connection is specified in the properties pane, rather than in the schematic. And then the 4 terminal case is there if you want to do something fancy with backgates and tripple wells and such.
In the 4 terminal case you should be able to do this with a better UX than what I did here, which is draw a single segment wire, add a label to it, give it a name, and then drag it under the bulk terminal. It can still be that under the hood, but the UX should be more like a proper "label" element.
anotations
Besides the mosfet itself there is a bunch of info you might want to show in the schematic. On the one hand you want to keep the schematic as clean as in a datasheet or paper, so you can focus on the core topology, on the other hand you also want to see all the important design info at a glance.
Cadence goes for the all out verbose mode, which isn't great IMO.
Currently, no annotations are implemented at all, so even more bare than the paper "M1" label. Also not great maybe.
An amazing thing EveryCircuit does is that it shows the mosfet operating region. I would love to steal this. Not so sure about the real-time dots racing around the circuit, I think it doesn't scale very well to more complex simulations. But as discussed in #18 the little mini plots could be a useful annotation.
Another key thing to annotate might be the W/L ratio. But the range of sizes is such that literally scaling the mosfets would look quite ridiculous. But what if it had a little rectangle? Doesn't really convey the absolute size, but dunno it seems kinda cute.
For other things I think some generic templating language might be perfect. Like you just add a little textbox with
gm: {op.m1.gm}
and it shows you the gm from the operating point simulation or whatever. Good idea or too hacky/finicky?The text was updated successfully, but these errors were encountered: