Stefan Schippers10/24/2020, 1:53 AM
suffix in the stdcells indicate the driving capability (i.e. size of the transistors) of the cell. bigger numbers indicate bigger cells. Taking
as an example, it exists in
_0, _1, _2, _4, _8
sky130_fd_sc_hd__einvn_0.gds sky130_fd_sc_hd__einvn_1.gds sky130_fd_sc_hd__einvn_2.gds sky130_fd_sc_hd__einvn_4.gds sky130_fd_sc_hd__einvn_8.gds
is one of the most commonly available sizes, standard cells have been imported into xschem using a script that parsed all the
netlists (these contain all needed info and are easy to parse). Then some manual artwork has been done to draw the combinatorial shapes. Some other cells that did not have the
size were then imported using the first available variant. After completing this task all other variants have been cloned automatically. I did not have the time to check the LP library, but you're right there are some _m and _lp variants. Good to know. xschem stdcells have a '`prefix`' attribute that can be used to easily switch from one library to the other, provided that the gate is available (some libs have fewer cells). Another reason for starting with the 'hd' (high density) lib is that it has one of the highest number of gates (437), so there is more chance that the set covers most of the other libs too.