aquiles viza
10/02/2023, 8:46 PM> python E:\Descargas\ic_analog\code\layout\globalfoundries-pdk-libs-gf180mcu_fd_pv\klayout\drc\run_drc.py --variant=C --path=RING_PAD.gds --verbose
02-Oct-2023 17:10:41 | INFO | Your Klayout version is: KLayout 0.28.12
02-Oct-2023 17:10:41 | INFO | Your Klayout version is: KLayout 0.28.12
02-Oct-2023 17:10:41 | INFO | ## Generating template with for the following rule tables: ['comp.drc', 'contact.drc', 'dnwell.drc', 'drc_bjt.drc', 'dualgate.drc', 'dummy_exclude.drc', 'efuse.drc', 'esd.drc', 'hres.drc', 'ldnmos.drc', 'ldpmos.drc', 'lres.drc', 'lvpwell.drc', 'lvs_bjt.drc', 'mcell.drc', 'metal1.drc', 'metal2.drc', 'metal3.drc', 'metal4.drc', 'metal5.drc', 'metaltop.drc', 'metaltop_30k.drc', 'mim_a.drc', 'mim_b.drc', 'nat.drc', 'nplus.drc', 'nwell.drc', 'otp_mk.drc', 'poly2.drc', 'pplus.drc', 'pres.drc', 'sab.drc', 'sram_3p3.drc', 'sram_5p0.drc', 'via1.drc', 'via2.drc', 'via3.drc', 'via4.drc', 'via5.drc', 'ymtp_mk.drc']
02-Oct-2023 17:10:41 | INFO | ## Your run dir located at: E:\Descargas\ic_analog\code\layout\drc_run_2023_10_02_20_10_41
02-Oct-2023 17:10:41 | INFO | Running Global Foundries 180nm MCU E:\Descargas\ic_analog\code\layout\RING_PAD.gds checks on design main on cell RING_PAD:
Traceback (most recent call last):
File "E:\Descargas\ic_analog\code\layout\globalfoundries-pdk-libs-gf180mcu_fd_pv\klayout\drc\run_drc.py", line 693, in <module>
main(drc_run_dir, arguments)
File "E:\Descargas\ic_analog\code\layout\globalfoundries-pdk-libs-gf180mcu_fd_pv\klayout\drc\run_drc.py", line 650, in main
run_single_processor(
File "E:\Descargas\ic_analog\code\layout\globalfoundries-pdk-libs-gf180mcu_fd_pv\klayout\drc\run_drc.py", line 601, in run_single_processor
run_check(drc_file, "main", layout_path, drc_run_dir, switches)
File "E:\Descargas\ic_analog\code\layout\globalfoundries-pdk-libs-gf180mcu_fd_pv\klayout\drc\run_drc.py", line 452, in run_check
check_call(run_str, shell=True)
File "E:\source\mambaforge\envs\chipathon\Lib\subprocess.py", line 413, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command 'klayout -b -r E:\Descargas\ic_analog\code\layout\drc_run_2023_10_02_20_10_41\main.drc -rd thr=2 -rd run_mode=flat -rd metal_top=9K -rd mim_option=B -rd metal_level=5LM -rd verbose=true -rd feol=true -rd beol=true -rd offgrid=true -rd conn_drc=false -rd density=false -rd slow_via=false -rd topcell=RING_PAD -rd input=E:\Descargas\ic_analog\code\layout\RING_PAD.gds -rd report=E:\Descargas\ic_analog\code\layout\drc_run_2023_10_02_20_10_41\RING_PAD_main.lyrdb -rd table_name=main' returned non-zero exit status 1.
Executing the last message without -b flag gives this error:
> klayout -r E:\Descargas\ic_analog\code\layout\drc_run_2023_10_02_20_10_41\main.drc -rd thr=2 -rd run_mode=flat -rd metal_top=9K -rd mim_option=B -rd metal_level=5LM -rd verbose=true -rd feol=true -rd beol=true -rd offgrid=true -rd conn_drc=false -rd density=false -rd slow_via=false -rd topcell=RING_PAD -rd input=E:\Descargas\ic_analog\code\layout\RING_PAD.gds -rd report=E:\Descargas\ic_analog\code\layout\drc_run_2023_10_02_20_10_41\RING_PAD_main.lyrdb -rd table_name=main
NoMethodError: undefined method `strip' for nil:NilClass in Executable::execute
E:\Descargas\ic_analog\code\layout\drc_run_2023_10_02_20_10_41\main.drc:29:in `block in execute'
C:/Users/akiles/AppData/Roaming/Klayout/lib/ruby/3.0.0/logger.rb:586:in `format_message'
C:/Users/akiles/AppData/Roaming/Klayout/lib/ruby/3.0.0/logger.rb:476:in `add'
C:/Users/akiles/AppData/Roaming/Klayout/lib/ruby/3.0.0/logger.rb:529:in `info'
E:\Descargas\ic_analog\code\layout\drc_run_2023_10_02_20_10_41\main.drc:36:in `execute'
:/built-in-macros\drc_interpreters.lym:31:in `instance_eval'
:/built-in-macros\drc_interpreters.lym:31:in `execute'
Running the Precheck DRC with klayout in GUI mode, gives this log error:
> klayout -r E:\Descargas\ic_analog\code\layout\mpw_precheck\checks\tech-files\gf180mcuC_mr.drc
NoMethodError: undefined method `strip' for nil:NilClass in Executable::execute
E:\Descargas\ic_analog\code\layout\mpw_precheck\checks\tech-files\gf180mcuC_mr.drc:39:in `getMemSize'
E:\Descargas\ic_analog\code\layout\mpw_precheck\checks\tech-files\gf180mcuC_mr.drc:118:in `block in execute'
C:/Users/akiles/AppData/Roaming/Klayout/lib/ruby/3.0.0/logger.rb:586:in `format_message'
C:/Users/akiles/AppData/Roaming/Klayout/lib/ruby/3.0.0/logger.rb:476:in `add'
C:/Users/akiles/AppData/Roaming/Klayout/lib/ruby/3.0.0/logger.rb:529:in `info'
E:\Descargas\ic_analog\code\layout\mpw_precheck\checks\tech-files\gf180mcuC_mr.drc:129:in `execute'
:/built-in-macros\drc_interpreters.lym:31:in `instance_eval'
:/built-in-macros\drc_interpreters.lym:31:in `execute'
I'm posting the drc generated by the run_drc.py
script, but I think that is more a missing dependency inside Klayout's ruby packed version.Amro Tork
10/03/2023, 3:19 AMFarag Elsayed
10/03/2023, 7:09 AMUbuntu-22.04
.
It seems that your klayout ruby couldn't understand this line no. 29
. I believe you will get extra issues after fixing this.aquiles viza
10/03/2023, 4:36 PM