Инструменты трассировки в системе проектирования плат могут сэкономить много времени. Простую плату с небольшим количеством компонентов можно развести и вручную, но трассировка таких компонентов, как соединители и ПЛИС с большим количеством соединений, может быть трудозатратной. Автоматизированная трассировка, эквивалентная замена выводов и логических ячеек позволяют легко и быстро растрассировать все эти соединения, причем в соответствии с правилами проектирования.
Если вы работаете над быстродействующим устройством, понадобится трассировка дифференциальных пар для уменьшения перекрестных помех в чувствительных сигнальных цепях. При работе с большим количеством компонентов с жесткими требованиями к их размещению автоматизированная трассировка дифференциальных пар может помочь сэкономить время. Необходимо, чтобы все эти возможности работали согласно правилам проектирования.
САПР печатных плат, которые объединяют инструменты трассировки, конструирования и анализа в одном модуле проектирования, работающем на основе правил, позволяют обеспечить соответствие ваших проектов техническим требованиям. Здесь у вас также есть возможность задавать собственные правила, важные для определенных аспектов. Другие средства проектирования заявляют об объединении этих возможностей, но пока еще разделяют их на разные программы или заставляют вас использовать сторонние средства для выполнения базовых задач проектирования.
После того, как вы решили использовать дифференциальную передачу сигналов в устройстве, необходимо задать, какие соединения компонентов будут эту передачу использовать. Перед трассировкой дифференциальных пар нужно определить сигнальные цепи на плате. Редакторы схем и плат в Altium Designer включают в себя функции определения цепей, и вы можете задать дифференциальные пары в сигнальной цепи. Сначала нужно выбрать компоненты, которые будут соединены друг с другом, разместить их на схеме и определить, какие выводы входа/выхода будут использоваться для дифференциальной передачи сигналов.
Для начала посмотрим на схему внизу и определим дифференциальные пары, которые необходимо использовать на плате. Эта схема содержит ПЛИС Lattice LFXP2-5E-5FT256C. Этот компонент можно найти в файле интегрированной библиотеки Lattice FPGA XP2.IntLib. Для краткости будем использовать только ячейку A из этой библиотеки, которая отображается как Bank 0 на схеме. Некоторые выходные сигналы отправляются на 12-выводной соединитель MHDR1X12, который можно найти в файле интегрированной библиотеки Miscellaneous Connectors.IntLib.
ПЛИС и соединитель в Altium Designer
Обратите внимание, что здесь мы просто выбрали определенные пары входных/выходных выводов ПЛИС для подключения к соединителю MHDR1X12. Входные/выходные выводы ПЛИС, доступные для дифференциальной передачи сигналов, обозначены обоюдоострой стрелкой. Теперь мы хотим определить некоторые из этих выводов как дифференциальные пары. Одно из соединений должно быть определено как положительное, другое – как отрицательное. Кроме того, пары соединений, настроенные для дифференциальной передачи, должны быть связаны в цепь дифференциальной пары.
Вы можете определить соединения как дифференциальные пары, выбрав меню “Place”, наведя курсор на пункт “Directives” и выбрав “Differential Pair”. Вы сможете разместить специальный символ на соединениях, которые нужно определить как дифференциальную пару.
Поскольку необходимо определить класс дифференциальных пар, добавим метку цепей этого класса каждой директиве. Я определил классы цепей “D1” для соединений C4 и A3 и “D2” для соединений F5 и G6. Также необходимо дать каждому соединению собственную метку цепей – для этого нажмите меню “Place” и затем выберите “Net Label”. Altium Designer использует отдельное соглашение об именовании для дифференциальных пар. Положительная цепь должна использовать суффикс “_P” метки цепи, отрицательная цепь – суффикс “_N”.
Если дважды щелкнуть по символу директивы, вы сможете определить классы и правила проектирования для соединения в дифференциальной паре. Вы также можете щелкнуть правой кнопкой мыши по символу директивы и выбрать “Properties”, что откроет панель свойств, в которой можно определить метку, классы и правила для соединения. Здесь добавим класс “Diff. Pair Net Class” каждой паре и назначим имя класса для этой цепи.
Определение класса дифференциальной пары
Теперь мы хотим добавить правила проектирования этой директиве. Если нажать кнопку “Add” под списком правил, появится диалоговое окно с длинным списком правил проектирования, где можно указать всё, от ограничений размера и размещения до ограничений трассировки дифференциальных пар. В некоторых случаях могут понадобиться разные правила для разных наборов дифференциальных пар. Либо вы можете задать правило для всех пар в документе платы или использовать правило Altium Designer по умолчанию. Здесь мы добавим правило по умолчанию для каждой дифференциальной пары в схеме.
Если вы выберете правило “Differential Pairs Routing” и нажмете “OK”, вы увидите диалоговое окно, которое позволяет задать несколько ограничений трассировки дифференциальных пар, как показано ниже. Здесь зададим предпочтительную ширину 10 милов, но можно задать любое необходимое значение. После ввода ограничений нажмите “OK”, и это правило проектирования будет применено соединению.
Правила проектирования дифференциальных пар и ограничения трассировки
Теперь мы можем передать дифференциальные пары со схемы в плату и растрассировать их на плате. В нашем примере я определил остальные соединения между ПЛИС и соединителем как дифференциальные пары. Сначала добавьте в проект новую плату и передайте туда данные со схемы. Для этого можно открыть пустой документ платы и в меню “Design” выбрать “Import Changes From…”.
Полученную изначально конструкцию можно улучшить, переместив или повернув один или оба компонента. Взглянув на линии соединения, можно понять, что трассировка будет проще, если расположить соединитель горизонтально над ПЛИС. Если посмотреть на такое расположение, то вы увидите, что трассировку можно будет упростить с помощью эквивалентной замены дифференциальных пар и выводов.
В процессе эквивалентной замены выводов и дифференциальных пар необходимо попытаться устранить как можно больше пересечений соединительных линий. Одно из расположений, которое можно растрассировать, показано ниже. Обратите внимание, что были заменены пары 2 и 3, а также 5 и 6. После эквивалентной замены этих пар, некоторые выводы внутри этих пар также были заменены, чтобы избежать пересечения их соединений.
Теперь мы можем трассировать соединения между соединением и ПЛИС. Может понадобиться творчески использовать переходы и трассировку через внутренние сигнальные слои, чтобы подобраться ко внутренним выводам ПЛИС.
Переходы внутри ПЛИС необходимо делать микропереходами; мы использовали переходы 10 милов с диаметром 5 милов, чтобы обеспечить достаточный зазор. Хотя Altium Designer позволяет указывать любой размер перехода, это практически наименьший размер, который следует использовать. Также необходимо убедиться, что выбранные переходы и контактные площадки совместимы с используемыми корпусами BGA. Переходы вне ПЛИС будут размером 20 милов с диаметром отверстий 10 милов, поскольку здесь не требуется такая высокая точность изготовления, как для более малых переходов.
После того, как переходы размещены, подходящие пары сверловки определены и всем переходам назначены цепи, можно использовать интерактивную трассировку дифференциальных пар для размещения трасс между соединителем, переходами и выводами ПЛИС. На изображении ниже показаны дифференциальные пары, растрассированные интерактивно. Трассировщик дифференциальных пар размещает трассы в паре параллельно друг другу, в соответствии с ограничениями, указанными в правилах проектирования.
Трассировка дифференциальных пар в Altium Designer
Окончательная трассировка двух компонентов может выглядеть следующим образом:
Окончательная трассировка дифференциальных пар
Если вы знакомы с ПЛИС и подобными компонентами с большой плотностью выводов, вам может быть полезна стратегия создания фэнаутов, чтобы использовать наибольшее доступное число выводов компонента. Обратите внимание, что в этом нет необходимости для небольшого количества выводов – в нашем случае, ручного размещения сигнальных линий во внутренней части платы будет вполне достаточно. К счастью, Altium Designer предлагает средство автоматизированного создания фэнаутов, которое позволяет сэкономить много времени при трассировке в/от ПЛИС.
В дальнейшем понадобится подстройка длины для синхронизации и обеспечения того, что фронт и срез сигнала в дифференциальной паре выровнены. Фронт сигнала в одной цепи должен совпадать со средней точкой среза сигнала противоположной полярности в другой трассе дифференциальной пары. Добавление меандров является одним из компенсационных методов, которые можно использовать для добавления длины более короткой трассе в дифференциальной паре.
Altium Designer объединяет информацию о вашем проекте с инструментами трассировки для обеспечения корректной работы ваших устройств. Интегрированная среда проектирования Altium Designer позволяет использовать все инструменты совместно благодаря одному модулю, работающему на основе правил. Лучшие инструменты ввода схем, механического моделирования, расчетов и трассировки – это именно то, что необходимо для создания лучшей электроники на базе печатных плат.
Поговорите с экспертом Altium сегодня, если хотите узнать больше об Altium Designer.