Часть 9: ИНСТРУМЕНТЫ
9-8: Генерация фрейма контактных площадок |
Генератор фрейма контактных площадок читает дисковый файл и размещает кольцо площадок вокруг вашего чипа. Площадки хранятся в отдельной библиотеке и компилируются в текущую библиотеку для создания фрейма площадок.
Формат дискового файла фрейма площадок следующий:
|
; идентифицирует файл с площадками |
|
; создает фасет для поддержки фрейма площадок |
|
; размещает вашу схему в центре фрейма площадок |
|
; определяет входные и выходные порты на площадках |
|
; помещает площадку во фрейм площадок |
|
; поворачивает угол в размещении площадки |
Файл должен иметь точно одинаковые
celllibrary
и facet
заявления,
поскольку они идентифицируют библиотеку
площадок и фасет фрейма площадок. Если
строка celllibrary заканчивается
ключевым словом copy
, тогда фасеты
из этой библиотеки копируются в библиотеку
с кольцом площадок (по умолчанию они
только иллюстрированы, создавая
кросс-библиотечную ссылку на библиотеку
площадок). Файл может иметь только одно
core
заявление для размещения
вашей цепи верхнего уровня внутри фрейма
площадок. Если нет заявления core
, тогда площадки размещаются без
какой-либо схемы в середине.
Заявление align
используется для
идентификации точек соединения на
площадках, которые будут использованы
при размещении. Каждая площадка должна
иметь входной и выходной порт, определяющие
края площадки. Эти порты обычно на
питающих и земляных шинах, которые
проходят через площадку. Когда размещаются
площадки, выходной порт одной площадки
соотносится со входным портом следующей
площадки.
Каждая площадка, которая размещена с
заявлением place
пристраивается
к предыдущей площадке соответственно
фактору расположения. Может быть дан
пробел (gap) в размещении, который
разбрасывает две площадки на указанное
расстояние. Например, заявление:
place padIn gap=100
требует, чтобы площадка "padIn" была расположена так, чтобы ее входной порт оказался на 100 единиц лямбда отдален от выходного порта предыдущей площадки.
Если был дан фасет ядра facet, вы можете
также указать соединение между площадками
и портами ядра. Это сделано получением
одного или более соединений порта
(port associations) в заявлениях place
. Формат связи порта - это просто PADPORT
= COREPORT
. Например, заявление (statement):
place padOut tap=y
указывает, что порт "tap" на размещенной площадке будет соединен с портом "y" на фасете ядра.
Соединение порта может также создать экспорт на площадке. Заявление:
place padOut export
tap=o7
создает экспорт на площадке из ее порта "tap" и называет его "o7".
Заявление rotate
поворачивает
последующие площадки на указанную
величину. Заявление имеет только две
формы: rotate c
- поворот по часовой
стрелке, и rotate cc
- поворот против
часовой стрелки.
Вот пример дискового файла фрейма площадок с законченной компоновкой. Файл массива - "pads4u.arr" (из папки "Examples"), и он ждет нахождения фасета, названного "tool-PadFrame" (находящегося в библиотеке "samples.txt", которую вы можете прочитать субкомандой Readable Dump команды Import меню File).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Этот файл размещает 8 площадок в кольцо (2 на каждой стороне), и также размещает угловые "площадки" для создания изгиба. Входные площадки соединяются с 2 входными портами "a1" и "a2". Выходные площадки соединяются с 3 выходными портами "out1", "out2" и "out3". Площадки питания и земли соединяются с портами "vdd" и "gnd".
Заметьте, что генератор размещает образцы площадок, но не соединяет их друг с другом. В порядке создания единообразного кольца питания и земли между площадками, вы можете использовать автотрассировщик (Auto-router) или имитатор (Mimic-router) (см. раздел 9-5).
Соединения между площадками и портами фасета ядра используют Unrouted arcs (из Generic технологии, см. раздел 7-9). Эти дуги могут быть конвертированы в реальную геометрию потоковым трассировщиком (river router). Чтобы это сделать вы должны выбрать дуги на одной стороне фрейма площадок и использовать субкоманду River-Route команды Routing меню Tools (см. раздел 9-5, где больше о трассировке). Поскольку потоковый трассировщик всегда подгоняет геометрию влево и вниз, это будте работать только для левой и нижней сторон. Для поворота верха и правой стороны вы должны повернуть всю схему (выберите все и поверните на 180 градусов). После поворота верха и правой стороны (теперь левой и низа) вы можете вернуть схему в ее оригинальную позицию. Законченная компоновка показана здесь, полностью проиллюстрированная. |
|
|