It looks like you're new here. If you want to get involved, click one of these buttons!
Hi,
I would like to here your opinion about an GUI for the DRC and LVS run. I guess most of you are familiar with the setup of the commercial tools and I think it would be a great enhancement for KLayout, too. E.g. that switches, or input fields could be added in the GUI to change something in the DRC / LVS script without touching the code. Or rule file list which is executed. Maybe this could give the opportunity to add a kind of window check option, too. I could think about rule filters, too, but I guess this is challenging since the rule file is not running through a pre processor.
Maybe someone of you have better proposal.
best regards
Grandement
Comments
Some switches for deep mode and tiling would be nice, too.
I know the commercial tools you mean, but KLayout is not of that kind.
KLayout DRC is a full-featured Ruby script that has access to everything inside KLayout - even GUI or network functionality.
Ruler filters can simply be implemented by "if" statements that selectively execute checks or group of checks. KLayout does not build a operation graph, but runs "live" on a database. That allows you to create loops or make dynamic decisions based on the state of a layer (e.g. stop an iteration when a layer is empty).
Parameters can be included as variables - as the DRC language is Ruby, you can use environment variables for that purpose (using the ENV array) or command line parameters when you run a DRC deck in batch mode. For example, use a variable "$mode" to control your script and define that in a batch mode run using "klayout -b -r your.drc -rd mode=XYZ".
You can even include code at the beginning of the DRC script to open a dialog and ask for these parameters. The built-in Qt classes can do that.
Matthias
Hi Matthias,
Thanks for the suggestion. I have not thought about it to include a dialog directly into the DRC script. This is the nice freedom which you created with KLayout
Best regards
Grandement