Трассировка дифференциальной пары — это метод проектирования, применяемый для создания сбалансированной линии передачи, способной переносить дифференциальные (равные по величине и противоположные по знаку) сигналы по печатной плате. Обычно такая дифференциальная трассировка сопрягается с внешней дифференциальной линией передачи, например с разъёмом и кабелем.
Дифференциальная система сигнализации — это система, в которой сигнал передаётся по паре тесно связанных проводников: один несёт сигнал, второй — его равное, но противоположное по знаку отображение. Дифференциальная передача была разработана для ситуаций, когда опорная логическая «земля» источника сигнала не может быть надёжно соединена с опорной логической «землёй» нагрузки. Дифференциальная передача по своей природе устойчива к синфазным электрическим помехам, которые являются наиболее распространённым видом помех в электронном изделии. Ещё одно важное преимущество дифференциальной передачи — минимизация электромагнитных помех (EMI), излучаемых парой сигналов.
Трассировка дифференциальной пары на PCB — это метод проектирования, применяемый для создания сбалансированной линии передачи, способной переносить дифференциальные (равные по величине и противоположные по знаку) сигналы по печатной плате. Обычно такая дифференциальная трассировка сопрягается с внешней дифференциальной линией передачи, например с разъёмом и кабелем.
Важно отметить, что хотя коэффициент связи, достигаемый в витой паре дифференциального кабеля, может быть лучше 99%, связь, достигаемая при трассировке дифференциальной пары на плате, обычно будет менее 50%. Текущее мнение экспертов таково: задача трассировки на PCB — не пытаться обеспечить строго заданный дифференциальный импеданс, а сосредоточиться на том, чтобы дифференциальный сигнал пришёл к целевому компоненту в хорошем состоянии, проходя путь от внешнего кабеля.
По словам Ли Ритчи (Lee Ritchey), известного отраслевого эксперта по высокоскоростному проектированию PCB, успешная дифференциальная передача требует:
Установить импеданс каждой из трассируемых сигнальных линий равным половине импеданса входящего дифференциального кабеля.
Чтобы каждая из двух сигнальных линий была корректно согласована на приёмном конце на свой собственный волновой (характеристический) импеданс.
Чтобы две линии имели одинаковую длину — в пределах допусков используемого логического семейства и частоты схемы. Основной акцент — на сохранении временных соотношений; согласуйте длины достаточно близко, чтобы уложиться в бюджет перекоса (skew) проекта. Примеры допусков по длине: для high-speed USB рассогласование по длине должно быть не более 150 mil; тактовые линии DDR2 нужно согласовывать в пределах 25 mil.
Используйте преимущество параллельной трассировки двух сигналов бок о бок, чтобы упростить получение качественной трассировки с согласованными длинами. При необходимости допустимо разносить линии, чтобы обойти препятствия.
Переходы между слоями допустимы при условии сохранения импедансов линий.
Передача дифференциальных пар в PCB Editor из схем
Если вы разместили директивы Differential Pair на цепях в схеме , то настройки параметров проекта по умолчанию приведут к созданию членов дифференциальных пар на PCB. Для настройки этого используются следующие параметры в диалоге Options for PCB Project :
Вкладка Comparator — Extra Differential Pairs (затем проверки Different Differential Pair для последующих обновлений, а также параметры Rules, если вы также создаёте/изменяете правила проектирования)
Вкладка ECO Generation — Add Differential Pair (затем проверки Change Differential Pair для последующих обновлений, а также параметры Rules, если вы также создаёте/изменяете правила проектирования)
Вкладка Class Generation — Generate Net Classes (если вы также создаёте Net Class, чтобы использовать его для задания области действия правила PCB Differential Pair Routing)
Просмотр и управление дифференциальными парами на PCB
Определения дифференциальных пар просматриваются и управляются в панели PCB panel в режиме Differential Pairs Editor . На изображении ниже показаны пары, принадлежащие классу дифференциальных пар ROCKET_IO_LINES. Пара V_RX0 выделена; цепи в этой паре — V_RX0_N и V_RX0_P. Отображаемые рядом с именем цепи каждого участника - и + — это системные флаги, указывающие, является ли он положительным или отрицательным участником пары.
Дифференциальные пары можно просматривать и управлять ими в редакторе Differential Pair Editor. Щёлкните правой кнопкой мыши в области Differential Pair Classes , чтобы создать новый класс.
В режиме Differential Pairs Editor панели PCB её три основные области изменяются, отражая иерархию дифференциальных пар текущего проекта PCB (сверху вниз):
Differential Pair Classes .
Отдельный участник Differential Pairs внутри класса.
Составляющие Nets (отрицательная и положительная), которые образуют дифференциальную пару.
Определение класса дифференциальных пар
Часто существует более одной дифференциальной пары, на которую должно распространяться правило проектирования. В такой ситуации можно определить классы дифференциальных пар, объединяя их в логические группы. Щелчок правой кнопкой по записи класса дифференциальных пар и выбор Properties (или двойной щелчок по записи) откроет диалог Edit Object Class dialog , в котором можно переименовать класс или просмотреть/изменить состав дифференциальных пар в этом классе. Для полного контроля и редактирования всех классов, включая Differential Pair Classes, откройте диалог Object Class Explorer dialog с помощью команды Design » Classes из главного меню.
Object Class Explorer позволяет создавать, просматривать и изменять все классы, включая Differential Pairs.
Управление дифференциальными парами
Дифференциальные пары можно определять на схеме и также в PCB Editor. Управление во втором случае выполняется из области Differential Pairs панели PCB при её настройке в режим Differential Pairs Editor . Для выбранного класса дифференциальных пар все уже определённые объекты дифференциальных пар, принадлежащие этому классу, будут перечислены в области Differential Pairs .
Используйте кнопки под этой областью, чтобы управлять дифференциальными парами по мере необходимости:
Чтобы создать новый объект дифференциальной пары, нажмите кнопку Add . В открывшемся диалоге Differential Pair выберите существующие цепи для положительной и отрицательной линий, задайте имя пары и нажмите OK .
Обратите внимание: для выбора отображаются только цепи available . Цепи, уже определённые как часть существующих дифференциальных пар, в списке не показываются.
Быстро создавайте пары из именованных цепей.
Чтобы изменить существующую дифференциальную пару, выберите её запись и нажмите кнопку Edit . Откроется диалог Differential Pair , в котором текущие выбранные цепи пары будут указаны в выпадающих полях Positive Net и Negative Net . При необходимости измените одну или обе цепи пары или переименуйте пару.
Также можно щёлкнуть правой кнопкой по записи дифференциальной пары, затем выбрать Properties , или просто дважды щёлкнуть по записи.
Чтобы удалить существующую дифференциальную пару, выберите её запись и нажмите кнопку Delete .
Создание дифференциальных пар из цепей проекта
Если вы объединяете в пары цепи с согласованной схемой именования (т.е. с общим префиксом и постоянным суффиксом для положительной/отрицательной линии, например, TX0_P и TX0_N), можно использовать диалог Create Differential Pairs From Nets . Нажмите кнопку Create From Nets в панели PCB в режиме Differential Pairs Editor , чтобы открыть этот диалог.
Предполагаемые объекты дифференциальных пар перечисляются для создания в соответствии с фильтрами, заданными в верхней части диалога.
Эффективность этого автоматизированного метода напрямую зависит от соглашения об именовании, использованного для конкретных цепей, которые будут составлять дифференциальные пары. В идеале следует использовать соглашение, при котором общий корень имени дополняется постоянным индикатором положительной/отрицательной линии (P и N). Например, рассмотрим приёмный сигнал D_ETH_O.RX, который является дифференциальным сигналом в проекте. Две цепи, образующие этот сигнал, — ETH_O.RX_P и ETH_O.RX_N — они представляют положительную и отрицательную стороны сигнала соответственно.
Фильтры в верхней части диалога позволяют быстро выбрать эти цепи по классу цепей, к которому они принадлежат, и по конкретному отличительному признаку, использованному для различения положительной и отрицательной цепей в предполагаемой паре, например, _P и _N. Также можно задать префикс, который будет добавляться к создаваемым объектам дифференциальных пар, и определить, в какой класс дифференциальных пар они будут добавлены.
Для каждого объекта дифференциальной пары диалог перечисляет входящие в него положительную и отрицательную цепи. По умолчанию все предполагаемые объекты дифференциальных пар выбраны для создания, а отдельные можно исключить, сняв соответствующий флажок Create .
Когда все параметры заданы как требуется, нажмите кнопку Execute — объекты дифференциальных пар будут созданы, и панель PCB обновится соответствующим образом.
Щелчок правой кнопкой по записи Net(s) в панели PCB и выбор Properties (или двойной щелчок по записи) откроет диалог Edit Net dialog , в котором можно просмотреть/изменить свойства цепи по мере необходимости.
Используйте кнопку Rule Wizard , чтобы получить доступ к Differential Pair Rule Wizard и реализовать свойства правил для дифференциальных пар в автоматизированном процессе. Подробнее см. раздел ниже Using the Differential Pair Rule Wizard to Define the Rules .
Использование xSignals с дифференциальными парами
Main page: Определение высокоскоростных сигнальных трактов с помощью xSignals
Если в сигнальном тракте ваших дифференциальных пар присутствуют последовательные (series) компоненты, может быть полезно создать xSignals. xSignal — это определяемый разработчиком сигнальный путь между двумя узлами. Это могут быть два узла в пределах одной и той же цепи (net) или два узла в разных цепях. Используя xSignal, вы можете определить сигнальный путь так, чтобы он включал участки цепи по обе стороны последовательного компонента. Расчёты длины трассы для xSignals включают длину пути через последовательный компонент, как показано тонкой линией, которая отображается при выборе xSignal в режиме xSignals панели PCB .
Эти дифференциальные пары определены как xSignals; длина трассы включает последовательный компонент.
Применимые правила проектирования
Чтобы интерактивно трассировать дифференциальную пару, создайте и настройте следующие два правила проектирования в диалоге PCB Rules and Constraints Editor dialog (Design » Rules ):
Differential Pairs Routing — определяет ширину трасс цепей в паре, расстояние (gap) между цепями в паре и общую длину участка без связи (uncoupled length) (пара считается «развязанной», когда зазор шире, чем значение Max Gap ). Задайте область действия этого правила так, чтобы оно нацеливалось на объекты, являющиеся дифференциальной парой, например, IsDifferentialPair или InDifferentialPairClass('All Differential Pairs'). Обратите внимание: параметры Min/Preferred/Max Gap можно использовать во время трассировки, но не при проверке правил (design rule checking). Во время проверки правил расстояние между цепями в паре проверяется применимым правилом Electrical Clearance, как объясняется в выделенном блоке ниже.
Electrical Clearance — определяет минимальный зазор между любыми двумя примитивными объектами (например, pad-pad, track-pad) либо на любых цепях, либо в одной и той же цепи, либо между разными цепями. Задайте область действия этого правила так, чтобы оно нацеливалось на объекты, являющиеся членами дифференциальной пары, например, InDifferentialPair, и выберите соответствующие типы объектов в области ограничений (constraints) диалога, как показано ниже.
Important Note: По мере трассировки дифференциальной пары проложенные цепи в паре будут разделены текущим значением Min/Preferred/Max Gap , заданным в применимом правиле Differential Pair Routing (нажмите Shift+6 , чтобы переключаться между режимами Gap во время трассировки; смотрите строку состояния (Status bar), чтобы увидеть, какой режим применяется). Однако при проверке правил все электрические объекты будут проверяться с использованием применимого правила Electrical Clearance, поэтому если значение зазора, использованное при трассировке дифференциальной пары, меньше минимально допустимого зазора между цепями дифференциальной пары, заданного правилом Electrical Clearance, возникнет нарушение правила Electrical Clearance. Если цепи в паре расположены ближе друг к другу, чем минимальное значение, разрешённое применимым правилом Electrical Clearance, вам потребуется добавить дополнительное правило Electrical Clearance, нацеленное на дифференциальные пары, разрешающее им зазор, равный значению Diff Pair Routing Gap. В этом правиле также следует установить параметр, определяющий типы цепей (Net types), подлежащие проверке, в значение Same Differential Pair , как показано на this image .
Настройка области действия правил проектирования
Область действия (scope) правила проектирования определяет набор объектов, к которым вы хотите применить правило. Поскольку дифференциальная пара является объектом, можно использовать запросы (queries), как в следующих примерах:
InAnyDifferentialPair - объект входит в любую дифференциальную пару.
InDifferentialPair('D_V_TX1') - нацеливается на обе цепи в дифференциальной паре с именем D_V_TX1.
InDifferentialPairClass('ROCKET_IO_LINES') - нацеливается на все цепи во всех парах, принадлежащих классу дифференциальных пар с именем ROCKET_IO_LINES.
(IsDifferentialPair And (Name = 'D_V_TX1')) - нацеливается на объект дифференциальной пары, имеющий имя D_V_TX1.
(IsDifferentialPair And (Name Like 'D*')) - нацеливается на все объекты дифференциальных пар, имя которых начинается с буквы D.
Using the Differential Pair Rule Wizard to Define the Rules
Хотя правила можно создавать вручную с помощью PCB Rules and Constraints Editor (Design » Rules ), панель PCB в режиме Differential Pairs Editor предоставляет удобство Differential Pair Rule Wizard . Используйте кнопку Rule Wizard (под областью Nets на панели PCB ), чтобы открыть мастер (Wizard) и реализовать свойства правил согласно требованиям.
Differential Pair Rule Wizard проводит вас через процесс определения правил.
Обратите внимание: область действия правил будет зависеть от выбора на панели PCB перед запуском мастера, следующим образом:
Differential Pair Class
Если выбран класс All Differential Pairs , область действия для каждого правила будет All.
Если выбран конкретный класс дифференциальных пар, область действия для каждого правила будет InDifferentialPairClass('ClassName').
Differential Pair
Если на панели выбран один объект дифференциальной пары, области действия будут:
Width — InDifferentialPair('PairName')
Matched Net Lengths и Differential Pairs Routing — IsDifferentialPair And (Name = 'PairName'))
Если на панели выбрано несколько объектов дифференциальных пар, будут созданы отдельные записи области действия для каждого объекта пары, разделённые оператором 'Or'. Например, правило ширины трассировки (routing Width), нацеленное на отдельно выбранные объекты дифференциальных пар D_ETH_O.TX и D_ETH_O.RX, будет иметь область действия:
InDifferentialPair('D_ETH_O.TX') Or InDifferentialPair('D_ETH_O.RX')
Обратите внимание: зазор от цепи в дифференциальной паре до любого other электрического объекта, не являющегося частью пары, контролируется применимым правилом Clearance .
Трассировка дифференциальной пары
Related page: Интерактивная трассировка
Дифференциальные пары трассируются как пара — то есть вы прокладываете две цепи одновременно. Чтобы трассировать дифференциальную пару, выберите Interactive Differential Pair Routing в меню Route или Active Bar . Вам будет предложено выбрать одну из цепей в паре; щелкните по любой, чтобы начать трассировку. Неважно, выбрана ли положительная или отрицательная дорожка в паре — система автоматически выберет и вторую. В видео ниже показана трассировка дифференциальной пары.
Во время трассировки дифференциальной пары вы можете выполнять следующие действия:
Shift+R — переключаться между режимами трассировки разрешения конфликтов (Walkaround, Push, Hug and Push, Stop at First Obstacle, Ignore Obstacles).
Shift+Spacebar — переключаться между доступными стилями углов (угол 45°, дуга 45° в углу, любой угол, угол 90°, дуга 90° в углу).
При трассировке дифференциальной пары со стилем углов «любой угол» нажмите и удерживайте Shift , чтобы трассировать дифференциальную пару с использованием касательных дуг.
Нажмите Spacebar для переключения между двумя подрежимами направления угла.
Нажмите клавишу Backspace для удаления последней вершины.
Нажмите 3 , чтобы переключать возможные ширины трассировки дифференциальной пары (User Choice, Rule Min, Rule Preferred, Rule Max).
Нажмите Shift+6 , чтобы переключать возможные зазоры (gap) дифференциальной пары (Rule Min, Rule Preferred, Rule Max).
Используйте клавиши + и - на цифровой клавиатуре для переключения слоёв трассировки.
Чтобы переключить слой и вставить пару переходных отверстий (via pair): нажмите клавишу * на цифровой клавиатуре или используйте сочетание клавиш Ctrl+Shift+Wheel Scroll , затем
Нажмите 4 , чтобы переключать возможные размеры via (User Choice, Rule Min, Rule Preferred, Rule Max)
Нажмите 5 , чтобы переключаться между «шахматным» (staggered) и перпендикулярным (perpendicular) рисунком via при смене слоя, либо, как вариант, перемещайте курсор, чтобы переключать рисунок
Нажмите 6 , чтобы переключать возможные стеки via, или нажмите 8 , чтобы отобразить список для выбора (узнать больше о controlling the vias placed during interactive routing )
Shift+F1 — отобразить все доступные сочетания клавиш, доступные в текущей команде.
В режимах «дуга в углу» нажмите клавишу ", " для уменьшения максимального радиуса дуги и клавишу ". " для увеличения максимального радиуса дуги. Размер дуги можно изменять интерактивно, перемещая курсор. Этот параметр задаёт максимально допустимый радиус дуги, который отображается в строке состояния (Status bar) во время трассировки.
При использовании инструмента Interactive Differential Pair Routing учтите, что приоритет имеет связность (coupling) дифференциальной пары. Поэтому правила проектирования SMD To Corner и SMD Entry могут работать не так, как ожидается. Если при трассировке дифференциальной пары требуется строгое соблюдение этих правил, используйте инструмент Quick Differential Pair Routing tool .
Текущие основные ограничения трассировки дифференциальных пар с произвольными углами:
Автоматическое удаление петель в дифференциальных парах с произвольными углами поддерживается. Эта функция находится в Open Beta и доступна, когда параметр Legacy.PCB.Routing.LoopRemoval отключен в диалоговом окне Advanced Settings dialog .
Многие параметры, такие как текущий режим трассировки, ширина, зазор и размер переходного отверстия, отображаются в строке состояния (показано ниже) или в Heads Up Display (Shift+H для включения/выключения).
Многие особенности поведения трассировки дифференциальных пар такие же, как и при интерактивной трассировке одиночной цепи.
Узнайте больше о Interactive Routing
Configuring the Interactive Differential Pair Router
Многие настройки интерактивной трассировки дифференциальных пар можно изменять во время интерактивной трассировки дифференциальных пар, в режиме Interactive Differential Pair Routing панели Properties . Нажмите Tab во время трассировки, чтобы отобразить панель.
Для распознавания участников дифференциальной пары используется концепция Coupling. Когда ПО распознает объекты, принадлежащие дифференциальной паре, оно попытается перетаскивать парный проводник или переходное отверстие, если опция Keep Coupled включена в режимах Interactive Sliding или Interactive Via Dragging панели Properties (описаны ниже).
Следующие сворачиваемые разделы содержат информацию о доступных параметрах и элементах управления:
Net Information
DP Name – отображает имя дифференциальной пары.
DP Class – отображает класс дифференциальной пары, к которому относится трассировка (если она является членом класса дифференциальных пар).
Selected
Length – суммарная длина выбранных сегментов.
Delay – суммарная задержка выбранных сегментов, включая нетрассированные.
Total
Length – суммарная Signal Length . Signal Length — это точный расчет общего расстояния от узла к узлу. Размещенные объекты анализируются для выявления «стопок» или перекрывающихся объектов и извилистых путей внутри площадок, а также учитываются длины переходных отверстий. Если цепь проложена не полностью, также включается манхэттенская (X + Y) длина линии соединения.
Delay – задержка проложенных сегментов Total Length .
Выберите кликабельные ссылки DP Name , DP Class , Length и Delay в режиме Differential Pair Routing панели Properties , чтобы перейти в панель PCB – Differential Pairs Editor panel , где можно просматривать и изменять сведения о связанных цепях.
Properties
Layer – используйте выпадающий список, чтобы указать слой, на котором выполняется трассировка.
Gap – используйте выпадающий список или сочетание клавиш Shift+6 , чтобы переключаться между допустимыми зазорами.
Min – выберите, чтобы задать минимально допустимый зазор между примитивами разных цепей внутри одной дифференциальной пары.
Preferred – выберите, чтобы задать предпочтительный зазор между примитивами разных цепей внутри одной дифференциальной пары.
Max – выберите, чтобы задать максимально допустимый зазор между примитивами разных цепей внутри одной дифференциальной пары.
Via – если переходное отверстие связано с шаблоном, здесь отображается имя шаблона.
Via Diameter – задайте диаметр переходного отверстия.
Via Hole Size – задайте размер отверстия (drill) переходного отверстия.
Width – используйте выпадающий список, чтобы указать ширину.
Min – означает, что будет использована минимальная ширина, заданная правилами проектирования для текущей цепи
Preferred – означает, что будет использована предпочтительная ширина, заданная правилами проектирования для текущей цепи.
Max – означает, что будет использована максимальная ширина, заданная правилами проектирования для текущей цепи.
Interactive Routing Options
Rules
Ограничения, определённые применимыми правилами проектирования, будут перечислены в разделе
Rules панели
Properties .
Via Constraint – нажмите, чтобы открыть диалог Edit PCB Rule , в котором можно определить правила PCB для переходных отверстий (via).
Differential Pair Constraint – нажмите, чтобы открыть диалог Edit PCB Rule , в котором можно определить правила PCB для дифференциальной пары.
Повышение качества трассировки
Main article: Глянцевание (Glossing) и перетрассировка (Retracing) существующих маршрутов
PCB-редактор включает мощные инструменты для улучшения качества существующей трассировки. Эти инструменты называются Glossing и Retracing и оба доступны в меню Route .
Gloss - направлен на улучшение геометрии дорожек, пытаясь уменьшить количество углов и сократить общую длину маршрута. Gloss сохраняет существующую ширину дорожки и зазор дифференциальной пары. Glossing учитывает текущую настройку Gloss Effort (Routed) , заданную на странице PCB - Interactive Routing диалога Preferences (show image ).
Retrace - предполагает, что общая геометрия удовлетворительна, и вместо этого фокусируется на проверке соответствия трассировки правилам проектирования. Если Gloss сохраняет существующую ширину дорожки и зазор пары, то Retrace изменяет их на Preferred. Retrace — отличный инструмент, когда изменилось правило проектирования Differential Pair Routing, и это изменение нужно применить к существующей трассировке.
Анимация в предыдущем разделе, Routing a Differential Pair , включает простую демонстрацию glossing при значении Gloss Effort (Routed) , установленном в Strong.
Интерактивное изменение трассировки дифференциальной пары
Main page: Изменение существующих маршрутов
Во время трассировки будет много случаев, когда нужно изменить часть существующей трассировки; например, вас могут не устраивать выходы из площадок, и вы захотите изменить их форму (как показано в видео ниже). Хотя можно изменять существующую трассировку «чертёжным» способом — кликая и перетаскивая сегменты дорожек, — часто проще просто проложить маршрут заново.
Для этого выберите команду Route » Interactive Differential Pair Routing , затем щёлкните в любом месте по существующей трассировке. Продолжайте прокладывать новый путь, возвращаясь к существующей трассировке там, где требуется. Это создаст петлю между старым и новым путём. Когда вы щёлкнете правой кнопкой мыши или нажмёте Esc , чтобы завершить трассировку, избыточные сегменты будут автоматически удалены, включая любые избыточные переходные отверстия.
Функция удаления петель используется при включении параметра
Automatically Remove Loops — либо в панели
Properties panel (в интерактивном режиме трассировки дифференциальной пары), либо на странице
PCB Editor - Interactive Routing диалога
Preferences . Чтобы включать/выключать эту функцию во время трассировки, используйте сочетание клавиш
Shift+D .
Трассировка дифференциальной пары немного отличается от трассировки одиночной цепи. Трассировку одиночной цепи можно настроить так, чтобы последний сегмент был полым (look-ahead segment); этот сегмент не размещается при щелчке. В трассировке дифференциальной пары look-ahead сегменты отсутствуют, поэтому при щелчке вы размещаете все видимые сегменты. Расположите курсор так, чтобы не было избыточных сегментов.
Если вы корректируете дифференциальные пары, вручную перетаскивая сегменты дорожек, вы можете либо проталкивать один проводник пары другим, либо перетаскивать каждый независимо.
Используйте функцию удаления петель, чтобы интерактивно перетрассировать дифф. пару по новому пути — старая петля трассировки будет автоматически удалена. Пары также можно изменять, перетаскивая один маршрут так, чтобы он проталкивал другой.
Интерактивное перетаскивание переходных отверстий
Разработчики PCB могут тратить много времени на корректировку трассировки — например, из‑за позднего изменения проекта или чтобы довести проект до завершения. Это может означать проталкивание и сдвиг существующей трассировки, перетаскивание переходных отверстий и подталкивание компонентов.
Настройте поведение перетаскивания переходных отверстий в панели Properties panel.
В дополнение к поддержке glossing соседних маршрутов также поддерживается перетаскивание переходных отверстий. Перетаскивание переходных отверстий поддерживает Neighbor Glossing , настраиваемый через режим Interactive Via Dragging панели Properties PCB-редактора. Нажмите Tab во время перетаскивания переходного отверстия, чтобы открыть панель и изменить настройки.
Перетаскивание дифференциальной пары
Для распознавания участников дифференциальной пары используется концепция Coupling. Когда ПО распознаёт объекты, принадлежащие дифференциальной паре, оно попытается перетаскивать парную дорожку или переходное отверстие, если параметр Keep Coupled включён в режимах Interactive Sliding или Interactive Via Dragging панели Properties .
Нажмите X при перетаскивании пары переходных отверстий (via-pair), чтобы повернуть пару на 90 градусов.
Чтобы подтвердить, что парные объекты связаны (coupled), ПО проверяет, что объекты:
Для пар переходных отверстий — принадлежат паре и находятся ближе, чем 2 * Preferred Gap
Для пар дорожек — принадлежат паре, находятся на одном слое и разделены не более чем на Preferred Gap
Отображение доступного зазора
Бывало ли, что вы застревали при трассировке, не понимая, почему маршрут не проходит через этот зазор? При трассировке дифференциальных пар такая ситуация ещё вероятнее. В Altium Designer есть функция, которая помогает с этим, — dynamic display of clearance boundaries . Когда она включена, запретная область зазора, определяемая existing objects + the applicable clearance rule , отображается в виде затенённых полигонов внутри локального круга просмотра, как показано в видео ниже. Нажмите Ctrl+W , чтобы включать и выключать эту функцию.
Динамически отображать границы зазора во время трассировки дифференциальной пары.
Область отображения можно ограничить регионом вокруг текущего положения курсора или сделать её на весь экран. Это управляется подпараметром Reduce Clearance Display Area на странице PCB Editor - Interactive Routing диалога Preferences .
Инструмент быстрой трассировки дифференциальной пары
Команда Quick Differential Pair Routing (доступная из главного меню и Active Bar ) предлагает более «лёгкую» трассировку с меньшим количеством настроек и возможностей, подходящую для более простых проектов. Её общее поведение и сочетания клавиш такие же, как у стандартной команды Interactive Differential Pair Routing.
Возможности включают:
Несколько режимов трассировки, например: остановка на первом препятствии, обход (walkaround) и push and shove.
Мощные возможности перетаскивания, сохраняющие углы дорожек и ортогональность.
Функцию удаления петель, которая делает повторную трассировку быстрым и простым процессом.
Инструмент Quick Differential Pair Routing помогает интуитивно повысить эффективность и гибкость трассировки, включая следование пути курсора при прокладке участков маршрута, завершение трассировки одним щелчком, проталкивание или обход препятствий, а также автоматическое следование существующим соединениям — всё в соответствии с применимыми правилами проектирования.
Этот трассировщик называется Quick потому что он предлагает сокращённый набор функций. К функциям, отсутствующим в Quick Differential Pair Router, относятся:
Нет сглаживания поворотов
Ограниченная поддержка трассировки Any Angle
Нет проталкивания T-образных соединений
Упрощённая поддержка Push&Shove
Нет Miter Ratio, Min Arc или Pad Entry Stability
Упрощённый Gloss Effort, без поддержки Gloss Neighbor
Нет сведения дифференциальной пары при боковом выходе из стартовых выводов
Нет «прилипания» (hugging) для уже проложенных дифференциальных пар
Нет поддержания дифференциальной пары, когда проталкивается соседняя дифференциальная пара
Если вам нужна любая из этих функций, используйте инструмент Interactive Differential Pair Routing .
Следующие сворачиваемые разделы содержат информацию о доступных параметрах и элементах управления Quick Differential Pair Routing:
Чтобы распознавать участники дифференциальной пары, используется концепция Coupling. Когда ПО распознаёт объекты, принадлежащие дифференциальной паре, оно попытается перетаскивать парную дорожку или переходное отверстие (via), если включена опция Keep Coupled в режимах Interactive Sliding или Interactive Via Dragging панели Properties .
Net Information
DP Name – отображает имя дифференциальной пары.
DP Class – отображает класс дифференциальной пары, к которому относится трассировка (если она является членом класса дифференциальных пар).
Selected
Length – суммарная длина выбранных сегментов.
Delay – суммарная задержка выбранных сегментов, включая нетрассированные.
Total
Length – общая Signal Length . Signal Length — это точный расчёт общего расстояния «узел-узел». Размещённые объекты анализируются для выявления наложенных/перекрывающихся объектов и извилистых путей внутри площадок, а также учитываются длины переходных отверстий. Если цепь (net) проложена не полностью, также учитывается манхэттенская (X + Y) длина линии соединения.
Delay – задержка проложенных сегментов Total Length .
Выберите кликабельные ссылки
DP Name ,
DP Class ,
Length и
Delay в режиме
Differential Pair Routing панели
Properties , чтобы перейти в панель
PCB – Nets panel , где можно просматривать и изменять сведения о связанных цепях.
Properties
Layer – используйте выпадающий список, чтобы указать слой, на котором выполняется трассировка.
Gap – используйте выпадающий список или сочетание Shift+6 , чтобы переключаться между допустимыми зазорами.
Min – выберите, чтобы задать минимально допустимый зазор между примитивами разных цепей внутри одной дифференциальной пары.
Preferred – выберите, чтобы задать предпочтительный зазор между примитивами разных цепей внутри одной дифференциальной пары.
Max – выберите, чтобы задать максимально допустимый зазор между примитивами разных цепей внутри одной дифференциальной пары.
Via – если via связано с шаблоном, здесь отображается имя шаблона.
Via Diameter – задайте диаметр via.
Via Hole Size – задайте размер отверстия via.
Width – используйте выпадающий список, чтобы задать ширину.
Min – означает, что будет использована минимальная ширина по правилам проектирования, заданная для текущей цепи
Preferred – означает, что будет использована предпочтительная ширина по правилам проектирования, заданная для текущей цепи.
Max – означает, что будет использована максимальная ширина по правилам проектирования, заданная для текущей цепи.
Interactive Routing Options
Routing Mode – используйте выпадающий список или сочетание Shift+R , чтобы переключаться между нужными режимами трассировки. Доступны следующие варианты:
Ignore Obstacles – выберите, чтобы игнорировать существующие объекты (трассу можно прокладывать свободно). Нарушения подсвечиваются.
Walkaround Obstacles – выберите, чтобы Interactive Router прокладывал трассу в обход существующих дорожек, площадок и via. Если в этом режиме невозможно обойти препятствие без нарушения правил, появляется индикатор, показывающий, что маршрут заблокирован.
Push Obstacles – выберите, чтобы Interactive Router сдвигал существующие дорожки, освобождая место. Этот режим также может проталкивать via, чтобы освободить место для новой трассировки. Если в этом режиме невозможно протолкнуть препятствие без нарушения правил, появляется индикатор, показывающий, что маршрут заблокирован.
HugNPush Obstacles – выберите, чтобы Interactive Router «прижимался» к существующим дорожкам, площадкам и via настолько близко, насколько возможно, и при необходимости проталкивал препятствия для продолжения трассы. Если в этом режиме невозможно «прижаться» или протолкнуть препятствие без нарушения правил, появляется индикатор, показывающий, что маршрут заблокирован.
Stop At First Obstacle – в этом режиме движок трассировки остановится на первом препятствии, которое окажется на пути.
AutoRoute Current Layer – выберите, чтобы включить автотрассировку только на текущем слое.
AutoRoute MultiLayer – выберите, чтобы включить автотрассировку на нескольких слоях.
Corner Style – выберите желаемый стиль углов трассировки или используйте сочетание Shift+Spacebar , чтобы переключаться между стилями углов.
Restrict to 90/45 – включите, чтобы ограничить трассировку только углами 90 и 45 градусов.
Automatically Remove Loops – включите, чтобы автоматически удалять любые избыточные петли, создаваемые при ручной трассировке. Это позволяет перетрассировать соединение без необходимости вручную удалять лишние дорожки. Однако бывают случаи, когда нужно трассировать цепи (например, силовые) с петлями; вы можете переключать эту опцию для выбранной цепи, используя сочетание Shift+D , чтобы переопределить эту глобальную настройку для той же цепи.
Remove Loops With Vias – включите, чтобы автоматически удалять петли с via. Отключите эту опцию, чтобы via сохранялись при удалении петель.
Remove Net Antennas – включите эту опцию, чтобы удалять любой конец дорожки или дуги, который не соединён ни с каким другим примитивом и образует «антенну».
Display Clearance Boundaries – включите эту опцию, чтобы область запретного зазора (no-go), определяемая существующими объектами и применимым правилом зазора, отображалась в виде затенённых полигонов внутри локального круга обзора. Эта опция недоступна в режиме трассировки Ignore Obstacles .
Reduce Clearance Display Area – включите эту опцию, чтобы использовать меньшую границу зазора. Эта опция доступна только когда включён Display Clearance Boundaries option .
Rules
Ограничения, определённые применимыми правилами проектирования, будут перечислены в разделе Rules панели Properties .
Via Constraint – нажмите, чтобы открыть диалог Edit PCB Rule , в котором можно определить правила PCB для via.
Differential Pair Constraint – нажмите, чтобы открыть диалог Edit PCB Rule , в котором можно определить правила PCB для дифференциальной пары.
Согласование длин дифференциальных пар
Дифференциальные пары часто используются в высокоскоростных проектах благодаря присущей им помехоустойчивости и тому, что они упрощают задачу обеспечения качественного обратного пути (return path) для сигналов. Однако, как и для одиночных сигналов, их длины необходимо контролировать, чтобы выполнялись требования по таймингу.
Во время трассировки дифференциальной пары длина каждой из двух цепей пары отображается в строке состояния, а также в Heads-up display (переключение вкл./выкл. — Shift+H ). Значения длины, отображаемые в панели PCB , обновляются, когда вы выходите из режима трассировки пары.
Текущая длина маршрута каждой цепи в паре отображается в Heads-up display (переключение вкл./выкл. — Shift+H ).
Панель PCB используется для анализа объектов в рабочем пространстве и включает режимы для анализа Nets , Differential Pairs и xSignals , среди прочих. Панель содержит сведения о каждой цепи/дифференциальной паре/xSignal, включая длину сигнала и задержку — щёлкните правой кнопкой мыши в каждом разделе панели, чтобы открыть контекстное меню команд для этого раздела. Например, когда панель находится в режиме Nets , щёлкните правой кнопкой мыши в разделе Nets панели и используйте подменю Columns , чтобы включить или отключить такие детали, как Signal Length и Delay . Когда применены правила Length и/или Matched Length, столбец Signal Length для цепей, не прошедших проверку правила, будет подсвечиваться оранжевым (меньше целевой длины) или красным (превышает целевую длину).
Используйте PCB panel, чтобы отслеживать прогресс согласования длин.
► Узнайте больше о панели PCB
Правила проектирования Matched Length и Length
Правила проектирования Length и Matched Length можно определить, чтобы обеспечить выполнение требований по времени пролёта (flight time) и перекосу (skew). Помимо использования при проверке правил проектирования (DRC), эти правила также применяются при интерактивной подстройке длины.
Правило проектирования Matched Length определяет самую длинную пару, попадающую в область действия правила, и использует значение Average Length этой пары в качестве эталона для сравнения остальных целевых пар, требуя, чтобы их длины находились в пределах +/− допуска (Tolerance), заданного в правиле. Значение Average Length отображается в режиме Differential Pairs Editor панели PCB .
Правила проектирования Length и Matched Length могут иметь область действия по Length Units или Delay Units . Если правила ограничены по задержке, индикатор Length Tuning Gauge также будет отображаться по задержке.
Правила проектирования Within-Pair и Between Pair
Скорее всего, у вас будут требования к согласованию длины как между парами, так и внутри каждой пары.
Чтобы управлять этим, создайте подходящие правила проектирования Matched Length:
Определите правило Matched Length, которое применяется поперёк (между) парами (это достигается выбором опции Group Matched Lengths ). Ограничьте правило так, чтобы оно применялось к нужным парам (или xSignals), как показано на изображении ниже.
Создайте правило согласования длины, чтобы задать требования по длине между дифференциальными парами или, как в этом примере, между xSignals.
Определите ещё одно правило Matched Length, которое применяется внутри пары (это достигается выбором опции Within Differential Pair Length ). Это правило гарантирует, что длины двух цепей (nets) внутри каждой пары находятся в пределах допуска. Обратите внимание: это правило должно быть ограничено с использованием настройки Where the Object Matches , нацеленной на дифференциальные пары, как показано ниже. Это правило должно иметь более высокий приоритет, чем правило «между парами».
Создайте второе правило согласования длины, чтобы задать требования по длине внутри пар.
Настройка длины дифференциальной пары
Main article: Настройка длины
Длина пар и цепей внутри каждой пары настраивается с помощью двух команд настройки длины. Чтобы настроить длины:
Длину дифференциальной пары можно точно настроить с помощью команды Interactive Diff Pair Length Tuning в меню Route . Во время настройки длины можно использовать горячие клавиши для интерактивной регулировки стиля и размера «гармошки» (accordion) либо нажать Tab , чтобы открыть панель Properties в режиме Differential Pair Length Tuning . На панели задаётся целевая длина:
Из применимых правил проектирования Length и/или Matched Length
Из выбранной пользователем уже проложенной дифференциальной пары
Вручную — введите значение в поле Target Length
Чтобы настроить длину цепи внутри пары, используйте команду Interactive Length Tuning в меню Route . Если вы попытаетесь настраивать более длинную цепь в паре, появится сообщение Target Length Shorter than Old Length .
Сначала настраивайте длины дифференциальных пар, затем настраивайте длину более короткой цепи внутри пары.
Если при настройке длины не появляются «гармошки», скорее всего, текущие настройки не подходят для доступного пространства, в котором нужно разместить «гармошку». Если это происходит во время настройки, нажмите Tab , чтобы открыть Properties panel в режиме Differential Pair Length Tuning и проверьте, что параметры в разделе Pattern панели имеют разумные значения. Например:
Значение Max Amplitude может быть слишком большим
Если Style установлен в Mitered Arcs, процент фаски (Miter percentage) может быть слишком большим, чтобы сформировать дугу при текущих Amplitude и Space
Хороший вариант — установить Style в Mitered Lines, нажать кнопку Pause, чтобы продолжить настройку длины, затем использовать сочетания 1 & 2 для интерактивной регулировки Miter , сочетания 3 & 4 для регулировки Space (pitch), и сочетания , и & . для регулировки Amplitude . Когда настройка будет выглядеть так, как вам нужно, нажмите Spacebar , чтобы переключиться на предпочитаемый Style.
См. страницу Length Tuning , чтобы узнать больше — там приведён подробный список горячих клавиш, которые можно использовать для изменения стиля «гармошки», амплитуды и шага. На странице также объясняется, как программа решает, какие настройки правил соблюдать, когда в правилах проектирования Length и Matched Length есть перекрывающиеся настройки.
Демонстрация настройки длины и изменения «гармошек»
В видео показано, как длины пар подгоняются относительно других пар (на основе длин xSignal) путём добавления «гармошек» настройки длины. Затем более короткий проводник каждой пары настраивается по длине относительно более длинного проводника этой пары. Далее в видео показано, как пары можно интерактивно перемещать и изменять их форму, как можно удалить «гармошку» настройки длины и как можно сформировать новую «гармошку» во время размещения с помощью горячих клавиш.
Длину дифференциальной пары можно настроить, добавляя «гармошки» настройки длины. «Гармошка» — это объект, который можно перемещать, изменять по форме и удалять.
См. также
## Благодарность Роберту Феранеку из FEDEVEL Academy (www.fedevel.com ) за предоставление платы разработки iMX6 Rex для использования на изображениях на этой странице (http://www.imx6rex.com/ ).