110 likes | 274 Views
Experiences and Progress with OpenAccess at LSI. Donald Amundson, Khosro Khakzadi, Scott Peterson LSI Logic. OpenAccess Interoperability Workshop March 3 , 2003. LSI OpenAccess 2002 Projects. GDS Importer Translates GDS -> OpenAccess Viewer Graphical viewer of physical design data
E N D
Experiences and Progress with OpenAccess at LSI Donald Amundson, Khosro Khakzadi, Scott Peterson LSI Logic OpenAccess Interoperability Workshop March 3, 2003
LSI OpenAccess 2002 Projects • GDS Importer • Translates GDS -> OpenAccess • Viewer • Graphical viewer of physical design data • Python for OpenAccess • Python extensions for using the OpenAccess API • Donated to Si2, available off OpenEDA.org
Development Environment • Multiple Platforms • Windows 2000 • Primary Development • SunOS 5.8 • Primary Target • Linux • Future Target • Single Source Code • Internal CVS Repository • wxWindows Graphics Package
Viewer Summary • Generic Platform for adding viewer • Three initial types: Command, DataBase, File • Tcl based command language • All actions are scriptable • All menus and toolbars configurable
Viewer Command Summary • Full set of Zoom and Pan commands • Select and Report commands • Implemented with OA Extensions • Display Attribute commands • Color and Fill patterns • Data Persistently saved using OA Extensions • Multiple window support
Performance based on Medium testcase Used wall time measurements on idle machine Viewer Performance 165,000
API Header Files Hint Information Extension Code Python for OpenAccess • The API is large • Need to auto-generate the extension code • Goals • Each OA type be a real Python type • Generate code directly from header files • Reduce maintainance with code updates • Python API to match C++ API as much as possible Code Generator
Python for OpenAccess • Almost the entire OA API is available • Each OA class is a Python Type • OA member functions are Python members • Templated Extension objects • Virtual functions on oaRegionQuery and Callback classes • API enhancements • oaIter is translated to a Python iterator type. • Details of the mapping are in the documentation
LSI OpenAccess 2003 • OpenAccess V2 • Updated Python Interface • Additional capability • Documentation • oaTracer application • Converting internal translators • Verilog In/Out • GDS2 In/Out • Adding additional features to Graphical Viewer • Printing / Plotting capability • Usability features • Pop-up help messages
Summary • Future Work • Convert additional internal translators • Extend Graphical Viewer capabilities • Edit features • Embedded Python interface