First of all thank you very much for this great tool! So far I used it only for GDS viewing. Lately I wanted to test the DEF/LEF import. However when importing DEF with LEFs I discover the following runtime error: Duplicate MACRO. Our vendor delivers a set of standard cells with different VTs (SVT,LVT,HVT,etc). Each library contain the same set of Gate Array Cells. This leads to the above error during DEF/LEF import. I could now patch out the duplicate MACRO definitions but honestly think the approach below is better.
I implemented the attached patch to change the error to a warning and continue the import. The MACRO read first will be used and all following ones will be ignored (this could be changed to let the last read macro win but I am going for first come first serve). For these cells this approach is reasonable as I am aware of these cells. I attached a patch below in case you are interested to add this feature to klayout.
I tested the patch on my testcase and works well.
You can find the latest patch here : https://github.com/andioddi/klayout
First of all thank you very much for this great tool! So far I used it only for GDS viewing. Lately I wanted to test the DEF/LEF import. However when importing DEF with LEFs I discover the following runtime error: Duplicate MACRO. Our vendor delivers a set of standard cells with different VTs (SVT,LVT,HVT,etc). Each library contain the same set of Gate Array Cells. This leads to the above error during DEF/LEF import. I could now patch out the duplicate MACRO definitions but honestly think the approach below is better.
I implemented the attached patch to change the error to a warning and continue the import. The MACRO read first will be used and all following ones will be ignored (this could be changed to let the last read macro win but I am going for first come first serve). For these cells this approach is reasonable as I am aware of these cells. I attached a patch below in case you are interested to add this feature to klayout.
I tested the patch on my testcase and works well.
You can find the latest patch here : https://github.com/andioddi/klayout