Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Method for Detecting Non-Routable Pins in Digital Integrated Circuit (IC) Design

IP.com Disclosure Number: IPCOM000202404D
Publication Date: 2010-Dec-15
Document File: 6 page(s) / 182K

Publishing Venue

The IP.com Prior Art Database

Abstract

A method for detecting non-routable pins in an abstract of a physical block in a digital IC design is disclosed. The abstract includes metal blockage information, pin information and power information for corresponding Random Logic Macros (RLMs). Based on the metal blockage information over or near the pins in the abstract, one or more non-routable pins are detected before wiring is performed.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 54% of the total text.

Page 01 of 6

Method for Detecting Non-Routable Pins in Digital Integrated Circuit (IC) Design

Disclosed is a method for detecting non-routable pins in an abstract. Figure 1 illustrates the method for detecting non-routable pins in an abstract. The method begins with the creation of a pinlist which contains information about all pins in the design. The pinlist is generated from the physcell corresponding to the abstract. The physcell includes information such as size of a macro, circuit row definition, pin name, location, layer and size. Additionally, a layerlist is also created which contains information on whether any given track is available for routing on a given layer. The layerlist is created based on contract view which contains the track numbers which can be used for routing on all available layers and information related to methodology rules. Examples of information related to methodology rules include, but are not limited to, number of layers, order of layers, layer direction, layer track width, and the power tracks in each circuit row on each layer.

(This page contains 00 pictures or other non-text object)

Figure

Based on the pinlist and layerlist created, the method and system determines one or more blocked pins as illustrated in the figure. For each pin in the pinlist corresponding to a layer, a check is performed to determine the availability of a track the layer. In case the track is available, a check for orthogonal routability is performed. If the check fails, the pin is determined to be blocked. On the other hand, if the track is not available, a check is performed to determine if a track in the adjacent layer is available. If no track is available even in the adjacent layer, the pin is determined to be blocked. However, if

1


Page 02 of 6

a track in the adjacent layer is available, a check for orthogonal routability is performed. If the check passes, the pin is determined as routable. However, if the check for orthogonal routability fails, the pin is determined as blocked and hence non-routable.

A detailed algorithm for detecting blocked pins in accordance with the method disclosed herein is as follows.

START: for each pin P in pinlist, # say we are working on M2;

If (P x) track available
Yes

     check for orthogonal routability (P layer) No

If ([ P x ] -1) # If M1 layer track available on the pin P No

## Pin P is blocked

     
Go to START
Yes
if ( any pin available in ([ P x ] - 2*n ) at chg

pin is bloc...