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

Перестановка связей при разводке программируемых микросхем

типичная процедура проектирования, предлагаемая большинством САПР предполагает разработку схемы, превращающуюся в список связей между лапами компонентов с дальнейшим соединением лап дорогами.

 

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

 

нет ли возможности в современных САПР задавать что-то типа эквивалентности лапок микросхемы?

т.е. например берем ПЛИС и все I/O линии обзываем эквивалентными чтобы разводчик платы позволял соединить связь с той лапой, с которой удобно.

 

это, конечно, крайний случай, но, например, в проектах с МК есть связи которые должны прийти на определенную лапу (ацп например), а есть такие которым все-равно, лишь бы I/O (кнопка, светик и тп).

 

какие средства для подобных перестановок предлагают современные САПР?

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


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

Средство обычно называется Pin Swap. Имеется насколько помню во всех современных САПРах, только вначале нужно прописать нужные эквивалентности. Только перестановку делает не разводчик(кстати, кто имеется в виду - программа или человек?), а разработчик в процессе проектирования и не на схеме, а на плате, когда видно что и куда переставлять.

Есть и другие методы, но этот самый прямой.

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


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

Спасибо за кейворд, нашел очень популярное объяснение..

http://www.altium.com/community/trainingce...2,0,0,01252-w09

 

осталось только спросить, юзалось ли кем то что там показано и какие будут отзывы...

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


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

типичная процедура проектирования, предлагаемая большинством САПР предполагает разработку схемы, превращающуюся в список связей между лапами компонентов с дальнейшим соединением лап дорогами.

 

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

 

нет ли возможности в современных САПР задавать что-то типа эквивалентности лапок микросхемы?

т.е. например берем ПЛИС и все I/O линии обзываем эквивалентными чтобы разводчик платы позволял соединить связь с той лапой, с которой удобно.

 

это, конечно, крайний случай, но, например, в проектах с МК есть связи которые должны прийти на определенную лапу (ацп например), а есть такие которым все-равно, лишь бы I/O (кнопка, светик и тп).

 

какие средства для подобных перестановок предлагают современные САПР?

 

http://electronix.ru/forum/index.php?showt...=67345&st=0

 

видео записанное при работе - оптимизация распределения выводов на двух ПЛИС размещенных на плате

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


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

Гость @Ark
... при создании схемы никак не учитывается расположение выводов микросхемы. и сначала мы от балды присоединяем линии данных в схематике, а потом героически пытаемся развести получившуюся паутину.

Про ПЛИС не скажу - не работал с ними.

А вот насчет МК - могу высказать свое мнение совершенно определенно:

Разработчик схемы, в процессе работы, должен учитывать расположение выводов м/c, чтобы оптимизировать и облегчить последующую разводку платы. А выбирать выводы он должен так, чтобы оптимизировать и облегчить процесс последующего программирования. Если разработчик схемы этого не делает - это плохой разработчик...

Разводка должна точно соответствовать разработанной схеме. Если при разводке возникает желание как-то поменять коммутацию, то на это должно быть получено разрешение разработчика, и ни как иначе. Всякая самодеятельность, в этом плане, разводчика плат - недопустима и должна наказываться.

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


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

Про ПЛИС не скажу - не работал с ними.

А вот насчет МК - могу высказать свое мнение совершенно определенно:

Разработчик схемы, в процессе работы, должен учитывать расположение выводов м/c, чтобы оптимизировать и облегчить последующую разводку платы. А выбирать выводы он должен так, чтобы оптимизировать и облегчить процесс последующего программирования. Если разработчик схемы этого не делает - это плохой разработчик...

Разводка должна точно соответствовать разработанной схеме. Если при разводке возникает желание как-то поменять коммутацию, то на это должно быть получено разрешение разработчика, и ни как иначе. Всякая самодеятельность, в этом плане, разводчика плат - недопустима и должна наказываться.

Имхо, логичнее такой вариант

Разработчик передает разводчику ТЗ, где в отдельном разделе описаны правила свопинга данных ПЛИС. А разводчик, забив эти правила в библиотеку, уже будет расставлять, как удобнее и красивее. Изначально хорошо расставить связи в схеме практически нереально - для этого нужно видеть плату целиком

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


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

Я при разработке схемы в таких случаях составляю список цепей, подключенных к МК или ПЛИС, которые можно переставлять с целью удобства трассировки. Во многих случаях это более оправдано нежели удобство программирования, так как первое ведёт к уменьшению переходных, укорочению и спрямлению связей и, как следствие, к увеличению надёжности конструкции в целом. Уменьшение же удобств программирования ведёт к незначительному оверхеду, что зачастую менее критично.

Связи переставляются вручную разработчиком платы.

Делать же выводы эквивалентными чревато многими неприятностями при использовании автотрассировки, да и в другом проекте это может оказаться неуместным.

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


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

Не знаю как в других САПРах а в MG (если в схеме правильную заначку оставить :biggrin: ) можно потом очень легко подбирать глядя на LAYOUT куда какой резистор в шине удобней подключить чтобы морских узлов на плате не было. На картинке резисторы в шине подключены как раз по результатам трассировки

post-23823-1256325584_thumb.jpg

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


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

С резисторами в сборках как раз нет проблем, они эквивалентны.

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


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

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

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


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

С резисторами в сборках как раз нет проблем, они эквивалентны.

Да и с FPGA не проблема - даже там где резисторы воткнуть не получилось...

post-23823-1256328362_thumb.jpg

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


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

похоже я завел троллинг... )

 

посмотрите альтиумовскую киношку по ссылке выше, там всего 15 минут, но решение - суть оверкилл моего вопроса.

 

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

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


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

Гость @Ark
Мне кажется, каждый схемотехник встречался с вариантом, когда конструктор разводит плату просто "вредительски".

По моему, настоящими вредителями, как раз, являются "конструкторы", которые почему-то считают, что имеют полное право перекидывать коммутацию так, как им удобнее разводить. Когда "выводы эквивалентны" с их точки зрения! И часто даже не ставят в известность разработчика, а не то, чтобы спросить разрешения... Когда это вдруг обнаруживается на уже готовых изделиях, такого "конструктора" хочется расстрелять из рогатки...

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


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

По моему, настоящими вредителями, как раз, являются "конструкторы", которые почему-то считают, что имеют полное право перекидывать коммутацию так, как им удобнее разводить. Когда "выводы эквивалентны" с их точки зрения! И часто даже не ставят в известность разработчика, а не то, чтобы спросить разрешения... Когда это вдруг обнаруживается на уже готовых изделиях, такого "конструктора" хочется расстрелять из рогатки...

Я - как раз такой вредитель, врежу в Альтиум Дизайнере, имею опыт успешного сотрудничества с рядом разработчиков. В идеале разработчик, вводя схему, может скорректировать таблицу сваппинга пинов и гейтов библиотечного компонента (или изготовленного мной, или самостоятельно, или из Алтиумовской библиотеки) так, как считает нужным, с учётом непереставляемых пинов, возможности обмена между портами и т.п. Но, как правило, заказчик не считает нужным заморачиваться и влезать в такие дебри, и ограничивается указанием, например, цветом на схеме неперемещаемых пинов и словесными комментариями. На плате подвожу проводники к удобным пинам из сваппируемых, далее в автоматическом режиме (к сожалению, изредка не срабатывает, приходится вручную -глюки-с! Но с ростом номера версии всё реже..) оптимизирую разводку и экспортирую изменения в схему, которую проверяет заказчик. Результат такого вреда устраивает всех - заказчику не надо мучаться с согласованием схемного решения и разводки, а мне - с перекрёстными связями.

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


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

А в моей практике был обратный случай. FPGA дизайнер, в "препоследний" момент, вдруг выяснил что Квартус не может скомпилить проект потому как не трассируется альтера - толи тока не хватает то ли еще чего (пусть меня поправят профессионалы в этом деле) и сказал: "вот эти выходы только на эти выводы..." О таком тоже помнить надо...

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


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

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...