|
|
  |
I/O Designer |
|
|
|
Apr 30 2013, 09:33
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Что я хочу:
- Создать сигнал SDR_VREF, задать ему тип VREF, подключить к трем пинам ПЛИС и сделать так, чтобы он через pdb подключился на глобальную цепь "SDR_VREF".
Что я делаю (режим с иерархическим блоком и pdb в локал либе):
- Создаю сигнал SDR_VREF - задаю тип VREF - подключаю к нужным пинам ПЛИС - убираю в опциях генерации символа все упоминания о VREF, чтобы она не делала PCB символы с ней.
Что получается:
А нифига не получается. Никто не ругается ни о чем, все вроде как-то генерируется, информационное сообщение проходит, что SDR_VREF, как и прочие сигналы питаний, отсутствуют на символах и подключены к глобальным цепям. Но вот питания оказываются реально подключены куда я указал, а сигнал SDR_VREF потерялся, пины ФПГА, куда я их ассигновал, оказываются никуда не подключены (т.е. к net0).
Что делать? Вывести VREF на символы не предлагать, это работает, но нафиг не надо. Чем отличаются VREFы от сигналов питания (кроме типа VCC* / VREF)? Почему с питаниями все ОК, а с врефами - фиг вам?
|
|
|
|
|
Nov 29 2013, 06:54
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 25-09-06
Пользователь №: 20 670

|
В плис типа CPLD имеется два питания VCC и VCCINT Вопрос каков алгоритм действий чтобы подключить все выводы к одному питанию 3V3 например. Дизайнер этого сделать не даёт. Символы и идут через CentralLibrary путь SchUpdate.
|
|
|
|
|
Nov 29 2013, 12:53
|
Знающий
   
Группа: Свой
Сообщений: 791
Регистрация: 14-05-05
Из: Минск
Пользователь №: 5 035

|
Цитата(SShLD @ Nov 29 2013, 09:54)  В плис типа CPLD имеется два питания VCC и VCCINT Вопрос каков алгоритм действий чтобы подключить все выводы к одному питанию 3V3 например. Дизайнер этого сделать не даёт. Символы и идут через CentralLibrary путь SchUpdate. покажите картинку что за символы или выложите тестовый проект просто интересно посмотреть в чем проблема
--------------------
Будь ты рабочий, будь ты профессор, а DxD-IOD-Exp должен знать каждый, чтобы не стать пособником империализма.
|
|
|
|
|
Nov 30 2013, 15:06
|
Местный
  
Группа: Свой
Сообщений: 294
Регистрация: 11-11-04
Из: Москва
Пользователь №: 1 109

|
Цитата(SShLD @ Nov 29 2013, 10:54)  В плис типа CPLD имеется два питания VCC и VCCINT Вопрос каков алгоритм действий чтобы подключить все выводы к одному питанию 3V3 например. Дизайнер этого сделать не даёт. Символы и идут через CentralLibrary путь SchUpdate. Вариант I. 1. На вкладке PCB Signals Generation (Setup->Settings) прописать и для VCC и для VCCINT значение 3V3 и установить галку "Automatically connect..." 2. При экспорте (Export-> Schematic and Symbols) в окне Check Power Signals (если оно появляется) нажать кнопку Discard 3. После экспорта в pdb выводы питания будут подключены к цепи 3V3 Вариант II. 1. В меню Tools-> Types Compability разрешить присвоение сигналов типа VCC выводам типа VCCINT 2. Создать PCB сигнал 3V3 типа VCC 3. Присвоить сигнал 3V3 нужным выводам удерживая клавиши CTRL+SHIFT (или командой assign_special) Присваивать сигнал нужно выводам VCC и VCCINT одновременно . Прикол в том, что в версии IOD 9.5 вариант II может не срабатывать, если не сделаны установки I.1 Все вышеизложенное справедливо для работы с FPGA Xilinx. Для CPLD не пробовал, но думаю что сработает так-же, хотя IOD есть IOD
|
|
|
|
|
Dec 3 2013, 07:15
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 25-09-06
Пользователь №: 20 670

|
Цитата(Asb @ Nov 30 2013, 19:06)  Вариант I. 1. На вкладке PCB Signals Generation (Setup->Settings) прописать и для VCC и для VCCINT значение 3V3 и установить галку "Automatically connect..." 2. При экспорте (Export-> Schematic and Symbols) в окне Check Power Signals (если оно появляется) нажать кнопку Discard 3. После экспорта в pdb выводы питания будут подключены к цепи 3V3 Вариант II. 1. В меню Tools-> Types Compability разрешить присвоение сигналов типа VCC выводам типа VCCINT 2. Создать PCB сигнал 3V3 типа VCC 3. Присвоить сигнал 3V3 нужным выводам удерживая клавиши CTRL+SHIFT (или командой assign_special) Присваивать сигнал нужно выводам VCC и VCCINT одновременно . Прикол в том, что в версии IOD 9.5 вариант II может не срабатывать, если не сделаны установки I.1 Все вышеизложенное справедливо для работы с FPGA Xilinx. Для CPLD не пробовал, но думаю что сработает так-же, хотя IOD есть IOD  Спасибо за помощь! О волшебных клавишах то я и забыл... всё получилось
|
|
|
|
|
Dec 26 2013, 06:21
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Подсказка требуется... Я хочу вывести на функциональный символ сигналы JTAG и Config - перетаскиваю их руками на первый раз (после ввода сигналов и предварительного раскидывания их по пинам) сгенеренный символ. Делаю также, руками, PCB символ с этими пинами. Все получается, блок экспортируется в DxD, создается корректный PDB, все упаковывается, все правильно соединяется.... Но, затем, начинается разводка - начинается оптимизация расположения пинов ПЛИС. И вот тут происходит засада - при апдейте символов, генератор символов убивает с функционального символа пины, затащенные туда руками, да и меняет зачем-то размер символа. В результате на схеме полный бардак образуется, ну и рвутся соединения. Приходится руками возвращать размер символа к исходному, и опять добавлять сигналы JTAG и Config, причем внимательно следя, чтобы на те же координаты и в том же порядке. Если пробовать символу поставить Read Only - то рвутся соединения между PCB и Functional символами (генератор не может поменять привязку к номерам пинов, если я правильно понимаю, да и это ожидаемо). Если я ставлю read only на сами эти пины - то после перегенерации символа эти JTAG/Config пины отрываются от PCB символов в блоке DxD. Ну и об этих обрывах ругается сам IOD при экспорте схематики и символов. Что за хрень и как с ней бороться? Как правильно вытащить JTAG и Config на функциональный символ? символы - в локальной либе, pdb локальная. путь - генерация схемного блока, представляемого функ. символом. ПЛИС - LattiteXP2, LFXP2-8E-5MN132C. EXP/IOD/DxD - 7.9.5 Опции генератора символа при апдейте не помогают никакие... вот пара скриншотов (речь о пинах J_TMS, J_TCK, J_TDI, J_TDO, CFG_TOE, CFG_CFG0) - первый скриншот, как надо (после ручной правки), второй - как искорежил апдейт символа:
Эскизы прикрепленных изображений
|
|
|
|
|
Dec 26 2013, 17:57
|
Знающий
   
Группа: Свой
Сообщений: 791
Регистрация: 14-05-05
Из: Минск
Пользователь №: 5 035

|
Цитата(SM @ Dec 26 2013, 09:21)  Подсказка требуется...
Я хочу вывести на функциональный символ сигналы JTAG и Config - перетаскиваю их руками на первый раз (после ввода сигналов и предварительного раскидывания их по пинам) сгенеренный символ. Делаю также, руками, PCB символ с этими пинами. Все получается, блок экспортируется в DxD, создается корректный PDB, все упаковывается, все правильно соединяется.... Но, затем, начинается разводка - начинается оптимизация расположения пинов ПЛИС. И вот тут происходит засада - при апдейте символов, генератор символов убивает с функционального символа пины, затащенные туда руками, да и меняет зачем-то размер символа. В результате на схеме полный бардак образуется, ну и рвутся соединения. Приходится руками возвращать размер символа к исходному, и опять добавлять сигналы JTAG и Config, причем внимательно следя, чтобы на те же координаты и в том же порядке. Если пробовать символу поставить Read Only - то рвутся соединения между PCB и Functional символами (генератор не может поменять привязку к номерам пинов, если я правильно понимаю, да и это ожидаемо). Если я ставлю read only на сами эти пины - то после перегенерации символа эти JTAG/Config пины отрываются от PCB символов в блоке DxD. Ну и об этих обрывах ругается сам IOD при экспорте схематики и символов. Что за хрень и как с ней бороться? Как правильно вытащить JTAG и Config на функциональный символ?
символы - в локальной либе, pdb локальная. путь - генерация схемного блока, представляемого функ. символом.
ПЛИС - LattiteXP2, LFXP2-8E-5MN132C. EXP/IOD/DxD - 7.9.5
Опции генератора символа при апдейте не помогают никакие...
вот пара скриншотов (речь о пинах J_TMS, J_TCK, J_TDI, J_TDO, CFG_TOE, CFG_CFG0) - первый скриншот, как надо (после ручной правки), второй - как искорежил апдейт символа: не понимаю вашей проблемы  я поклонник IOD в самом фундаментальном смысле (только локальная библиотека) и приветствую ваше желание работать с фунциональным символом в локале мое мнение не надо ручками лазить (это не девушка  ) на сайте были мои рекомендации как работать в IOD прикладываю картинки, если не понятно - в личку в моем случае я провожу оптимизацию по пинам как в DxD так и в Exp далее аннотации в любую сторону - проблем НЕТ
Эскизы прикрепленных изображений
--------------------
Будь ты рабочий, будь ты профессор, а DxD-IOD-Exp должен знать каждый, чтобы не стать пособником империализма.
|
|
|
|
|
Dec 27 2013, 09:28
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
К сожалению, я не умею видео записывать с экрана. Суть, как я говорил, что после апдейта символов (хоть автоматически, хоть через меню - Symbol->Symbols Generator....) этот генератор САМ меняет размер символа, увеличивая его (мне не нравится большой символ, сгенеренный при первой генерации символа, и я его уменьшаю - но не хочу, чтобы при апдейте он обратно увеличивался), и УДАЛЯЕТ пины типа JTAG и CONFIG из функционального символа. Всегда! Каждый апдейт. Как Вам удалось вывести на функциональный символ пины типа JTAG так, чтобы генератор символов их не убивал при Symbols update?
PS зачем в личку, я думаю, это не одному мне интересно
|
|
|
|
|
Dec 27 2013, 12:44
|

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

|
Цитата(SM @ Dec 26 2013, 10:21)  Подсказка требуется...
Я хочу вывести на функциональный символ сигналы JTAG и Config - перетаскиваю их руками на первый раз (после ввода сигналов и предварительного раскидывания их по пинам) сгенеренный символ. Делаю также, руками, PCB символ с этими пинами. Все получается, блок экспортируется в DxD, создается корректный PDB, все упаковывается, все правильно соединяется.... Но, затем, начинается разводка - начинается оптимизация расположения пинов ПЛИС. И вот тут происходит засада - при апдейте символов, генератор символов убивает с функционального символа пины, затащенные туда руками, да и меняет зачем-то размер символа. В результате на схеме полный бардак образуется, ну и рвутся соединения. Приходится руками возвращать размер символа к исходному, и опять добавлять сигналы JTAG и Config, причем внимательно следя, чтобы на те же координаты и в том же порядке. Если пробовать символу поставить Read Only - то рвутся соединения между PCB и Functional символами (генератор не может поменять привязку к номерам пинов, если я правильно понимаю, да и это ожидаемо). Если я ставлю read only на сами эти пины - то после перегенерации символа эти JTAG/Config пины отрываются от PCB символов в блоке DxD. Ну и об этих обрывах ругается сам IOD при экспорте схематики и символов. Что за хрень и как с ней бороться? Как правильно вытащить JTAG и Config на функциональный символ?
символы - в локальной либе, pdb локальная. путь - генерация схемного блока, представляемого функ. символом.
ПЛИС - LattiteXP2, LFXP2-8E-5MN132C. EXP/IOD/DxD - 7.9.5
Опции генератора символа при апдейте не помогают никакие...
вот пара скриншотов (речь о пинах J_TMS, J_TCK, J_TDI, J_TDO, CFG_TOE, CFG_CFG0) - первый скриншот, как надо (после ручной правки), второй - как искорежил апдейт символа: Тестовый проект выложите, т.к. у меня JTAG и CONFIG добавляются на символ блока через генератор символов если включена соответствующая галочка.
--------------------
Чем больше познаю, тем больше понимаю ... насколько мало я все таки знаю. www.megratec.ru
|
|
|
|
|
Dec 27 2013, 19:41
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Ну как всегда, визит-эффект, в тестовых проектах не воспроизвелось. Будем считать разовой флуктуацией. Зато аж три вопроса, один старый, про порчу размера символа, другой - совершенно новый, которого раньше не было - сигнал на символ не добавляется при Update Symbols, ну и третий, хорошо забытый очень старый и не критичный. Даю два тестовых проекта: архив test_proj: Конфиг-жтаг вытащен на другой символ, не туда, где I/O. Я добавил сигнал TEST_RST, и назначил ему пин. Делаю Update Symbols через генератор символов - и размер символа искорежен - он стал сильно больше, чем был. Когда схемы вокруг символа еще нет, это конечно не беда. А вот когда вокруг символа плотная схема - то приходит куча геморроя от этого автоизменения изменения размера. Проект находится в состоянии, когда сигнал добавлен, но Update Symbols еще не сделан, символ имеет нужный мне размер. Стоит сделать Update Symbols, и символ станет сильно больше, что и мешает жизни (об этом я писал ранее - "Приходится руками возвращать размер символа к исходному") архив test_proj1: Тут конфиг-жтаг вытащен на функ. символ с I/O. То, что почему то не сработало у меня в основных проектах, аж трижды уже, а тут получилось. Операция та же - добавляю сигнал TEST_RST. Делаю Update Symbols, с целью проверить, искорежит ли он мне размер символа. А не искореживает, но и сигнал новый не добавляет на символ. Как бы вообще ничего не делает, хотя в визарде пишет, что собрался добавлять порт. Проект в таком состоянии - сигнал TEST_RST добавлен, а сколько Update Symbols не делай, на функциональном символе он не появляется. PCB символ для пина для этого сигнала сгенерировался. Ну и еще вопрос, тот самый, совсем старый и не критичный. Для обоих проектов. Database Properties (ПКМ на названии FPGA в правом нижнем окошке). Хочу сменить Default Single с LVCMOS25 на что-то более актуальное для проекта, но не дает. А для дифференциальных, все ОК. В чем засада?
|
|
|
|
|
Dec 28 2013, 15:55
|
Знающий
   
Группа: Свой
Сообщений: 791
Регистрация: 14-05-05
Из: Минск
Пользователь №: 5 035

|
Цитата(SM @ Dec 27 2013, 22:41)  Даю два тестовых проекта:
архив test_proj:
Конфиг-жтаг вытащен на другой символ, не туда, где I/O. Я добавил сигнал TEST_RST, и назначил ему пин. Делаю Update Symbols через генератор символов - и размер символа искорежен - он стал сильно больше, чем был. как я предполагаю - появился сигнал TEST_RST со своим выводом и IOD с учетом этого расширил символ Цитата Когда схемы вокруг символа еще нет, это конечно не беда. А вот когда вокруг символа плотная схема - то приходит куча геморроя от этого автоизменения изменения размера. Проект находится в состоянии, когда сигнал добавлен, но Update Symbols еще не сделан, символ имеет нужный мне размер. Стоит сделать Update Symbols, и символ станет сильно больше, что и мешает жизни (об этом я писал ранее - "Приходится руками возвращать размер символа к исходному") я всегда имею один функциональный символ на отделном листе без других компанентов - только цени и шины (ИМХО) и когда происходит добавление выводов и/или изменение имени вывода как всегда с увеличением числа буквочек происходит изменение ширины символа, НО так как у меня на листе одни цепи/шины то с права не происходит подключение символа  но это исправляется элементарно - подвинуть символ влево, бросить, все подключилось и подвинуть символ вправо на пару дюймов вопрос по test_proj - зачем делать два функциональных символа ??? я не много ваш проектик подкорретировол, думаю так будет симпотней
--------------------
Будь ты рабочий, будь ты профессор, а DxD-IOD-Exp должен знать каждый, чтобы не стать пособником империализма.
|
|
|
|
|
Dec 28 2013, 17:07
|
Знающий
   
Группа: Свой
Сообщений: 791
Регистрация: 14-05-05
Из: Минск
Пользователь №: 5 035

|
Цитата(SM @ Dec 27 2013, 22:41)  архив test_proj1: .... Как бы вообще ничего не делает, хотя в визарде пишет, что собрался добавлять порт. Проект в таком состоянии - сигнал TEST_RST добавлен, а сколько Update Symbols не делай, на функциональном символе он не появляется. PCB символ для пина для этого сигнала сгенерировался. давненько выкладывал мануальчик http://electronix.ru/forum/index.php?showt...67345&st=60 4. При кардинальных изменениях, когда добавляются, удаляются или изменяются имена сигналов проще провести изменения через SimbolWizard/UpdateSimbols (не проверял) или вообще удалить в IOD символы и заново сгенерить двумя щелчками мышки и пройти путь по п.1 (так поступаю). Предварительно удалить ПЛИС в DxD на схеме, в навигаторе и в базе Symbol_View/local_symbols, сделать FA & BA. Чтобы не пропали разведенные цепи относящиеся к ПЛИС, необходимо убрать галки Trace_removal_options в FA . может это поможет смотрю и в этом проекте наплодил кучу символов  я в последних проекта имею всего три символа: 1.функциональный 2.power 3.gnd power и gnd чтобы оперативно изменить питание и землю не заходя в IOD на пример +3V3 на +3V3-1 и +3V3-2 когда имею две с одинаковые ПЛИС но с физически разными источниками питания
--------------------
Будь ты рабочий, будь ты профессор, а DxD-IOD-Exp должен знать каждый, чтобы не стать пособником империализма.
|
|
|
|
|
Dec 29 2013, 07:30
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
power и gnd я не собираюсь вытаскивать на схему - они подсоединяются через pdb к глобальным цепям с именами 3.3V 1.2V GND и т.п., а на схеме согласно ГОСТ, указывается стрелка, и пишется список пинов, куда эта цепь подключена (если нужен ГОСТ), а если ГОСТ не нужен, то и вообще ничего не указывается. Удобно, и не захламляет схему, и изменить питание в таблице в IOD - быстрее, нежели в схеме. А нам что важнее всего - правильно, скорость! Я не хочу тратить время на лишние и не нужные действия! Я это время лучше потрачу на что-то полезное, обдумаю что-то например.
Что касается сгенерировать символ заново - спасибо за бесполезный совет. Ежу понятно, что сработает. Но долго, муторно и неудобно - вопрос был более чем конкретный, как корректно заапдейтить символ, не испортив его.
Что касается количества PCB символов, так вообще наплевать, сколько их там внутри блока. Как по мне - скрыть бы вообще от пользователя все эти символы и сам блок, это лишняя по сути сущность. Но она есть из-за того, что таков принцип работы софта - есть, и хрен бы с ней. Опять же, тратить время на оптимизацию в PCB символах не вижу смысла никакого. Мне главное - чтобы у меня на схеме был один функциональный символ нужного мне размера с расположением пинов, как мне надо, а уж на то, что там внутри него, наплевать абсолютно, лишь бы работало.
|
|
|
|
|
Jan 9 2014, 11:02
|

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

|
Цитата(SM @ Dec 29 2013, 11:30)  power и gnd я не собираюсь вытаскивать на схему - они подсоединяются через pdb к глобальным цепям с именами 3.3V 1.2V GND и т.п., а на схеме согласно ГОСТ, указывается стрелка, и пишется список пинов, куда эта цепь подключена (если нужен ГОСТ), а если ГОСТ не нужен, то и вообще ничего не указывается. Удобно, и не захламляет схему, и изменить питание в таблице в IOD - быстрее, нежели в схеме. А нам что важнее всего - правильно, скорость! Я не хочу тратить время на лишние и не нужные действия! Я это время лучше потрачу на что-то полезное, обдумаю что-то например.
Что касается сгенерировать символ заново - спасибо за бесполезный совет. Ежу понятно, что сработает. Но долго, муторно и неудобно - вопрос был более чем конкретный, как корректно заапдейтить символ, не испортив его.
Что касается количества PCB символов, так вообще наплевать, сколько их там внутри блока. Как по мне - скрыть бы вообще от пользователя все эти символы и сам блок, это лишняя по сути сущность. Но она есть из-за того, что таков принцип работы софта - есть, и хрен бы с ней. Опять же, тратить время на оптимизацию в PCB символах не вижу смысла никакого. Мне главное - чтобы у меня на схеме был один функциональный символ нужного мне размера с расположением пинов, как мне надо, а уж на то, что там внутри него, наплевать абсолютно, лишь бы работало. Насколько я вижу, выход один - перетаскивать новые пины (сигналы) на функ. символ мышкой, т.к. генератор при обновлении оставляет в покое только взаимное расположение пинов, а тело генерирует согласно зашитым в него параметрам отступов от крайних пинов. Все не размещенные пины отображены на вкладке Unpaced.
--------------------
Чем больше познаю, тем больше понимаю ... насколько мало я все таки знаю. www.megratec.ru
|
|
|
|
|
  |
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0
|
|
|