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

 
 
12 страниц V  < 1 2 3 4 > »   
Reply to this topicStart new topic
> Методика применения I/O_Designer
SM
сообщение Sep 17 2009, 09:17
Сообщение #16


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Подскажите пожалуйста такую вещь по IOD:

- ПЛИСка Lattice LFXP2-5E-5MN132

Есть входная цепь "INCK", стандарт IO LVDS25, которая должна быть подключена на входной сигнал одной из двух PLL.
Я ставлю ей стандарт LVDS25, ставлю тип PLLDIFF, после чего assign говорит, что нету таких пинов. Хотя я то точно знаю, что есть, а именно
PT8A__ULC_GPLLT_IN_A__True_of_PT8B / PT8B__ULC_GPLLC_IN_A__Comp_of_PT8A
и второй вариант - PB26A__LRC_GPLLT_IN_A__True_of_PB26B / PB26B__LRC_GPLLC_IN_A__Comp_of_PB26A

В чем дело и как правильно тут поступить?

Дальше хуже. Кроме этого есть еще пины IN, тоже LVDS25, и это та же физическая цепь, что и INCK (ну т.е. входной сигнал должен прийти одновременно и на dedicated вход PLL-ки, и на generic IO. Ну надо так. Там ШИ-модулированный 150-Мбитный поток данных), и правило по ее размещению - должна быть в том же банке, что и INCK. Тоже не понял, как это задать.
Go to the top of the page
 
+Quote Post
Vadim
сообщение Sep 17 2009, 09:25
Сообщение #17


Неиодный дизайнер
*****

Группа: Свой
Сообщений: 1 240
Регистрация: 1-12-04
Из: Минск
Пользователь №: 1 273



Цитата(disel @ Sep 16 2009, 06:43) *
Исключение человеческого фактора. Вероятность ошибки при вводе м\сх с 1000 ногами далека от нулевой, а ее цена очень высока.

Да-да. Людям следует доверять только в самом крайнем случае (Це)
Число пинов растет как на дрожжах smile.gif
Цитата(disel @ Sep 16 2009, 06:43) *
Создать универсальный символ для ПЛИС невозможно, поскольку в каждом проекте свои сигналы, разные питания. И соответственно разные группы свапа.

Второй раз повторяю - берем даташит и тупо создаем символ. Сигналы и питания назначаем при рисовании схемы. Назначение различных групп свапа вообще бесполезно, об этом тоже уже говорилось. Кроме того, группы свапа назначаются в pdb и никак не могут повлиять на создание символа.
Цитата(disel @ Sep 16 2009, 06:43) *
Например есть группа ног для ЦАПа, они 3,3В, им заданы банки 1-2 где они могут свапиться, есть ноги АЦП, они ЛВДС, т.е.2,5В им заданы банки 3-4. И нужно поменять местами. Или для ЦАП отдать 1,3. А еще есть клоки которые должны попадать на клоковые ноги, МГТ с его питанием, и т.д.
В ИОД все это делается элементарно, в нем уже вся информация о плис. Без него все вручную, долго, непроизводительно, и при этом есть вероятность ошибки.

Это Ваш ответ на вопрос о сигналах на этапе создания компонента? Первый раз слышу о сигналах в символе и pdb(кроме сигналов питания). Старею, наверное.
Цитата(disel @ Sep 16 2009, 06:43) *
Каждый волен расставлять вокруг себя любые грабли.

Совершенно верно. Особенно если разработчик настолько неуверен в своих действиях, что мысль о свапе двух пинов вызывает страх.
Цитата(disel @ Sep 16 2009, 06:43) *
Удачи.

Действия я привык совершать осознанно и нести полную ответственность за их последствия, так что по крайней мере в вопросах свапа она мне вряд ли понадобится, тем не менее спасибо, и Вам тоже удачи smile.gif


--------------------
SPECCTRA forever! IO/Designer forever!
Go to the top of the page
 
+Quote Post
Inpharhus
сообщение Sep 17 2009, 09:29
Сообщение #18


Частый гость
**

Группа: Свой
Сообщений: 167
Регистрация: 7-02-08
Из: Ростовская обл.
Пользователь №: 34 835



Цитата(SM @ Sep 17 2009, 13:17) *
Есть входная цепь "INCK", стандарт IO LVDS25, которая должна быть подключена на входной сигнал одной из двух PLL.
Я ставлю ей стандарт LVDS25, ставлю тип PLLDIFF, после чего assign говорит, что нету таких пинов. Хотя я то точно знаю, что есть, а именно
PT8A__ULC_GPLLT_IN_A__True_of_PT8B / PT8B__ULC_GPLLC_IN_A__Comp_of_PT8A
и второй вариант - PB26A__LRC_GPLLT_IN_A__True_of_PB26B / PB26B__LRC_GPLLC_IN_A__Comp_of_PB26A

Рискну предположить что нужные пины имеют переключаемый тип и он в данный момент отличный от PLLDIFF, хотя я не совсем понял что именно вы делаете, да и IOD под рукой нет.

Цитата(Vadim @ Sep 17 2009, 13:25) *
Второй раз повторяю - берем даташит и тупо создаем символ. Сигналы и питания назначаем при рисовании схемы. Назначение различных групп свапа вообще бесполезно, об этом тоже уже говорилось. Кроме того, группы свапа назначаются в pdb и никак не могут повлиять на создание символа.

Кому бесполезно, а кому нет. IOD генерит не только символ, но и pdb, главное не забыть о создании cell с указанным IOD именем.
Вот кстати удивляюсь этому, что сложно было интегрировать в IOD сразу все необходимые cell'ы? Нарисовать не сложно, но время...
Цитата(Vadim @ Sep 17 2009, 13:25) *
Это Ваш ответ на вопрос о сигналах на этапе создания компонента? Первый раз слышу о сигналах в символе и pdb(кроме сигналов питания). Старею, наверное.

IOD на выходе может создавать схематик с символами и уже присоединенными цепями к пинам.

Сообщение отредактировал Inpharhus - Sep 17 2009, 09:37
Go to the top of the page
 
+Quote Post
fill
сообщение Sep 17 2009, 09:33
Сообщение #19


Гуру
******

Группа: Модераторы
Сообщений: 4 361
Регистрация: 17-08-04
Из: КП Две Поляны
Пользователь №: 512



Цитата(SM @ Sep 17 2009, 13:17) *
Подскажите пожалуйста такую вещь по IOD:

- ПЛИСка Lattice LFXP2-5E-5MN132

Есть входная цепь "INCK", стандарт IO LVDS25, которая должна быть подключена на входной сигнал одной из двух PLL.
Я ставлю ей стандарт LVDS25, ставлю тип PLLDIFF, после чего assign говорит, что нету таких пинов. Хотя я то точно знаю, что есть, а именно
PT8A__ULC_GPLLT_IN_A__True_of_PT8B / PT8B__ULC_GPLLC_IN_A__Comp_of_PT8A
и второй вариант - PB26A__LRC_GPLLT_IN_A__True_of_PB26B / PB26B__LRC_GPLLC_IN_A__Comp_of_PB26A

В чем дело и как правильно тут поступить?



А вы в окне Pins на этих пинах установили нужный тип - я так понимаю они многозадачные?


--------------------
Чем больше познаю, тем больше понимаю ... насколько мало я все таки знаю.

www.megratec.ru
Go to the top of the page
 
+Quote Post
SM
сообщение Sep 17 2009, 09:37
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Inpharhus @ Sep 17 2009, 13:29) *
Рискну предположить что нужные пины имеют переключаемый тип и он в данный момент отличный от PLLDIFF, хотя я не совсем понял что именно вы делаете, да и IOD под рукой нет.


Я хочу соптимизировать подключение цепей к пинам исходя из заданных мной правил, как это показывал fill в ролике, где в IOD перенесено размещение компонентов на плате, и видны все цепи. Потом оттрассировать плату. После чего хочу сгенерировать verilog-шапку с получившимся назначением пинов, и начать писать описание устройства, реализованного в этой ПЛИС.

Цитата(fill @ Sep 17 2009, 13:33) *
А вы в окне Pins на этих пинах установили нужный тип - я так понимаю они многозадачные?

А там предлагают только DIFF или IO, а PLLDIFF нету. DIFF не катит, так как свопится с чем попало.... А можно как-то "custom" тип добавить или сделать просто DIFF, но добавить констрейн, что только либо эта пара, либо та? Да и как я уже понял, в окне Pins не надо тип выставлять, IOD сам смотрит, есть ли нужный тип в списке, и если есть, то коннектит.
Go to the top of the page
 
+Quote Post
Vadim
сообщение Sep 17 2009, 09:39
Сообщение #21


Неиодный дизайнер
*****

Группа: Свой
Сообщений: 1 240
Регистрация: 1-12-04
Из: Минск
Пользователь №: 1 273



Цитата(Inpharhus @ Sep 16 2009, 09:45) *
А в случае использования IOD даже не обязательно его качать, большинство ПЛИС уже в базе, надо только выбрать производителя, модель и корпус.

Конечно, не обязательно качать. Настоящие ковбои даташитов не читают (Це)
Цитата(Inpharhus @ Sep 16 2009, 09:45) *
Сколько времени надо для того чтобы "тупо повторить даташит"? В IOD тупо генерация символов проделывается минут за 5-10, плюс полчаса-час на подгонку под ГОСТ, и это речь о корпусе FF1760 например.

Символ, что ли, нарисовать? С 1760 ногами? Ой, как страшно biggrin.gif Ну допустим, за рабочий день справлюсь... Ну ладно, так и быть, специально для Вас - за два biggrin.gif А если меня посадят библиотекарем на постоянку, заточу соответствующий инструмент, и буду выдавать такие страшные символы ну максимум за пару часов. А что?
Цитата(Inpharhus @ Sep 16 2009, 09:45) *
А сколько времени нужно для создания компонента? Создание групп свопирования, сверка с даташитом каждого пина банка, питания и т.д... В IOD же просто надо по фильтру выделить все пины банка и пачкой определить в одну группу свопирования. И, как говорилось выше, исключение пресловутого человеческого фактора, ошибиться при ручном создании компонента элементарно.

Не, ну про свопирование и человеческий фактор я третий раз повторять не буду. Устал.


--------------------
SPECCTRA forever! IO/Designer forever!
Go to the top of the page
 
+Quote Post
Inpharhus
сообщение Sep 17 2009, 09:40
Сообщение #22


Частый гость
**

Группа: Свой
Сообщений: 167
Регистрация: 7-02-08
Из: Ростовская обл.
Пользователь №: 34 835



Цитата(SM @ Sep 17 2009, 13:37) *
А что - типы пинов переключать можно самому? Я думал IOD сам знает все варианты всех типов для всех пинов.

Не можно, а нужно smile.gif Он-то знает, соответственно доступны для переключения только доступные для этих пинов варианты.
Цитата(SM @ Sep 17 2009, 13:37) *
А там предлагают только DIFF или IO, а PLLDIFF нету. DIFF не катит, так как свопится с чем попало.... А можно как-то "custom" тип добавить или сделать просто DIFF, но добавить констрейн, что только либо эта пара, либо та?

Присвоить DIFF, выбрать 2 нужные пары пинов и присвоить им собственную группу свопирования.
Go to the top of the page
 
+Quote Post
fill
сообщение Sep 17 2009, 09:41
Сообщение #23


Гуру
******

Группа: Модераторы
Сообщений: 4 361
Регистрация: 17-08-04
Из: КП Две Поляны
Пользователь №: 512



Цитата(SM @ Sep 17 2009, 13:37) *
Я хочу соптимизировать подключение цепей к пинам исходя из заданных мной правил, как это показывал fill в ролике, где в IOD перенесено размещение компонентов на плате, и видны все цепи. Потом оттрассировать плату. После чего хочу сгенерировать verilog-шапку с получившимся назначением пинов, и начать писать описание устройства, реализованного в этой ПЛИС.


А там предлагают только DIFF или IO, а PLLDIFF нету. DIFF не катит, так как свопится с чем попало.... А можно как-то "custom" тип добавить или сделать просто DIFF, но добавить констрейн, что только либо эта пара, либо та? Да и как я уже понял, в окне Pins не надо тип выставлять, IOD сам смотрит, есть ли нужный тип в списке, и если есть, то коннектит.



Вообще-то IOD тип пина сам меняет только в случае изменения типа сигнала к нему подключенного. Т.е. если сигнал назначен нами в пин и мы поменяли тип сигнала.


--------------------
Чем больше познаю, тем больше понимаю ... насколько мало я все таки знаю.

www.megratec.ru
Go to the top of the page
 
+Quote Post
SM
сообщение Sep 17 2009, 09:45
Сообщение #24


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Inpharhus @ Sep 17 2009, 13:40) *
Присвоить DIFF, выбрать 2 нужные пары пинов и присвоить им собственную группу свопирования.

Ага, понял, спасибо. А как теперь поступить со второй частью вопроса - другой сигнал, который тоже DIFF, и правило для него "в том же банке, что и этот сигнал, но на любой дифпаре".

Цитата(fill @ Sep 17 2009, 13:41) *
Вообще-то IOD тип пина сам меняет только в случае изменения типа сигнала к нему подключенного. Т.е. если сигнал назначен нами в пин и мы поменяли тип сигнала.

Ну как же так? Я вот описал пачку сигналов типа DIFF, сделал Assign pins with overwrite им, и он сам все подключил, куда надо причем, и поменял тип с IO на DIFF.

ЗЫ.
А можно как-то руками залезть в БД IOD-а и вручную нужным пинам добавить тип PLLDIFF? IMHO это упростило бы жизнь...
Go to the top of the page
 
+Quote Post
fill
сообщение Sep 17 2009, 09:52
Сообщение #25


Гуру
******

Группа: Модераторы
Сообщений: 4 361
Регистрация: 17-08-04
Из: КП Две Поляны
Пользователь №: 512



Цитата(SM @ Sep 17 2009, 13:45) *
Ну как же так? Я вот описал пачку сигналов типа DIFF, сделал Assign pins with overwrite им, и он сам все подключил, куда надо причем, и поменял тип с IO на DIFF.


Ключевое слово Assign pins with overwrite - вы принудили назначить сигнал в пин не его типа - в текущей версии не проверял, но так можно было назначить и в пин который не может быть такого типа вообще rolleyes.gif .

Цитата
А можно как-то руками залезть в БД IOD-а и вручную нужным пинам добавить тип PLLDIFF? IMHO это упростило бы жизнь...


В принципе да, но надо изучать документацию. rolleyes.gif


--------------------
Чем больше познаю, тем больше понимаю ... насколько мало я все таки знаю.

www.megratec.ru
Go to the top of the page
 
+Quote Post
Inpharhus
сообщение Sep 17 2009, 09:55
Сообщение #26


Частый гость
**

Группа: Свой
Сообщений: 167
Регистрация: 7-02-08
Из: Ростовская обл.
Пользователь №: 34 835



Цитата(Vadim @ Sep 17 2009, 13:39) *
Символ, что ли, нарисовать? С 1760 ногами? Ой, как страшно biggrin.gif Ну допустим, за рабочий день справлюсь... Ну ладно, так и быть, специально для Вас - за два biggrin.gif А если меня посадят библиотекарем на постоянку, заточу соответствующий инструмент, и буду выдавать такие страшные символы ну максимум за пару часов. А что?

А то что вы сами ответили на вопрос целесообразности IOD - экономия времени. А если "заточить" IOD, то и подгонять под ГОСТы почти нечего будет...
Повторю еще раз - IOD одновременно генерит еще и pdb, а это тоже время.
В любом случае сомневаюсь что какой-либо заточенный инструмент будет быстрее IOD по отношению к фпга, кроме случаев выхода новых плис еще не включенных в IOD rolleyes.gif и то лишь до момента выхода соответствующих библиотек
Цитата(SM @ Sep 17 2009, 13:45) *
Ага, понял, спасибо. А как теперь поступить со второй частью вопроса - другой сигнал, который тоже DIFF, и правило для него "в том же банке, что и этот сигнал, но на любой дифпаре".

Ну наверно все оставшиеся дифпары банка объединить в другую группу свопирования и прицепить к какой-нибудь дифпаре этот сигнал.
Цитата(SM @ Sep 17 2009, 13:45) *
А можно как-то руками залезть в БД IOD-а и вручную нужным пинам добавить тип PLLDIFF? IMHO это упростило бы жизнь...

Если разберетесь в синтаксисе .\IOD\library\devices\... далее производитель, модель фпга и редактирование файла *.dev

Сообщение отредактировал Inpharhus - Sep 17 2009, 09:58
Go to the top of the page
 
+Quote Post
Vadim
сообщение Sep 17 2009, 09:56
Сообщение #27


Неиодный дизайнер
*****

Группа: Свой
Сообщений: 1 240
Регистрация: 1-12-04
Из: Минск
Пользователь №: 1 273



Цитата(Inpharhus @ Sep 17 2009, 12:29) *
Кому бесполезно, а кому нет. IOD генерит не только символ, но и pdb, главное не забыть о создании cell с указанным IOD именем.

IOD на выходе может создавать схематик с символами и уже присоединенными цепями к пинам.

Не понял, зачем Вы мне это рассказываете? То, что иод Вам не бесполезен, я уже понял. Все остальные возможности иода узнал во время плотного знакомства с ним, сразу после перехода на Expedition. Спешите поделиться радостью иодного просветления?


--------------------
SPECCTRA forever! IO/Designer forever!
Go to the top of the page
 
+Quote Post
SM
сообщение Sep 17 2009, 10:01
Сообщение #28


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(fill @ Sep 17 2009, 13:52) *
в текущей версии не проверял, но так можно было назначить и в пин который не может быть такого типа вообще rolleyes.gif .

Неа, не даеть... Только в пины, которые могут быть такими. Он по ходу физически не может переписать тип пина на тот, которого нет в списке.

Цитата(fill @ Sep 17 2009, 13:52) *
В принципе да, но надо изучать документацию. rolleyes.gif

Ну что же... Порою...
Go to the top of the page
 
+Quote Post
Vadim
сообщение Sep 17 2009, 10:01
Сообщение #29


Неиодный дизайнер
*****

Группа: Свой
Сообщений: 1 240
Регистрация: 1-12-04
Из: Минск
Пользователь №: 1 273



Цитата(Inpharhus @ Sep 17 2009, 12:55) *
Повторю еще раз - IOD одновременно генерит еще и pdb, а это тоже время.

Повторите третий раз, пожалуйста. Очень хочется еще раз почитать biggrin.gif А я пожалуй, третий раз повторять не буду. Не просто устал, а очень устал smile.gif Просто сделаю выводы и пойду работать.
Всем иодным дизайнерам - привет!!!


--------------------
SPECCTRA forever! IO/Designer forever!
Go to the top of the page
 
+Quote Post
SM
сообщение Sep 17 2009, 10:11
Сообщение #30


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Inpharhus @ Sep 17 2009, 13:55) *
Ну наверно все оставшиеся дифпары банка объединить в другую группу свопирования и прицепить к какой-нибудь дифпаре этот сигнал.

А я вот чего не понял - а можно пин держать одновременно в нескольких группах свопирования? Ну а цепь, соответственно, в одной? И где эти списки этих групп вообще задаются? В .dev-файле беглым разбирательством я не нашел групп свопирования.

Цитата(fill @ Sep 17 2009, 13:52) *
В принципе да, но надо изучать документацию. rolleyes.gif

Спасибо еще раз, и Impharus-у тоже за наводку на .dev файлы, там по ходу можно и свои новые типы добавлять тоже.
Go to the top of the page
 
+Quote Post

12 страниц V  < 1 2 3 4 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


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


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