oratie 0 4 марта, 2009 Опубликовано 4 марта, 2009 · Жалоба Из 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. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SM 0 4 марта, 2009 Опубликовано 4 марта, 2009 · Жалоба Пады в RTL-коде не нужны, их просто расставить скриптом, по координатам. Как и сами ио ячейки собственно. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
starley 0 4 марта, 2009 Опубликовано 4 марта, 2009 (изменено) · Жалоба Спасибо за скрипт. Завтра опробую. Планирую делать так: 1. В RTL добавляю ио ячейки. Общее количество выводов порядка 240, для ввода/вывода используется 180. Остальные задействую для питания коре и ио ячеек, подключив их к VDD, VCC, PVDD, PVCC etc. 2. В floorplanner создаю коре и скриптом расставляю ио ячейки с минимальным шагом каждую в соответствии с требуемой цоколевкой. Более производительного способа случайно нет? Как их, кстати, расставлять, чтобы они потом с падами совпали (как определить начальные координаты)? Core-to-border задавать равным размеру требуемым под пады? 3. Добавляю пины в коре. Пинами станут выводы ио ячеек? 4. Выгружаю пины командой axgDumpPlacement - результирующий файл подсовываю createNplace_bondpads.pl. В результате получаю скрипт создающий кольцо падов? 5. Запускаю скрипт в Астро. В результате добавятся пады и автоматически присоединятся к выходам соответствующих ио ячеек? Так правильно? В чем тогда смысл tdf файла? Изменено 4 марта, 2009 пользователем starley Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться