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

Мне нужно визуально поперекидывать цепи исходя лишь из оптимальности и удобства трассировки, и не нарушая определенных выработанных мной правил...

Если я правильно все понял, то IOD в этом может помочь, там можно гибко настраивать группы свопирования и вообще перекидывать цепи (если серьезно с ним разобраться, я например дальше генерации симолов фпга не продвинулся)...

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


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

я например дальше генерации симолов фпга не продвинулся...

Мне вот как раз это и не требуется, мне нужен символ фпга такой, как он описан в даташите на нее, с наименованием пинов по банкам и номерам... Так как на этапе разводки платы я еще не до конца знаю, какие сигналы с нее пойдут (идеи приходят не только во время разработки схемы, но бывают и уже при разводке), и совсем не знаю, с каких пинов они пойдут, это определяется только тем, как цепи лягут после оптимизации по удобству трассировки.

 

там можно гибко настраивать группы свопирования и вообще перекидывать цепи

Т.е. хотите сказать, что я могу в IOD свопнуть что-то, после чего в результате каких-то простых действий (а лучше без них) в DxD и Exp произойдет переподключение цепи? При том, что символ необходим именно по даташиту на фпга, а не какой другой.

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


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

Ну а что касается IOD - я бы с удовольствием поимел бы возможность получить "шапку" описания модуля на верилоге с указанием всех подведенных цепей с аттрибутами соответствия пинам, по результатам всех моих деяний в процессе разводки... Но, как я понимаю, IOD делает обратное... (или не прав?)

 

 

Я уже привык что у вас прямое называется обратным и наоборот. :biggrin:

Может и прочитать и сгенерировать.

Можете разбить на символы по банкам (и другим критериям), можете свопировать (где захотите) и передавать информацию туда-обратно.

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


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

Я уже привык что у вас прямое называется обратным и наоборот. :biggrin:

Ну я еще не дорос до такого профессионализма, чтобы на этапе разработки схемы предвидеть то, как пойдут все трассы и сразу подключить все цепи куда следует, чтобы был минимум пересечений и длин трасс :) :)

 

Можете разбить на символы по банкам (и другим критериям), можете свопировать (где захотите) и передавать информацию туда-обратно.

Самое главное - не будет ли такого глюка со свопированием, что на символе будут меняться номера выводов, но не меняться вместе с ними их имена? Т.е. например хочу свопнуть пин IO_B0_8 (пин C5) c IO_B3_12 (пин K3) - в результате получается пакость в виде того, что пин C5 обзывается IO_B3_12, а K3 - IO_B0_8, что не соответствует действительности.

 

А на символы по банкам мне не надо разбивать... У меня относительно небольшие корпуса, типа csBGA-132, все влезает одним символом.

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


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

Ну я еще не дорос до такого профессионализма, чтобы на этапе разработки схемы предвидеть то, как пойдут все трассы и сразу подключить все цепи куда следует, чтобы был минимум пересечений и длин трасс :) :)

 

Прямым для IOD понимается чтение информации о сигналах из post-512-1253001937_thumb.png и присвоенных номеров пинов из post-512-1253002092_thumb.png далее ее передача в схему и плату. Обратно - выше перечисленное в обратном порядке :rolleyes: Так что в данном процесе не надо быть провидцем :biggrin:

 

Ну я еще не дорос до такого профессионализма, чтобы на этапе разработки схемы предвидеть то, как пойдут все трассы и сразу подключить все цепи куда следует, чтобы был минимум пересечений и длин трасс :) :)

 

 

Самое главное - не будет ли такого глюка со свопированием, что на символе будут меняться номера выводов, но не меняться вместе с ними их имена? Т.е. например хочу свопнуть пин IO_B0_8 (пин C5) c IO_B3_12 (пин K3) - в результате получается пакость в виде того, что пин C5 обзывается IO_B3_12, а K3 - IO_B0_8, что не соответствует действительности.

 

А на символы по банкам мне не надо разбивать... У меня относительно небольшие корпуса, типа csBGA-132, все влезает одним символом.

 

Т.к. символ в IOD не является фиксированным (в отличие от DxD) то при изменении номера можно изменить (автоматически) и имя.

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


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

Прямым для IOD понимается ....

Обратно - выше перечисленное в обратном порядке...

 

Собственно куда больше вопросов вызывает сам процесс переподключения цепей по критерию удобства трассировки при условии соблюдения целой кучи правил (следующих из внутренней структуры ПЛИСины и требований схемы). Тема-то пока не раскрыта, я не понимаю, как IOD может в этом помочь... А уж вытянуть из разведенной платы имена цепей с номерами пинов ПЛИСины, куда они подключены, это мелочь по сравнению с процессом определения этих пинов.

 

Я могу сказать, как я делал это в пикаде. Просто "swap pins" для пинов, которые не отмечены как свопуемые, глядя на "нитки" цепей. Он их свопил, задав грозный вопрос, уверен ли я. А я отвечал на него "да", вручную убедившись, что никакие правила не нарушаю. После чего бэк-аннотация в схему, и там переподключение цепей без какого либо изменения символа. Тут из-за вышеуказанной особенности (перенумерации пинов вместо переподключения цепей) я не могу использовать своп. И я хочу, чтобы знающие люди подсказали, как это столь же оперативно, или еще оперативнее, сделать в Exp. И, желательно, чтобы все правила, какие цепи куда можно, а куда нельзя, отслеживались бы автоматом (потратить время на их задание вполне оправдано).

 

то при изменении номера можно изменить (автоматически) и имя.

А можно как-то поподробнее о применении этого к описанной мной задаче?

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


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

Собственно куда больше вопросов вызывает сам процесс переподключения цепей по критерию удобства трассировки при условии соблюдения целой кучи правил (следующих из внутренней структуры ПЛИСины и требований схемы). Тема-то пока не раскрыта, я не понимаю, как IOD может в этом помочь... А уж вытянуть из разведенной платы имена цепей с номерами пинов ПЛИСины, куда они подключены, это мелочь по сравнению с процессом определения этих пинов.

 

Я могу сказать, как я делал это в пикаде. Просто "swap pins" для пинов, которые не отмечены как свопуемые, глядя на "нитки" цепей. Он их свопил, задав грозный вопрос, уверен ли я. А я отвечал на него "да", вручную убедившись, что никакие правила не нарушаю. После чего бэк-аннотация в схему, и там переподключение цепей без какого либо изменения символа. Тут из-за вышеуказанной особенности (перенумерации пинов вместо переподключения цепей) я не могу использовать своп. И я хочу, чтобы знающие люди подсказали, как это столь же оперативно, или еще оперативнее, сделать в Exp. И, желательно, чтобы все правила, какие цепи куда можно, а куда нельзя, отслеживались бы автоматом (потратить время на их задание вполне оправдано).

 

 

А можно как-то поподробнее о применении этого к описанной мной задаче?

 

 

http://megratec.ru/data/ftp/exp_movie/new/...OD_Exp_2BGA.avi

 

Как видите в этом простом примере я переставляю пины в соответствии с текущим распределением "ниток" и делаю это непосредственно в IOD, при этом я могу видеть все компоненты платы или отфильтровать (только "нитки" идущие к ПЛИС, и\или определенные цепи и т.д,) затем передаю эту информацию на плату. В данном случае показана одновременная оптимизация "ниток" на двух ПЛИС расположенных на плате и связанных друг с другом.

 

В http://megratec.ru/download/163/168/

Под следующими заголовками показан процесс оптимизации "ниток" для ПЛИС в контексте большой платы (видео старые поэтому процесс сейчас немного отличается).

 

Планировка выводов ПЛИС в контексте платы в IO_Designer, обновление информации о переопределении выводов через обменный файл, формирование набора символов для схемы, генерация символов и схемы в проект DxDesigner

 

Удаление старой информации компонента ПЛИС и его символов из Центральной Библиотеки, импорт нового описания компонента (PDB) и его символов сгенеренных из IO_Designer

 

и т.д.

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


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

Спасибо! Выглядит привлекательно.

И еще вдогонку два вопроса.

1) Можно ли при всем этом процессе не перегенерировать символ? А только манипулировать подключением цепей к имеющемуся символу? Хотя это и не определяющее, просто дань привычке.

2) Есть ли в природе IOD для платформы rhel?

 

Вопрос 2 изменяется. Что он есть, я уже и сам знаю, а можно ли IOD запускать не на том компе, на котором Exp? При условии, что к обоим подмонтирован носитель с ЦБ и проектом. (на случай, если я не найду линуксовый IOD)

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


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

Прямым для IOD понимается чтение информации о сигналах из post-512-1253001937_thumb.png и присвоенных номеров пинов из post-512-1253002092_thumb.png далее ее передача в схему и плату. Обратно - выше перечисленное в обратном порядке :rolleyes: Так что в данном процесе не надо быть провидцем :biggrin:

fill , если возможно выложи файлики о которых идет речь, просто сам я их правильно не нарисую :(

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


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

Спасибо! Выглядит привлекательно.

И еще вдогонку два вопроса.

1) Можно ли при всем этом процессе не перегенерировать символ? А только манипулировать подключением цепей к имеющемуся символу? Хотя это и не определяющее, просто дань привычке.

2) Есть ли в природе IOD для платформы rhel?

 

1. При свопировании пинов меняется на символе в пине как номер так и имя. Что будет при этом происходить на схеме в DxD на которую вы собираетесь его разместить (как я предполагаю из вашего стиля работы) не пробовал, т.к. предпочитаю работать с иерархией, как было показано в видео - на верхней схеме символ блока для ПЛИС (на котором имя_пина=имя_сигнала) к которому подключаются внешние цепи (сигналы). При таком подходе один раз рисуем верхнюю схему и при всех перестановках пинов ПЛИС, ее это уже не затрагивает, а внутреннюю подсхему генерирует сам IOD - соответственно сам ее и правит при перестановках. "Причесать" эту подсхему можно будет в финальной стадии, тогда когда закончаться все перестановки.

2. post-512-1253006693_thumb.png

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


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

fill , если возможно выложи файлики о которых идет речь, просто сам я их правильно не нарисую :(

 

 

О каких конкретно файликах речь? Я ведь их тоже "не рисую". Взял готовые файлы VHDL из старого примера FPGA_Advantage. Файлы с присвоенными номерами выводов можно получить или из систем разработки ПЛИС (ISE, Квартус и т.п) или наоборот сгенерировать из текущего размещения в IOD - все это перечислено в меню Import и Export - в зависимости от текущей задачи выбираем нужный пункт и получаем что хотели.

 

Вопрос 2 изменяется. Что он есть, я уже и сам знаю, а можно ли IOD запускать не на том компе, на котором Exp? При условии, что к обоим подмонтирован носитель с ЦБ и проектом. (на случай, если я не найду линуксовый IOD)

 

Да.

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


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

О каких конкретно файликах речь? Я ведь их тоже "не рисую". Взял готовые файлы VHDL из старого примера FPGA_Advantage. Файлы с присвоенными номерами выводов можно получить или из систем разработки ПЛИС (ISE, Квартус и т.п) или наоборот сгенерировать из текущего размещения в IOD - все это перечислено в меню Import и Export - в зависимости от текущей задачи выбираем нужный пункт и получаем что хотели.

конечно не рисуешь руками, меня заинтересовал файл VHDL и файл в строке FPGA Xchange (просто не знаю, что они из себя представляют), в данном вопросе сильно плавую. файл *.ucf я получу делая импорт из IOD.

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


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

конечно не рисуешь руками, меня заинтересовал файл VHDL и файл в строке FPGA Xchange (просто не знаю, что они из себя представляют), в данном вопросе сильно плавую. файл *.ucf я получу делая импорт из IOD.

В данном случае не импорт, а экспорт из IOD :rolleyes:

FPGA_Controller.vhd

FPGA_Controller_unoptimized.7z

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


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

В данном случае не импорт, а экспорт из IOD :rolleyes:

FPGA_Controller.vhd

FPGA_Controller_unoptimized.7z

конечно экспорт :) по нему проверяю куда цепи подцепились

спасибо

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


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

Задам вопрос сюда. EE2007.6 DXD. Добавляю еще один символ в деталь. Основной и альтернативный. При размещении на схеме основной символ встает нормально, а альтернативный ез PartNumber. Само свойство PartName при размещении альтернативного символа на сехме есть, и видимо, но оно не заполнено. И это только для альтернативных символов. Вопрос. Так можно два символа на одну деталь цеплять в DxD или нет? Допустим у меня два изображения детали, каждое по 8 видов. Сейчас получается чтобы добавить новый символ нельзя просто подцепить к детали как альтернативу, а только в виде расширения. Основной символ Part.1..Part.8 и альтернативный Part.9..Part.16. В документации по этому вопросу ничего не нашел. Там просто говорится об импорте символа.

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

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


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

Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...