com.sun.electric.tool.io.input
Class EDIF
java.lang.Object
com.sun.electric.tool.io.input.Input
com.sun.electric.tool.io.input.EDIF
public class EDIF
- extends Input
This class reads EDIF files.
Notes:
Does not fully support portbundles
Multiple ports of the same name are named port_x (x is 1 to n duplicate)
Keywords such as ARRAY have unnamed parameters, ie (array (name..) 5 6)
this is handled in the processInteger function called by getKeyword,
this is a hack to fix this problem, a real table driven parser should be used.
Use circle arcs instead of splines.
Support text justifications and text height
Better NAME/RENAME/STRINGDISPLAY/ANNOTATE text handling.
ANSI prototypes
Changed arcs to simple polygons plus ARC attribute
Some examples that can be handled:
------------------------- LAYOUT -------------------------
(cell XXXXX (cellType GENERIC)
(view layout (viewType MASKLAYOUT)
(interface
(protectionFrame)
)
(contents
========== (LAYOUT DESCRIPTION)
)
)
)
------------------------- AN ICON -------------------------
(cell XXXXX (cellType GENERIC)
(view INTERFACE (viewType NETLIST)
(interface
(port A)
)
)
)
------------------------- AN ICON -------------------------
(cell XXXXX (cellType GENERIC)
(view symbol (viewType SCHEMATIC)
(interface
(port A)
(symbol
========== (ICON DESCRIPTION)
)
)
)
)
------------------------- AN ICON -------------------------
(cell XXXXX (cellType GENERIC)
(view VLSI_Symbol (viewType SCHEMATIC)
(interface
(port A)
(symbol
========== (ICON DESCRIPTION)
)
)
)
)
------------------------- AN ICON -------------------------
(cell XXXXX (cellType GENERIC)
(view symbol (viewType GRAPHIC)
(interface)
(contents
========== (ICON DESCRIPTION)
)
)
)
------------------------- AN ICON AND SCHEMATIC -------------------------
(cell XXXXX (cellType GENERIC)
(view symbol (viewType SCHEMATIC)
(interface
(port A)
(symbol
========== (ICON DESCRIPTION)
)
)
(contents
(page SH1
========== (SCHEMATIC DESCRIPTION)
)
)
)
)
------------------------- AN ICON AND SCHEMATIC -------------------------
(cell XXXXX (cellType GENERIC)
(view NETLIST (viewType NETLIST)
(interface
(port A)
)
(contents
========== (SCHEMATIC DESCRIPTION)
)
)
)
------------------------- AN ICON, SCHEMATIC, AND LAYOUT -------------------------
(cell XXXXX (cellType GENERIC)
(view layout (viewType MASKLAYOUT)
(interface
(port A)
(protectionFrame)
(contents
========== (LAYOUT DESCRIPTION)
)
)
(view schematic (viewType SCHEMATIC)
(interface
(port A)
(contents
(page SH1
========== (SCHEMATIC DESCRIPTION)
)
)
)
(view symbol (viewType SCHEMATIC)
(interface
(port A)
(symbol
========== (ICON DESCRIPTION)
)
)
(contents
(page SH1
========== (SCHEMATIC DESCRIPTION AGAIN!!!)
)
)
)
)
Methods inherited from class com.sun.electric.tool.io.input.Input |
changesQuiet, closeInput, eofDuring, getAKeyword, getInputPreferences, getLine, getLineFromBinary, getProgressNote, getRestOfLine, importLibrary, initKeywordParsing, isBreakCharacter, isChangeQuiet, isNewLibraryCreated, openBinaryInput, openStringsInput, openTextInput, preprocessLine, readWholeLine, setProgressNote, setProgressValue, startProgressDialog, stopProgressDialog, updateProgressDialog |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
importALibrary
protected Library importALibrary(Library lib,
Technology tech,
java.util.Map<Library,Cell> currentCells)
- Method to import a library from disk.
- Overrides:
importALibrary
in class Input
- Parameters:
lib
- the library to fillcurrentCells
- this map will be filled with currentCells in Libraries found in library file
- Returns:
- the created library (null on error).