Search
»»»Home «««
Framework
Screenshots
FAQ
»»»TELL «««
Types
Operators
Functions
Example
»»»Toped «««
Database
Cells
Add
Select
Edit
Properties
Rendering
GUI
Miscellaneous
»»»Ifaces «««
GDSII
OASIS
CIF
DRC

Project framework

Toped is a C++ project, developed on Linux. Portability is among the main goals and it was one of the reasons for the library choices. Apart from the standard C++ libraries Toped uses

The project compiles on all major Linux distributions for 32-bit and 64-bit platforms. There is also a stable 32-bit Windows® version. The internal layout database is based on 32-bit integers.

Some modules like parsing, GDB processing, rendering, external interfaces are separated as dynamic libraries (on Linux). Toped uses multithreading. Below is an idea about the project structure

Diagram2.png

What was done

  • TELL parser

    • user defined types

    • lists and related operations

    • callbacks and recursion

  • layout database handling and rendering. All basic graphic types are implemented

    • box, polygon, wire

    • cell, array of cells

    • text

  • libraries with dynamic linking. Handling multiply GDBs and cell cross references.

  • validation and control of the layout objects

  • most of the common operations expected from an IC editor, including

  • undo without restrictions of the depth list

  • new layout format - integer based, fairly simple and about 2 times shorter than GDSII

  • GDSII import/export

  • CIF import/export

  • OASIS import

  • DRC viewer

  • logic operations implemented in the common (polygon) case

  • common GUI stuff

    • customised menus, dialog boxes, shortcuts

    • toolbars

    • on line hierarchical/flat cell tree panel

    • layer demo panel

    • technology editor

  • full session logs

  • recovery mode

  • Infrastructure for plug-in development

  • PS output

Next in the list

  • Parameterized cells

  • OASIS export

  • more GUI work

Development tools

The project is hosted by