Merge Inserted Cells in Clock Trees Automatically

Power saving tools will insert many gated cells on the clock line for balancing and saving power for flip-flops. For example, one gated cell may drive 16 registers. This will cause too many compressed register symbols to be displayed on the clock tree schematic view, and will make it difficult for the user to debug the clock tree since the user doesn't need to care about the auto inserted gated cells. Users need a way to merge the inserted cells to reduce the number of compressed register symbols and simplify the clock network; otherwise, it's hard to analyze complex clock trees.

The inserted cells are usually different from other standard cells, and users can specify the name for these inserted cells. Starting in Verdi 2009.07, an auto-merge mechanism is provided to merge these inserted cells with a specific cell name to resolve the above issue. The auto-merge capability is designed for analyzing the clock tree so it is only available in clock tree schematic windows, which can be created with the Tools > Clock Analyzer > Extract Clock Information command.

Here is an example demonstrating how to use this capability to merge inserted cells. The figure below shows a portion of an extracted clock tree schematic. Assume that the IVP cell is the inserted cell, but instance U249 (also an IVP cell) is an exception.

 

First, a rule needs to be defined to tell the Verdi system how to merge the schematic. In the View Trace Clock Tree Result window (the clock tree schematic window), invoke the Tools > Options > Auto Merge Setting command to open the Auto Merge Cell Settings form. Type IVP in the Merged Cell List text field and click the Add button to define the cell name which needs to be merged. Then type system.i_cpu.i_ALUB.U249 in the Excluded Instance List text field and click Add to specify the excepted instance name from all IVP cells.

 

After defining the setting, select (enable) the Tools > Options > Auto Merge Cell command in the clock tree schematic window to execute the auto-merge. The following figure shows the results after auto-merge. All IVP cells except instance U249 have been merged and all the compressed register symbols following these cells have also been merged. The exception is the compressed register symbol following U249.

 

The merged cell and compressed register symbols can be un-merged by selecting (disabling) the Tools > Options > Auto Merge Cell command again.

The merge rules can also be set in the Preferences form so that all clock tree schematics will be merged automatically based on the defined rules - each time the clock tree schematic is created. To create a rule definition file, click the Save button in the Auto Merge Cell Settings form after all settings are complete. This will open a browser where the settings can be saved to a text file. To use the rule definition file, enable the Auto Merge Cell Group When Creating New Schematic Window option on the Schematic > nAnalyzer tab of the Preferences form (invoked with Tools > Preferences) and then specify the merge rule file you just saved. The merge rules will be applied to the newly opened clock tree schematic windows automatically next time you open a clock tree schematic window. The preference setting is also saved to the novas.rc resource file.