Altium: Трассировка плат «Автоматическая» или «Вручную»

Хочу вам рассказать простыми словами про один мой эксперимент, который я проводил на этой неделе. Речь конечно же пойдет про программу Altium Designer, как вы могли уже догадаться из названия темы, а точнее — автоматическая трассировка плат. И интерес был следующим — как и на сколько хорошо и качественно умеет разводить(трассировать) Altium в автоматическом режиме и что для этого нужно, а также если сравнить, то  как получится вручную. Результат оказался предсказуемым, но не без интересностей тоже.

Читать далее…

Итак, Altium — …я не знаю чем вызвана такая сумасшедшая популярность на просторах СНГ этого пакета для сквозного проектирования плат, возможно из-за того что ранее они же делали PCAD, тот самый который по сути является сейчас стандартом дефакто. Тем не менее ембеддеры и таксировщика на просторах СНГ, весьма плотно присели на Altium, в зятяжку.

Год назад я тоже решил не отставать от тенденций и на него перейти, и вот только пару месяцев назад добрались руки, до этого это были так пробы пера. Та, тем более что старый добрый PCAD уже устарел как го№но мамонта, и его на плаву удерживает лишь то что заводы принимают его к изготовлению плат. Хотя и еще долго так будет, и это хорошо! Последние этак 8-9 лет, я работал только в PCAD, и самые последние несколько лет только в PCAD-2006. Задолго до этого, работал с Eagle и Orcad, но это все было очень давно, так что на данный момент при сравнении Altium-а я предпочитаю его сравнивать с PCAD-2006, так как его и помню.

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

Наперед забегая могу сказать сразу, относительно PCAD — он в автоматическом режиме умеет не платы разводить, а «генерировать анекдоты», иначе это не назвать. Следовательно, PCAD в этом вопросе даже и не рассматривается как средство авто-разводчика. Но если быть справедливым то нужно сказать также, что к PCAD цепляются внешние средства для автоматической разводки, которые только этим и умеют заниматься, серьезные пакеты типа SPECTRA и прочие(а точнее, я забыл уже как они все называются, давно было). И вот в купе с Спектрой, к примеру, можно творить чудеса. У спектры задаются правила правила разводки по средством собственного языка описания правил для групп проводников и т. д.

На представленных ниже платах установлен STM32F103, и как вы помните у него кучерявая расстановка номеров пинов по отношению к портам, по этому, что бы дизайн был максимально красивым, нумерация пинов на разъемах в схеме сделана в соответствии с нумерацией на чипе. А на чипе нумерация, в соответствии с созвездием «Центарва».

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

— 1) «Автоматическая» — с подгонкой ручками результата по завершению отработки стратегии трассировки.

— 2) «Вручную» — так сказать от «а» до «я» и сравнения которые вы увидите тоже относительно того что-же ожидалось.

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

Надо также отметить, что я не задавал ни каких специальных правил, так как для этого нужно изучать что и где для этого в Altium нужно списывать. И как вы догадываетесь, скорее всего там тоже свой язык описания правил, и это как минимум отберет о-о-о-очень много времени на понять, и еще сколько на поэкспериментировать. Так что по сути все установки были по дефотлу. Явно были заданы, переходные отверстия, расстояния между дорожками, ширина дорожек и т д. Если ни чего конечно не забыл…

Как выяснилось после долгих экспериментов, самое лучшее правило которое лучше всего разводит относительно других доступных вариантов, это — «Default 2 Layer Board«. Следом по качеству, это — «Default 2 Layer With Edge Connectors»

Вот что получилось в автоматическом режиме. Стратегия разводки — «Default 2 Layer Board»

Ну что тут сказать, есть плюсы и минусы:

Плюсы: Трассировка выполнятся быстро и за это время можно успеть позаниматься своими делами, но таких итераций будет несколько, так что это переходит плавно в минус…

Минусы: Большой недостаток что via(переходные отверстия) порой налазят друг на друга, и самое отвратительное что это не отмечается как ошибка. Пересекаются дорожки, и тоже не отмечается как ошибка. То есть это явные косяки программы. Это какой то кашмар, сколько переходных отверстий… А вот как он ведет дорожки, это уму не постяжимо, какие при этом правила он соблюдает понять весьма трудно. Дифф-пару разрывает, и ведет как попало, питание вообще через всю плату, дорожку, которую можно перпрыгнуть один раз, обводит через всю плату… Мрак!

 

А вот что получилось в ручном режиме.

Первое что вам может броситься в глаза — осталось чуть больше свободного места на плате, и это уже хорошо. При всем этом, в ручном варианте еще не делал особой оптимизации, после нее «жирок еще срежется».

Плюсы: Получается то что желаем, или почти то что желаем, и за это несем ответственность :)

Минусы: Долго глазеть в монитор от чего естественно болят глаза, ну и много-го-го-го мышко-жмакать.

 

Ну и о сравнении «Altium vs PCAD» — Ёпрст, это две в корни разные программы, и при чем я склоняюсь к версии что Altium местами просто написал от болта или от жопы, не знаю даже как полит-корректней выразиться. В PCAD все строго и понятно. В ALtium философия изначально в корни иная.

Например вам нужно указать что вся ваша дорожка GND должна быть шириной 0.5mm. Для этого в PCAD достаточно при разводке платы просто указать в свойствах желаемую толщину. В Altium же это задается, внимание — в Schematic !!! Ну, не ёпрст? Ну вот где логика? а, на самом деле она есть но весьма косвенная, а все потому что ALtium это пакет сквозного проектирования, это означает что все этапы работы над проектом максимально связанны друг с другом.

 

И вот пожалуй еще что интересно:

— Автоматический режим уговаривал разводить и так и сяк, и в бок и срок, и в тд, и моего терпения хватило лишь на неделю, потом я здался признав неспособность его уговорить… Хотя все же наивно думаю что если владеть тем языком описания правил, то можно было сделать что то вкусное, но получилась кака. Лично мне такой дизайн не особо нравится… Но с другой стороны он должен работать. ;)

— Ручной режим — потрачено 2 вечера. Результат намного лучше и предсказуемый.

 

PS: Полезные ссылки

  1. http://wiki.altium.com/display/ADOH/Getting+ready+to+route
  2. Module 12 — Design Rules.pdf
  3. LearningGuides/AP0135 Interactive and Differential Pair Routing.PDF

 

6 комментариев

  1. Pingback: TopoR: Трассировка плат с закругленными дорожками. « « МикроСхема МикроСхема

    • В PCAD, в схематике задается лишь толщина отображения соединения на схеме, и варианты там — Thick , Thin, User. На сколько я знаю, эта толщина не имеет ни какого отношения к PCB.
      Или я не прав в этом?

  2. Pingback: Altium: Установка толщины проводника PCB из Schematic « « МикроСхема МикроСхема

  3. Pingback: 3D Leds Cube 8x8x8 – основная плата, шаг 30мм « « МикроСхема МикроСхема

Добавить комментарий