ADP Hierarchy Editor
Concept/Purpose
The Hierarchy Editor window has been introduced in the Laker™ Advanced Design Platform (ADP) to allow easy switching among view types for netlists. Users can create the configuration to specify the binding view for each cell/instance and then review the binding for the whole design on the cell level, instance level or each level through the entire hierarchy via the Table View or the hierarchy Tree View. The binding configuration is saved as a config view in ADP.
Usage
In the ADP main window, invoke the File > Open command to open the Open Cell form. Select a mapped library in the Library field, and then select a top cell that you would like to create a configuration view for. The New Cell View form opens after you right-click on the selected cell and then select the New command from the right mouse button command menu. Click the View Type selection field to see that the Configuration view type is available. Choose this option and click OK to generate a configuration view for the selected cell.
Figure 1: Create New configuration View via New Cell View Form
Alternatively, you can select the library and cell in the Open Cell form, and simply enter the string config in the View text field and then click OK to create the configuration view.

Figure 2: Create New Configuration View via Open Cell Form
After creating the configuration view, a New Configuration form will be opened for you to specify the global binding rule. The library and cell can also be changed in this form if needed.

Figure 3: Specify Global Binding Rules
The pre-defined templates in ADP can be applied for the global binding rule. Click the Template button to open the Use Template form and then select the template in the Name selection field or specify a template file path in the From File text field. Currently ADP provides 6 templates: AMS, eldo, hspice, smartspice, spectre, and verilog.

Figure 4: Specify Pre-defined Templates
After a configuration view has been created, you can see the configuration view (config) will be available in the View field of the Open Cell form (invoked from the File > Open command in the ADP main window).

Figure 5: Open Created Configuration View
When opening a created configuration view, an Open Configuration or Top Cell dialog window will be opened to ask which view you would like to open. Select yes on the Configuration option to open the Hierarchy Editor window (refer to Figure 13) for browsing the design hierarchically and defining binding rules. Select yes on the Top Cell option to open the Schematic Editor window (refer to Figure 7) for showing the design schematics.

Figure 6: Open Configuration or Top Cell Dialog Window
If the Schematic Editor window is opened in this way, a special icon will be shown on the design hierarchy top to indicate the design has been configured.

Figure 7: Schematic Editor Window
Set Bindings in the Hierarcy Editor
There are three levels of bindings that can be set in the Hierarchy Editor window to assist in cell view switching:
- Global Bindings: bindings at the global level. The View List information of global bindings will be inherited by cell and instance bindings as the Inherited View List. The Stop List information of global bindings will also be referenced by cell binding and instance binding. When a cell or instance is bound to a cell view and the bound cell view is in the Stop List, the cell or instance will be treated as a leaf cell and stop expanding to next hierarchy.
- Cell Bindings: bindings at the cell level. Cell bindings are effective on all instances which reference the same master cell.
- Instance Bindings: bindings at the instance level. This is only effective on the instance.
At any node of a design hierarchy (e.g. an instance or a cell) the View Found information shows the binding cell view of the instance or the cell. The View Found information can be set by one of the following three methods:
- Directly enter the view name in the View to Use field.
- Select the view type under the Set Cell View command (invoked by right-clicking in the targeted cell row in the Cell Bindings section on the Table View tab) or select the view type under the Set Instance View command (invoked by right-clicking in the targeted instance row in the Instance Bindings section of the Table View or Tree View tabs).
- The first view found in the search to the Inherited View List.
Except for the Stop List in the Global Bindings pane, a stop point can also be set manually by selecting the Add Stop Point command from the right mouse button command menu, invoked by right-clicking in the targeted cell row in the Cell Bindings section of the Table View tab or by right-clicking in the targeted instance row in the Instance Bindings section of the Table View or Tree View tabs. The Remove Stop Point command can remove the stop point added by the Add Stop Point command.

Figure 8: Add Stop Point
You will need to re-compute the whole hierarchy by clicking the Update toolbar icon when modifying global, cell or instance bindings. The Update Needed toolbar icon will be highlighted in red automatically if re-computing is needed.

Figure 9: Set Global Bindings
To set cell bindings, you can right-click in the row of the Cell Bindings field under the Table View tab, and select the desired view type under the Set Cell View command. After clicking the Update Needed icon, the binding will be set and reflected to the design throughout the entire hierarchy. You can see the change when clicking the Tree View tab to see the instance hierarchy.

Figure 10: Set Cell Bindings
To set instance bindings, you can right-click in the row of the Instance Bindings field under the Table View tab (if the option Show Instance Bindings option has been turned on), and select the desired view type under the Set Instance View command.

Figure 11: Set Instance Bindings in Table View
Alternatively, you can select the Tree View tab to view the complete instance hierarchy, and then right-click on the instance node to set the view type under the Set Instance View command.

Figure 12: Set Instance Bindings in Tree View
For both Cell Bindings and Instance Bindings, if the view type string is marked as blue then it means the view type is set by users in the View to Use field; if the view type is marked as black then it means the view type is inherited from the Inherited View List; if the view type is marked as red then it means the view type cannot be found. The priority of the binding is: Instance Bindings > Cell Bindings > Global Bindings.
After all bindings are set, select the command Cell > Save in the Hierarchy Editor window or click the Save toolbar icon to save the configuration. All changes and bindings will be saved to the opened config view.
Browse Design Hierarchies in the Hierarchy Editor
The Hierarchy Editor window will be opened if you open the configuration view. In the Hierarchy Editor window, select the Table View tab to view all cells which have been used in the specified Top Cell throughout the entire hierarchy in a table view. Each row shows the Library name, Cell name, View Found, View to Use, and the Inherited View List. The View Found column shows the view type that has been actually used in this cell; the View to Use column is for users to enter the view name manually; the Inherited View List column shows the view list which was set by users or inherited from the View List of the Global Bindings.
Enable the Show Instance Bindings option at the bottom of the window to expand the window with an extra table, which lists all instances under the selected cell in the Cell Bindings table.

Figure 13: Hierarchy Editor Window - Table View
Select the Tree View tab of the Hierarchy Editor window to browse the instance based hierarchy of the cell, which shows all instances which have been used under the top cell and their hierarchies. Click on the + icon or – icon on the hierarchy to expand or collapse the node.

Figure 14: Hierarchy Editor Window - Tree View

