In the `.mag` file, is `FIXED_BBOX` in the same un...
# magic
t
In the
.mag
file, is
FIXED_BBOX
in the same units as
MASKHINTS_*
?!?
t
Yes, it should be. Both are in internal units (which can vary, so the units for both are dependent on the
magscale
value at the top of the file. But
FIXED_BBOX
and
MASKHINTS
units should always agree with each other).
t
That doesn't seem to be the case. Because they are
Copy code
string FIXED_BBOX 0 0 210 70
string MASKHINTS_NSDM 84 0 394 140
But yet the generated GDS has the correct height for both (same height for prBoundary and nsdm)

https://i.imgur.com/hQxGEzT.png

I don't have any
magscale
value at the top either.
t
Are there any other properties in the cell?
t
Just
FIXED_BBOX
and
MASKHINTS_NSDM
t
Congratulations, you have found a bug. : )
t
🤣
t
"_*Zarro Boogs Found"*_
t
Yes, I'm aware of where it occurs and what needs to be fixed. MASKHINTS_* must be treated like FIXED_BBOX.
t
Ah ok, the issue is the maxhints not being scaled, not fixed_bbox being scaled, I see 😅
Not sure how to fix that without breaking all existing
.mag
though ...
t
It got the way it is because when using the default
sky130A.magicrc
, the database is scaled down by a factor of 2 to the manufacturing minimum grid (5nm), and most layout files end up at that scale. That is, I think most existing .mag files have
magscale 1 2
and the
MASKHINTS
have the same scale as
FIXED_BBOX
. I don't think it will be too disruptive to fix it.
t
Weird because AFAIK I'm using the default sky130A, I haven't messed with anything and yet I don't have
magscale
in my files and obviously any fix would break them.
I guess I'll have to watchout when I update to manually fix stuff up.
t
I have fixed the code for magic (on opencircuitdesign.com; as usual, it mirrors to github in about 12 hours). I'm afraid there really isn't any good solution except to fix the problem. As previously written, it is impossible to determine what units the MASKHINTS are in, in the .mag file. The only units that are meaningful in the .mag file are lambda units (or a multiple thereof, given a non-default "magscale" line). Internal units can get changed arbitrarily.
t
Ack. I just updated magic, fixed up all my
.mag
files manually and regenerated the GDS and they match the previous result.