Перейти к содержанию
    

Из SolvNet

 

createNplace_bondpads.txt

 

Download the file "createNplace_bondpads.pl" and change the permissions to

executable.

 

Edit the createNplace_bondpads.pl file HEADER section per your design

specifications.

 

#Header

#-------------------------------------------------------------#

$stagger_bond = 1;

$bond1_master = "PADIZ40.FRAM";

$bond2_master = "PADOZ40.FRAM";

$bond1_instance = "sbond";

$bond2_instance = "lbond";

$bond1_pad_height = 89.8;

$bond2_pad_height = 204.8;

$bond_pad_width = 40;

$signal_pad_width = 40;

$x_origin_shift = 0;

$y_origin_shift = 0;

#-------------------------------------------------------------#

 

Hints for setting values:

 

If the design is an in-line structure, you need to only supply bond1_*

variables. Bond2_* variables are not used by the script if you set stagger to 0.

 

x_origin_shift/y_origin_shift = if the bond pad boundary left-bottom corner is

not zero, you need to set this variables, if it coincides with (0,0) then set

to 0 and 0

 

You can also supply variables as command line options.

 

 

Dump the I/O placement file with using following command and options from

Apollo and Astro:

-------------------------------------------------------------------

axgDumpPlacement

setToggleField "Dump Placement" "Type" "io" 1

setFormField "Dump Placement" "Output Filename" "io_placement.dump"

formOK "Dump Placement"

-------------------------------------------------------------------

 

Remove the lines corresponding to the corner pads from the io_place.dmp file

and the createNplace_bondpads.pl script produces a -pfile argument. This script

creates a file called addbumppadsNplace.cmd or the file name given for the

command line option -out. You can load this file directly from the Apollo and

Astro command line. Make sure you have saved the cell before loading the

command file.

 

If you find misalignment in bond placement, fine tune the variables in the head

section or command line options. Re-run the script to generate the command

file. Open the previously saved CEL file and re-load the newly generated

command file.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пады в RTL-коде не нужны, их просто расставить скриптом, по координатам. Как и сами ио ячейки собственно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо за скрипт. Завтра опробую.

Планирую делать так:

1. В RTL добавляю ио ячейки. Общее количество выводов порядка 240, для ввода/вывода используется 180. Остальные задействую для питания коре и ио ячеек, подключив их к VDD, VCC, PVDD, PVCC etc.

2. В floorplanner создаю коре и скриптом расставляю ио ячейки с минимальным шагом каждую в соответствии с требуемой цоколевкой. Более производительного способа случайно нет? Как их, кстати, расставлять, чтобы они потом с падами совпали (как определить начальные координаты)? Core-to-border задавать равным размеру требуемым под пады?

3. Добавляю пины в коре. Пинами станут выводы ио ячеек?

4. Выгружаю пины командой axgDumpPlacement - результирующий файл подсовываю createNplace_bondpads.pl. В результате получаю скрипт создающий кольцо падов?

5. Запускаю скрипт в Астро. В результате добавятся пады и автоматически присоединятся к выходам соответствующих ио ячеек?

Так правильно?

В чем тогда смысл tdf файла?

Изменено пользователем starley

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...