1 1 1 1 1 1 1 1 1 1 Рейтинг 0.00 (0 Голоса(ов)

Система сквозного проектирования Altium Designer. Выравнивание длин цепей.

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

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

Для начала нам необходимо задать правила, которые будут определять проверку выполнения требований. Создадим классы дифференциальных цепей и внесем в них соответствующие пары. Для это идем в меню "Проект", там выбираем пункт "Классы".

Меню Проект/Классы

Нажатием правой кнопки мыши в нужном разделе (Differencial Pair Classes) создаем новый класс, присваиваем ему имя.  После чего включаем в него нужные дифференциальные пары. Для этого нужно в левой половине с помощью левой кнопки мыши и кнопок Ctrl/Shift выделить требуемые пары, а затем нажатием на кнопку > (находится между половинками) перенести их в правую половину.

Формируем состав класса дифференциальных цепей

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

Теперь займемся, собственно, созданием правил. Идем в меню "Проект"/"Правила".

Меню Проект/Правила

В разделе "High Speed" ищем группу правил "Matched Lengths". Нажатием правой кнопки на этой группе создаем новое правило и даем ему имя.

В качестве объекта проверки задаем "Diff Pair Class" и указываем имя класса, который мы создали ранее. Тип сравнения "Group Matched Lengths" указывает на то, что эта проверка на расхождение длин между дифференциальными парами.

Согласование между дифференциальными парами

Теперь создаем еще правило, в качестве объекта проверки выбираем "Diff Pair", и указываем имя первой дифференциальной пары, которая подлежит проверке. Да! Это проверка на расхождение длины внутри дифференциальной пары и такие правила придется создать для каждой из них.

Согласование внутри дифференциальных пар

После создания всех правил закрываем окно.

Можно, собственно, приступать к разводке. Обратите внимание, что как только мы задали правило, в которое входит цепь, при ее разводке видна всплывающая подсказка, показывающая, попадаете Вы в требования, или цепь короче/длиннее требуемой.

Информация о длине проводимой цепи

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

Смотрим расхождение длин вручную

Но, конечно, лучше доверить проверку автоматике. Заходим в меню "Инструменты"/"Проверка правил проектирования" и запускаем проверку.

Меню Инструменты/Проверка правил проектирования

Вот примерно так будут выглядеть результаты. Из этого примера мы видим, что самая длинная цепь в плате - LVDS_D09_P.

Результат проверки

В принципе, сообщения о различии в длине внутри пары выглядят примерно так.

Результат проверки правил проектирования

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

Корректируем длину изменением радиуса скруглений

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

Корректируем длину изменением радиуса скруглений

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

В данном случае я нашел такой проводник...

На контакте лежит невидимый кусок проводника, который дает ошибку, так как тоже учитывается в длине цепи

...и удалил его.

Удалили это вредный сегмент

Ну а теперь поучимся пользоваться встроенными стредствами выравнивания длины проводников печатной платы.

Важное уточнение: если у Вас разлиты полигоны в том слое, в котором Вы собираетесь делать выравнивание, то у Вас ничего не выйдет. Не помогает даже отключить заливку. Полигоны нужно утащить за пределы платы, либо удалить, а потом создать заново.

Мы видим цепи, у которых разница внутри дифференциальной пары составляет 2,6 мм. Выделяем самую короткую из пары.

Требуется удлинить цепь LVDS_D08_P

И идем в меню "Инструменты"/"Interactive Length Tuning".

Меню Инструменты/Interactive Length Tuning

Удерживая левую кнопку мыши ведем курсором по прямому участку цепи, на котором мы хотим расположить "аккордеон" (волну). Как только мы отпустим левую кнопку, аккордеон окончательно создастся на проводнике.

Создали "аккордеон" (волну)

В данном случае мы видим, что "хорошо, но мало". Хватая за границы объекта "аккордеон" мы можем его растягивать во всех направлениях, таким образом меняя длину цепи.

Подогнали параметры "аккордеона" (волны)

Также можно поменять настройки (шаг, амплитуда) объекта, если нажать правой кнопкой на границе выделенного аккордеона.

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

Дифференциальные линии требуют выравнивания между собой

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

Результат проверки правил проектирования

Выбираем пару, с которой начнем выравнивание.

Будем удлинять эту дифференциальную пару

Идем в меню "Инструменты"/"Выровнять длины дифференциальных пар" (перевод меня шокировал, смотри рисунок).

Меню Проект/Выровнять длины дифференциальных пар (в переводе Выровнить длинны дифференциальных пар)

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

Сделал одну волну, но недостаточно

Поэтому я просто добавил еще один аккордеон, приблизившись снизу к требуемой длине.

Выровняли дополнительно

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

Можно. Для одной цепи. Для дифференицальной пары объект не возникает. При выравнивании у нас сразу порождается набор линий и дуг. Почему программисты так сделали, я не знаю, но это не очень удобно.

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

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

Перед последним выравниванием

Окончательно выровняли длины дифференциальных линий

Вот что у нас получилось.

Результат выравнивания

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

Осталась одна не выровненная цепь

А вот и вовсе ошибок нет.

Ошибок нет, все цепи выровнены

Успешной работы всем!!

 

Оставьте свой комментарий

Оставить комментарий как гость

0
  • Комментариев нет