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

Выравнивание длин между диф парами

Здравствуйте все, возникла самая обыкновенная задача выравнять длину трасс между диф парами и никак не могу понять оптимальный путь решения данной задачи в PADS. Что пробовал делать: создал класс цепей куда вложил нужные диф. пары, результат выравнивания меня мягко скажем немного удивил (произошло выравнивание как между обычными трассами, длины по "диффпарно" не выравнивались), понял, что все так просто не получится. Начал экспериментировать с указанием отношений длины внутри одной из диф пар, для этого развел ее, выбрал один из проводников и попробовал выравнять его в нужном мне месте (там где возникла разница внутри диф пары), интерактивное выравнивание (Shift-A) у меня так запустить нормально не удалось, т.е. ничего не вышло (удалить участок трассы, провести тромбон и закончить кажется мне не совсем православным методом, особенно в отношении диф пары). Решил посмотреть как PADS вообще равняет длины, опять таки рандомно взял две цепи, задал правила отношений (для проверки), запустил tune, произошли чудные манипуляции. Результат меня не устроил (тромбоны в рандомных местах по пути трассы это явно не то, что мне нужно). На данный момент так и гуглю, пытаясь понять, как мне нужного результата достичь. Удалось найти отрывочные фразы про "зоны запрета" (относительно PADS видел их уже не раз) - как это называется в контексте программы? Имеется ввиду Keep Out или что то еще (с автороутерами не работал, потому нюансов настройки под эту фичу я не знаю, вообще)? Как контролировать процесс выравнивания в PADS, где можно найти литературу конкретно по этой части (имеется ввиду процедуру именно внутри PADS, не физика)? До этого работал в Altium, но его метод для PADS не подходит. Прошу прощения за сумбурность, очень надеюсь на вашу помощь, хотя бы в сторону копания (Google не выдает нужный мне результат). Если кто напишет некий алгоритм, буду очень признателен.

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


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

Насколько я помню, самым эффективным способом выравнять длины было выставить мин и макс значения для группы, а не толеранс. Попробуйте так, но в любом случае - если хотите красиво, то придется вручную это делать через shift+A.

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


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

Понятно... и по-моему мало что изменилось, смотрел их видео, там он не задавал толеранс, а задавал максимальную и минимальную длину, только как эффективно этим управлять, ведь я на перед не могу знать ту длину, которая в итоге получится, только если прикинуть? Ну или намеренно делать их длиннее, но это тоже тот еще вариант. А так понятно, что выравнивать руками, я только за, раньше только так и делал, но я не нашел такого инструмента в PADS кроме Shift-A, а он работает только на не разведенных участках цепи, т.е. взять и начать корректировать уже разведенную цепь у меня не получилось. Мне очень интересно как человек достиг этого результата: https://communities.mentor.com/servlet/Jive...si%20Sample.jpg ? Хотел также, пока не вышло. Буду пробовать еще, как смогу достичь нужного результата, отпишу, может кому будет нужно.

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


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

Понятно... и по-моему мало что изменилось, смотрел их видео, там он не задавал толеранс, а задавал максимальную и минимальную длину, только как эффективно этим управлять, ведь я на перед не могу знать ту длину, которая в итоге получится, только если прикинуть?

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

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

Мне очень интересно как человек достиг этого результата: https://communities.mentor.com/servlet/Jive...si%20Sample.jpg

Вы имеете ввиду подравнивания внутри диф пар? Я думаю так и достиг - снача провел пару, потом удалил сегмент на проводнике меньшей длинны и вручную оттрассировал с добавлением петли.

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


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

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

1. Трассируем то, что нужно, при этом желательно дать проводникам как можно больше места.

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

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

4. Удаляем сегменты, где хотим создать выравнивание, прорисовываем участок заново и с помощью Shift-A создаем тромбоны.

5. Выделяем верхушки у тромбонов и с помощью ctrl-e добиваем до нужной длины.

 

Пока это единственный способ, который устроил меня по конечному результату, думаю будет полезен таким же нубам PADS как и я. Если кто сможет описать более удобное и быстрое решение, буду очень рад, поскольку как спроектировать что нибудь сложнее (тот же DDR3) таким методом, для меня загадка. Спасибо, ClayMan, за помощь.

P.S.: что за баг с форумом? Могу только редактировать сообщение, но не добавлять...

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

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


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

Да, дифф пары не очень хорошо реализованы в пакете, но работать можно.

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

О какой самостоятельности идет речь? Если задача в том, чтобы выровнять множество дифф пар по самой длинной в группе, то задавать нужно не только максимальную длину, но и минимальную. Причем делать это все я советую через PADS Router, а не Layout - там удобнее.

Для сложных топологий типа DDR можно использовать виртуальные пины на via и затем пин-пары в качестве групп для выравнивания.

 

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


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

Да, дифф пары не очень хорошо реализованы в пакете, но работать можно.

 

О какой самостоятельности идет речь? Если задача в том, чтобы выровнять множество дифф пар по самой длинной в группе, то задавать нужно не только максимальную длину, но и минимальную. Причем делать это все я советую через PADS Router, а не Layout - там удобнее.

Для сложных топологий типа DDR можно использовать виртуальные пины на via и затем пин-пары в качестве групп для выравнивания.

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

Под самостоятельностью я имею ввиду то, что программа сама завершает тромбон в ручном режиме. Допустим, если я равняю длину в Altium, то по достижению нужной длины он перестанет формировать тромбон и сам подгонит размер этого тромбона (уменьшит или увеличит) до достижения всей линией нужной длины. В PADS ситуация иная (это касается ручного режима): вы можете нарисовать тромбоны, он вам покажет, что длина превышена или недостаточна, но сам он трассировку в этот момент не завершит, по крайней мере у меня именно так, нижний и верхний порог я делал одинаковым, может в этом ошибка? В автомате PADS великолепно равняет синглы, сам, без моего участия, но дифы мне не нравятся, проще руками. Но в остальном претензий нет, у каждого пакета свои заморочки. Еще такой момент мне интересен, что выравнять группу диф. пар, как лучше сделать, создать класс с ними (куда входят P/N) или группы? Я честно говоря не понял этот момент, задал длины в момент создания диф пар, затем по ним и смотрел, как отследить по другому не дошло, они никак не отображаются в правилах отдельным классом элементов.

А и еще, функцию Add Accordion в роутер у меня запустить так и не удалось, как это правильно сделать? Хотя вроде и длину задал для тестовой цепи, функция активна, но по клику ничего не происходит, что я делаю не так?

 

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


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

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

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

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

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

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

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

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

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

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