A routing program length method for positioning unit pins in a
hierarchically designed VLSI chip first identifies unit pin positions
initially assigned in a hierarchical VLSI design that, if implemented,
would increase the net length of the net of which the unit pins are a
part. To identify unit pins, where the unit pin position assigned by the
unit designer turns out to be a poor choice of position when the unit is
integrated into the top level design, a "flat" file is created of the
completed VLSI design with the units positioned on the chip, including
their pin placements as assigned by the unit designers. The flat file
includes not only top level unit data and unit-to-unit net data, but also
macro data and macro net data integral to each unit design. The flat
design data file is used to generate two pin logs; one pin log includes
the Incremental lengths of each net including the incremental lengths
associated with the unit pins (if any) assigned by the designers of the
units. The other pin log is the same, except it does not include the unit
pins and the incremental net length associated with the unit pins. A
commercially available program, for example, a Minimum Spanning Tree (MST)
program or a Steiner Minimal Tree program is run against every net; once
against the nets in the pin log list that includes the pins assigned by
the designers of the units, and once against the nets in the pin log list
that does not include assigned unit pins. The output of interest of the
MST (or similar program) run against the net files with and without pin
assignments is a text file containing the net names, number of pins per
net with and without unit pins and the difference between the net lengths
with and without unit pin assignments. If the difference exceeds a
threshold value a router program is run in isolation against each net
without unit pins. Pins are placed where the wiring route for the net
crosses each unit boundary.
Метод длины программы трассы для располагать штыри блока в иерархически конструированном обломоке vlsi сперва определяет первоначально заданные положения штыря блока в иерархической конструкции vlsi, если снабжено, увеличила бы сетчатую длину сети, то которой штыри блока будут частью. Для того чтобы определить штыри блока, куда положением штыря блока заданным конструктором блока поворачивает вне для того чтобы быть плохой выбор положения когда блок интегрирован в конструкцию высшего уровня, "плоско" архив создан законченной конструкции vlsi при блоки расположенные на обломок, включая их размещения штыря как задано конструкторами блока. Плоский архив вклюает not only данные по блока высшего уровня и данные по блок-к-bloka сетчатые, но интеграл также macro данных и данных по макроса сетчатый к каждому блоку конструирует. Плоский архив проектныа данные использован для того чтобы произвести 2 журнала штыря; один журнал штыря вклюает дифференциальные длины каждой сети включая дифференциальные длины связанные при штыри блока (если любой), то заданные конструкторами блоков. Другой журнал штыря этим же, кроме того что он не вклюает штыри блока и дифференциальную сетчатую длину связанные с штырями блока. Коммерчески имеющяяся программа, например, минимальная spanning программа вала (MST) или программа вала Steiner минимальная бежится против каждой сети; раз против сетей в списке журнала штыря вклюает штыри задали конструкторами блоков, и раз против сетей в журнале штыря список который не вклюает задавал штыри блока. Выходом интереса MST (или подобной программы), котор побежали против архивов сети с и без штыревыми идентификациями будет архив текста содержа сетчатые имена, количество штырей в сеть с и без штырей блока и разницы между сетчатыми длинами с и без штыревыми идентификациями блока. Если разница превышает, то порогового значение программа router бежится в изоляции против каждой сети без штырей блока. Штыри помещены где трасса проводки для сети пересекает каждую границу блока.