реклама на сайте
подробности

 
 
> Снова Altium и FPGA (Xilinx), Скрипт, который может помочь многим...
bms
сообщение Mar 16 2012, 14:55
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 203
Регистрация: 11-08-05
Пользователь №: 7 545



Тема поднята в продлжение разговора в ветке http://electronix.ru/forum/index.php?showtopic=97632
Там вопрос так и не решился...

В поисках решения проблемы экспорта пинаута в файл ucf (кто знаком с FPGA от Xilinx - меня поймут) набрел на скрипт, который в принципе должен решать эту (и не только) проблему. И он даже немного ее решает.
Скрипт лежит тут: http://altium-designer-addons.googlecode.c...rTools_v3.0.zip

Проблема в том, что лично у меня этот скрипт заработал "частично". Т.е. экспорт он выполняет, но как-то уж очень выборочно... В моем случае имеется многолистовой проекте, где FPGA разбит на несколько партов. Парты находятся на разных листах схемы. Скрипт по непонятной логике выбирает какой-то один парт (не первый и не последний) и для него генерит ucf-файл. Генерит правильно. Но не для всего FPGA, а только для "понравившегося" кусочка. Всего остального как-будто и нет...
Скрипт заточен на разных производителей FPGA, я использую Xilinx, поэтому проверял работу скрипта в режиме экспорта для этого производителя. Возможно для, например, плисов от Altera он работает нормально...

Сам я в Delphi не силен, но может найдется человек, который "допилит" этот скрипт до нормального состояния? Ну или подскажет куда смотреть. Уверен, что этот скрипт был бы полезен очень многим разработчикам. Если бы работал нормально sm.gif

Заранее благодарен.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
gammanoid
сообщение Jan 11 2013, 08:05
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 63
Регистрация: 1-03-05
Из: г.Ростов-на-Дону
Пользователь №: 2 988



В очередном проекте появилось желание автоматизировать создание UCF для Xilinx в AD.
Скрипт VendorTools_v3.0 из google code - пропускал много выводов.
Вместо того, чтобы тратить время на ручное набивание UCF, и то я не большой знаток Delphi и API Альтиума,
все же решил попытаться поправить VendorTools_v3.0 под реальную задачу.

Может найдется кто потестировать и отправить коммит в Google Code.

Вот что у меня получилось.

Модифицированная версия на базе VendorTools_v3.0
  1. Добавлена переменная Net Tolerance для поиска метки на цепи подходящей к выводу.
    Она почему-то в метрической системе "плавает" и не точно "ложится" на цепь.
    Возможно что цепь не точно подводится к пину элемента.
  2. Добавлена возможность изменять Wire Length при экспорте UCF.
    Вроде бы так надежнее ищет метки цепей около выводов.
    В оригинальном скрипте было фиксированное значение 30000000,
    исчисляемое во внутренних "попугаях" (cInternalPrecision в 0,1 микродюймах).
    Было (пример для Pin.Orientation = eRotate180):
    Код
    NetItr.AddFilter_Area(Pin.Location.X - 30000000, Pin.Location.Y - 1, Pin.Location.X + 1, Pin.Location.Y + 1)

    Стало (пример для Pin.Orientation = eRotate180):
    Код
    GridSizeMM := CoordToMMs(SchDoc.VisibleGridSize);
    WireSizeMax := StrToInt(EditLength.Text) * GridSizeMM;
    WireSizeMin := 1;
    if Pin.Orientation = eRotate180 then
    begin
      X1 := Pin.Location.X - MMsToCoord(WireSizeMin);
      Y1 := Pin.Location.Y - MMsToCoord(WireSizeMin);
      X2 := Pin.Location.X + MMsToCoord(WireSizeMax);
      Y2 := Pin.Location.Y + MMsToCoord(WireSizeMin);
    end
            
    NetItr.AddFilter_Area(X1,Y1,X2,Y2);

    Т.е. по вертикали "окно поиска метки" расширено с 0,1 микродюйма до ±1 мм,
    а по горизонтали - до величины, заданной в поле Wire Length в единицах видимой сетки.
  3. Добавлена поддержка экспорта в xdc файл для Vivado
  4. Добавлена возможность сортировки ucf/xdc по имени цепи.
  5. Для отладки, при экспорте в Xilinx, создается второй файл с выводами элемента, у которых не обнаружено Net Label.


З.Ы. Почему-то мне попался для правки VendorTools_v3.0 и уже после своих доработок обнаружил более новую версию VendorTools_v3.5 by Caludio Veronesi
Глянул на изменения в коде - мне кажется его изменения незначительны для ликвидации пропусков.

Прикрепленные файлы
Прикрепленный файл  VendorTools_v3.1.zip ( 13.58 килобайт ) Кол-во скачиваний: 39
 
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 21:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01369 секунд с 7
ELECTRONIX ©2004-2016