OpenDB
OpenDB copied to clipboard
Output DEF creates illegal DEF for instance HALOs
Running the enclose tcl script on a DEF with a component that has a HALO defined, the output DEF has written an illegal syntax for the HALO description. From the transcript you can see that parentheses have been used halo_test.tar.gz when writing out the DEF that should not be present.
Transcript as follows:
% set db [dbDatabase_create]
odb_read_lef $db nangate45/NangateOpenCellLibrary.mod.lef
odb_read_def [$db getLibs] halo_test.input.def
odb_write_def [[$db getChip] getBlock] halo_test.output.def DEF_5_6
dbDatabase_destroy $db
_607a2c0200000000_p_odb__dbDatabase
% % No Logger: notice 0: Reading LEF file: nangate45/NangateOpenCellLibrary.mod.lef
No Logger: notice 0: Created 22 technology layers
No Logger: notice 0: Created 27 technology vias
No Logger: notice 0: Created 134 library cells
No Logger: notice 0: Finished LEF file: nangate45/NangateOpenCellLibrary.mod.lef
_3011370200000000_p_odb__dbLib
% No Logger: notice 0:
Reading DEF file: halo_test.input.def
No Logger: notice 0: Design: test
No Logger: notice 0: Created 1 components and 5 component-terminals.
No Logger: notice 0: Finished DEF file: halo_test.input.def
_2056340200000000_p_odb__dbChip
% % 1
% % % set db1 [dbDatabase_create]
_607a2c0200000000_p_odb__dbDatabase
% odb_read_lef $db1 nangate45/NangateOpenCellLibrary.mod.lef
No Logger: notice 0: Reading LEF file: nangate45/NangateOpenCellLibrary.mod.lef
No Logger: notice 0: Created 22 technology layers
No Logger: notice 0: Created 27 technology vias
No Logger: notice 0: Created 134 library cells
No Logger: notice 0: Finished LEF file: nangate45/NangateOpenCellLibrary.mod.lef
_709d410200000000_p_odb__dbLib
% odb_read_def [$db1 getLibs] halo_test.output.def
No Logger: notice 0:
Reading DEF file: halo_test.output.def
No Logger: notice 0: Design: test
No Logger: notice 0: error: DEF:17: syntax error, reading (
deflex: token leaked from line 17 with value AND2_X1
deflex: token leaked from line 17 with value test
No Logger: notice 0: Created 1 components and 5 component-terminals.
No Logger: notice 0: Finished DEF file: halo_test.output.def
_b04d380200000000_p_odb__dbChip
% exec diff halo_test.input.def halo_test.output.def
17c17
< - test AND2_X1 + FIXED ( 2784400 517660 ) N + HALO 1600 5120 1600 6060 ;
---
> - test AND2_X1 + FIXED ( 2784400 517660 ) N + HALO ( 1600 5120 ) ( 1600 6060 ) ;