Inverter
A standard cell is a building block that contains some basic digital or analogue functionality. These blocks are then tiled together to make the final design.
Since finding out about the Skywater PDK, I wanted to try drawing my own ‘standard cell’ using the Skywater transistor models.
An inverter is one of the simplest and even that was quite difficult! As you can see below it contains an N and P type MOSFET.
In this video I tried to build one as fast as possible, an inverter speedrun!
See the repository for more information on the Magic commands.
After I have it in Magic, I can extract the circuit for simulation. Here I use ngspice to do the simulation and as you can see we have an inverter! The red line is the input and the blue is the output.
A super cool thing I only realised after making my own and simulating it is that CMOS only uses current to change state. In fact that’s the big reason why it was invented. The previous technology, NMOS uses current whenever it’s in the low output state.
This graph is a simulation of current usage as the inverter changes state: