Philipp Gühring
01/12/2023, 11:11 PMTim Edwards
01/13/2023, 2:17 AMscalegrid 1 10
does in the gf180mcuC.magicrc
file.
The scalefactor is largely arbitrary; the general principle is to use it to set a lambda value for SCMOS-type rules (50nm is the most convenient unit I could come up with that lets most rules be cast as integer lambda values without compromising too much area satisfying the more conservative rule set). It may not make any sense to do that, but much of magic's code is based on scalable dimensions.Philipp Gühring
01/13/2023, 8:59 PMPhilipp Gühring
01/13/2023, 9:00 PMTim Edwards
01/13/2023, 9:02 PMPhilipp Gühring
01/13/2023, 9:03 PMTim Edwards
01/13/2023, 9:04 PMPhilipp Gühring
01/13/2023, 9:04 PMTim Edwards
01/13/2023, 9:06 PMPhilipp Gühring
01/13/2023, 9:07 PMPhilipp Gühring
01/13/2023, 9:10 PMPhilipp Gühring
01/13/2023, 9:11 PMPhilipp Gühring
01/13/2023, 9:12 PMTim Edwards
01/13/2023, 9:15 PM-T <techfile>
instead of -rcfile <scriptfile>
. The only real problem with the grid scaling as currently defined is that if someone starts magic using -T <techfile>
, then they don't get a scaled grid, they are working entirely within a lambda grid, and if they try to load files with geometry at finer scales, then problems happen.Philipp Gühring
01/13/2023, 9:21 PMTim Edwards
01/13/2023, 10:16 PMsnap internal
?Tim Edwards
01/13/2023, 10:27 PMoptions set-minimum-grid
. That will force the database scaling to be set to the minimum manufacturing grid when the tech file is read in. It does seem like a useful feature.Philipp Gühring
02/19/2023, 5:28 PMmagic
# Generated by librecell
tech gf180mcuC
magscale 1 10
timestamp 1676817115
<< met1 >>
rect 0 0 448 40
rect 0 50 449 90
rect 0 100 450 140
rect 0 150 451 190
<< end >>
and tested it with .tech files that had scalefactor 5 and scalefactor 50 , and which had the options set-minimum-grid
unfortunately, then I tried to measure the the width of the metal strips, and would expect them to be 2.24um ++5nm wide.Philipp Gühring
02/19/2023, 5:28 PMPhilipp Gühring
02/19/2023, 5:29 PMPhilipp Gühring
02/19/2023, 5:31 PMPhilipp Gühring
02/19/2023, 5:33 PMPhilipp Gühring
02/19/2023, 5:35 PMPhilipp Gühring
02/19/2023, 8:58 PMPhilipp Gühring
02/19/2023, 9:00 PMTim Edwards
02/20/2023, 7:29 PMTim Edwards
02/20/2023, 7:34 PMTim Edwards
02/20/2023, 7:37 PMscalegrid
command, however, changes the underlying integer grid without changing the scalefactor. But the .mag
file output is defined to be in lambda (undimensioned) units, and so the magscale
line is there to change the meaning of the units in the .mag
file to match the difference between lambda units and whatever internal units have been defined by using the scalegrid
command. If you make no other changes to tech file or .mag file but add a line magscale 1 10
, then you have just declared that all units in the .mag
file are 1/10 lambda, and so you have implicitly shrunk the entire design by a factor of 10.Philipp Gühring
02/20/2023, 8:03 PMPhilipp Gühring
02/20/2023, 8:08 PMTim Edwards
02/20/2023, 8:13 PMPhilipp Gühring
02/20/2023, 8:20 PMTim Edwards
02/20/2023, 9:11 PMTim Edwards
02/20/2023, 9:12 PM