Comments (6)
I think it needs both the poly masterslice definition as well as the licon cut definition to make the commercial tools happy. Apparently they also need the overlap definition?
I'm happy to make the change to the efabless fork of the PDK repositories, but a pull request needs to be made for the technology LEF files of all of the standard cell libraries.
from open_pdks.
I think it needs both the poly masterslice definition as well as the licon cut definition to make the commercial tools happy. Apparently they also need the overlap definition?
I'm currently running Cadence successfully with just the "dummy cut" layer, but I don't know how it is with other vendors and I agree it would probably be best to fix it properly.
I'm happy to make the change to the efabless fork of the PDK repositories, but a pull request needs to be made for the technology LEF files of all of the standard cell libraries.
Thank you! I'll do a few more tests and then I'll start making those PRs.
from open_pdks.
So the LEF/DEF reference says :
Defines masterslice (nonrouting) or overlap layers in the design. Masterslice layers are
typically polysilicon layers and are only needed if the cell MACROs have pins on the polysilicon
layer.
Since our cells have no pins on poly, I don't think we need it. But we do need licon
. Now the question is, do we need to specify any rules (ENCLOSURE
, SPACING
, ...) for licon
? It seems like the PnR tool wouldn't need to know about any potential rules related to licon because it would never have to generate vias there, or am I missing something?
from open_pdks.
@ubfx: No, you've got it about right. The issue here is that the tools have absolutely no reason to be messing with the licon layer. The open source tools like OpenROAD and magic all understand that everything works perfectly well without it. I do not know why the commercial tools (and, maybe, the spec?) insist upon it being defined. There are other cases related to the LEF/DEF specs where (1) the spec was ambiguously worded; (2) some commercial tool interpreted the spec in the dumbest possible way; and (3) that interpretation became the de facto interpretation. I feel like this is another such example.
from open_pdks.
I see what you mean. Indeed, I wasn't able to find where the LEF/DEF specification requires the cut layer. It just says that you have to define the layers from the bottom up (not that you can't skip a layer).
At least Innovus seems to be happy with this configuration:
[...]
TYPE MASTERSLICE ;
PROPERTY LEF58_TYPE "TYPE PWELL ;" ;
END pwell
LAYER licon
TYPE CUT ;
END licon
LAYER li1
TYPE ROUTING ;
DIRECTION VERTICAL ;
[...]
which would be the "minimally invasive" way to fix this.
from open_pdks.
Thank you for merging all of these!
from open_pdks.
Related Issues (20)
- Missing openlane environment variable in gf180mcu. HOT 3
- Symbol calculated resistance on fixed width high poly resistors does not appear correct HOT 6
- DRC errors using MAGLEF/LEF view with sky130A HOT 1
- Query regarding Qflow HOT 1
- magicrc log change suggestion HOT 1
- Weird cell LEF definitions for sky130 HOT 2
- Getting Errors in building HOT 2
- sky130 chip_io: mag file does not correspond to gds HOT 2
- sky130 gpio LVS: Resistor recognition layers on parent hierarchy ignored.
- unable to compile HOT 1
- Make gives me several errors regarding LEF, CDL, Magic etc.. Cell might have been instanced before they were defined HOT 5
- Trouble installing open_pdks HOT 10
- Problem in using a different cells library than sky130_fd_sc_hd in OpenLane. HOT 1
- Document `no_synth.cells`
- Large build size of gf180mcu
- configure:error HOT 2
- Scripts for gf180 klayout drc are being pulled into the sky130 pdk HOT 1
- FEAT: Integration with Advanced Packaging Tools (debian/apt or centos/yum) HOT 1
- sky130_fd_sc_hd__macro_sparecell has instances with connections in the wrong order. HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from open_pdks.