Hi <@U016EM8L91B> <@U02G0CLTGTH> I've made a scri...
# chipalooza
a
Hi @Tim Edwards @Leo Moser I've made a script to patch the pdks problems has with some tools, specially on the klayout side https://github.com/akiles-esta-usado/ic-makefile/blob/main/installers/patch_volare.sh I'm going to evaluate if the sky130 klayout tutorial to see differences.
In the item "3. LVS Netlist" it's not required to remove the "x" manually. Xschem has a setting to avoid it.
set spiceprefix 0
The problem with the
u
scale it's a real pain. I was not able to do a
sed
command to delete the "u" automatically, maybe someone could help with it. For LVS I use only
magic
and
netgen
because of the
u
problem
Another thing is that the tutorial doesn't explain how to set up the grid size in 0.005. That could explain the offgrid problems. In
File -> Setting -> Application -> Grid
set it from
0.001
to
0.005
.
t
All good feedback, thanks!
l
@aquiles viza Thanks for the feedback and your nice script 👏️ I'll update the writeup and see whether I can patch some of these issues directly in the technology files. Regarding the 'X', there seems to be a way to configure the Spice reader to unwrap the devices: https://www.klayout.de/forum/discussion/2270/how-launch-lvs (scroll down to the last message) So that's also something we can keep in mind. There is also a way to set the scale globally using ".scale", but I couldn't get it working yet.
FYI,
File -> Setup -> Application -> Grid
did not do the trick for me. I think this setting only ensures that objects are placed with the 0.005 grid. But the PCells were already aligned with the grid (I even tried to set one to coords 0,0 for testing). The issue is with the internal structure of the PCell, some rectangles on met1 were not aligned. I think this is because of how the PCell is programmed, the coords are not rounded to 0.005. The solution is to set the "Database unit" to 0.005 when using "Save As" or when creating a new layout. I think the default of 0.001 should be changed to 0.005 in the technology files 😁
a
I've suffered the pcells with offgrid a lot, but I thought it happens only when creating the layout via scripting, not manually. At least that was my conclusion before dropping the programatic layout generation project. A solution I've found is to put a metal with correct sizing over the bad boxes. It's easy to do, but something that should never be required on the first place. But yeah, grid size is not a solution of this problem I haven't search on the
*.ly[p,m,t]
files which of them defines the grid size. When found, It should be easy to add the fix on the script I've shared.
l
Thanks for the heads up, that's good to know! It's "sky130.lyt", line 6 that sets the default: "<dbu>0.001</dbu>" But there are other entries for lefdef, dxf, cif and mag that also set dbu. I'll have to check whether all entries need to be set to 0.005 and see if that breaks anything. But at least we know where to change it 👍