В предыдущем блоге, я обсудил некоторые основные моменты подготовки правил трассировки для двухслойных печатных плат, чтобы обеспечить трассировку и размещение цифровых сигналов. В частности, мы рассмотрели некоторые основные правила стека и трассировки, необходимые для поддержки цифрового интерфейса, такого как I2C или SPI, на двухслойной печатной плате. При работе с этими интерфейсами несколько простых рекомендаций могут помочь обеспечить целостность сигнала на вашей плате и уменьшить электромагнитные помехи.
Что насчет интерфейса с контролируемым импедансом, такого как USB? Необходимость контроля импеданса и понимание, когда его можно нарушить, является основным моментом для трассировки чего-либо подобного USB на двухслойной печатной плате. В этой статье я покажу, как следует трассировать протокол высокой скорости, такой как USB. В частности, мы рассмотрим важные правила проектирования, необходимые для трассировки платы, особенно ограничение длины, которое мы могли бы принять для дорожек, передающих данные USB. Если вы еще не читали предыдущую статью этой серии, рекомендую ознакомиться, так как она заложила некоторую концептуальную основу, необходимую для понимания ограничений, которые устанавливаются для требований к трассировке USB.
В предыдущей статье о трассировке двухслойных печатных плат мы рассмотрели процедуру определения максимально возможной длины линии, которую вы можете использовать в своем дизайне, без необходимости применения согласования импедансов. Мы выяснили, что предел длины зависит от уровня отклонения входного импеданса, который вы можете терпеть вдоль длины линии передачи. В частности, в зависимости от того, считаете ли вы важным фактором для ограничения длины следа 10% до 25% расстояния прохождения сигнала.
Для этой демонстрации я хочу посмотреть на трассировку USB 2.0 на этой плате в соответствии со стандартом High Speed, и я сосредоточен на этом стандарте по конкретной причине. USB 2.0 (High Speed) все еще используется в некоторых системах, поскольку он обеспечивает подключение к старым устройствам наряду с быстрой скоростью передачи данных, и он все еще используется на популярных платформах, таких как Arduino с разъемом типа B.
Чтобы проиллюстрировать два возможных дизайна, я сравнил скорость передачи данных и время нарастания сигнала для двух спецификаций USB 2.0 (Full Speed и High Speed):
|
|
|
|
|
|
Процесс, который я покажу ниже, проводится для сигналов USB 2.0 с высокоскоростным временем нарастания и сдвигом, но вы можете применить тот же процесс к USB 3.0 или любому другому высокоскоростному интерфейсу. Просто помните: маршрутизация на 2-слойной плате не подходит для каждого интерфейса. Например, я не знаю никого, кто бы рекомендовал маршрутизацию DDR4 на 2-слойной плате из-за малых пределов длины и излучаемого шума от этих быстрых сигналов.
Сначала мы хотели бы знать критическую длину для сигнала USB, маршрутизируемого на типичной 2-слойной печатной плате. Для ядра Dk = 4.8 из материала FR4 у нас будет задержка распространения примерно 150 пс/дюйм, или примерно 6 дюймов/нс. С нашим временем нарастания 500 пс для спецификации High Speed это дает дистанцию распространения сигнала 3 дюйма во время времени нарастания. Если мы будем очень консервативны и используем 10% предел для критической длины, это дает критическую длину 0.3 дюйма!
Топология, которую нам нужно проложить здесь, представляет собой просто последовательную линию с дифференциальными парами. Так что у вас есть три элемента:
Возможно, вы задаетесь вопросом, как это сделано на платформе вроде Arduino? Посмотрите на изображение ниже Arduino Mega, которую можно купить на Amazon. USB-контроллер расположен близко к разъему и определенно находится в пределах 1 дюйма.
Вы найдете аналогичное расположение и трассировку на других платах Arduino. Чтобы избежать несоответствия входного импеданса с разъемом, кабелем и приемником, мы хотели бы следовать совету, указанному выше, и держать трассу короткой на нашей двухслойной печатной плате. Однако нам не нужно быть настолько консервативными, чтобы применять лимит в 10%. Вместо этого, если мы пойдем с лимитом в 25%, у нас будет гораздо более комфортное расстояние трассировки в 0,75 дюйма, что гораздо более управляемо на двухслойной печатной плате.
Обратите внимание, что это касается спецификации High Speed. При спецификации Full Speed у нас есть более мягкое ограничение критической длины в 2.4 дюйма (10% предел) или 6 дюймов (25% предел) для времени нарастания 4 нс.
Важно отметить следующее: нет установленного предела (10%, 25% или иного), где у нас есть допустимая критическая длина, и в зависимости от размера вашей печатной платы, вы можете превысить критическую длину и теперь вам нужно проектировать с учетом правильного импеданса. Предел зависит от нескольких факторов, и определение правильного процента для вашей критической длины требует расчета нескольких значений импеданса. Вместо разработки правила, основанного на этой критической длине, всегда проще просто проектировать с требуемым импедансом USB.
Далее нам необходимо рассмотреть, как завершается выход драйвера. Поскольку мы говорим конкретно о USB, обратите внимание, что спецификация USB 2.0 требует наличия резисторов завершения на линиях D+ и D- рядом с разъемом для согласования импедансов. Эти резисторы могут быть интегрированы в приемопередатчик USB на кристалле, или они могут потребоваться как внешний компонент. Типичные значения составляют 15 Ом, 22 Ом или 45 Ом, хотя могут использоваться и другие значения; убедитесь, что проверили техническое описание вашего компонента, чтобы узнать, какое завершение необходимо. Как пример, контроллер USB Hub TUSB2077APTR использует резисторы завершения на 27 Ом. Обязательно проверьте техническое описание, чтобы узнать, нужны ли вам эти внешние резисторы.
С учетом лимита сдвига в 100 пс в стандарте высокой скорости, мы теперь можем рассчитать допустимое различие в длине между двумя сторонами дифференциальной пары (сигналы D+ и D-). Принимая приблизительную оценку задержки распространения 6 нс/дюйм для маршрутизации на поверхностном слое и умножая ее на лимит сдвига, мы получаем разницу в длине трассы 0,6 дюйма (600 мил). Это очень много! У нас есть большая свобода для некоторого согласования длины трасс. Однако здесь есть важный момент: это включает в себя полную длину соединения (вашу плату + кабель + приемную плату). Поэтому, чтобы быть на стороне безопасности, постарайтесь максимально ограничить сдвиг, проводя пары вместе и обеспечивая некоторое согласование длины, где это возможно. Это довольно просто, поскольку микросхемы контроллера USB обычно размещают сигналы D+ и D- на одном краю чипа.
Когда разница в длине короткая, вам может не потребоваться настройка длины, так как это занимает место на макете печатной платы. Чтобы увидеть, что делают другие функциональные системы, посмотрите на изображение макета печатной платы Arduino UNO ниже (примечание: это было преобразовано из файлов Eagle). Линии USB выделены на изображении. Если мы измерим длины положительной и отрицательной сторон этих линий (охватывая каждую сторону терминирующих резисторов), мы обнаружим, что разница в длине составляет около 180 милов. Вот почему эти линии не согласованы по длине между Arduino и USB-разъемом.
В этом ограниченном пространстве интерфейс все равно будет работать корректно, потому что разница в длинах составляет всего около 180 милов, что значительно меньше допустимого отклонения. Даже с наихудшим эффектом переплетения волокон на ламинате с рыхлым стекловолокном общее отклонение (в терминах длины) составит только эквивалент менее примерно 230 милов, что все еще значительно ниже допустимого отклонения для этого интерфейса.
Как я указал в предыдущем блоге, вы не можете использовать ширину дорожки, соответствующую характеристическому импедансу, в High Speed USB 2.0 и при этом соответствовать спецификации импеданса. Помните, ширина дорожки на стандартной плате толщиной с два слоя была около 110 милов для Dk - 4.8. Как нам вообще возможно достичь спецификации импеданса дифференциальной пары в USB 2.0 высокой скорости с такой шириной дорожки?
На самом деле, нам не нужно использовать эту ширину дорожки из-за способа, которым дорожки в дифференциальных парах будут связываться друг с другом. Если вы используете калькулятор стека слоев для расчета дифференциального импеданса для микрополос на толстой плате с двумя слоями, вы обнаружите, что фактическая необходимая ширина дорожки значительно меньше и зависит от расстояния. Для наших примеров микрополос на 2-слойной печатной плате, Менеджер Стека Слоев в Altium Designer говорит нам, что ширина дорожки составляет около 16 милов при расстоянии в 5 милов.
Вы можете использовать более тонкие дорожки с этими дифференциальными микрополосками, но вам потребуется использовать меньшее расстояние между ними. В данном дизайне мы близки к пределу допустимых зазоров между дорожками для травления, поэтому сохранение зазора в 5 мил между дорожками является приемлемым, поскольку мы достигаем спецификации для однопроводной и дифференциальной схем с этими ширинами дорожек. Как мы узнаем, что достигаем однопроводной части спецификации? Это потому, что: указанная выше ширина дорожки предназначена для нечетного режима импеданса одной дорожки, а не для характеристического импеданса! Вот почему вам нужно придерживаться этого конкретного значения ширины дорожки, а не использовать значение характеристического импеданса для одиночной микрополосы в изоляции.
Есть альтернатива, о которой мы не говорили: использование копланарных дифференциальных пар микрополос. Размещая земляное покрытие вплотную к микрополосам на поверхностном слое и размещая земляное покрытие под сигналами на нижнем слое, вы можете достичь дифференциального импеданса 90 Ом с дорожками шириной 9,5 мил, зазором между дорожками 5 мил и расстоянием до земли 5 мил. Из приведенных ниже значений видно, что мы хорошо достигаем требуемого импеданса 90 Ом в спецификации USB 2.0 с этими параметрами.
С этой организацией нам не придется так много беспокоиться о проблеме критической длины и проблеме ширины трассы на двухслойной плате. Однако, вам нужно учесть, что эту ширину и расстояние между трассами необходимо поддерживать на протяжении всего маршрута. Маршрутизация USB рассматривает трассы как отдельные однопроводные трассы, которые просто передают дифференциальный сигнал, так что вы можете прокладывать их отдельно.
Топология маршрутизации довольно проста: прокладывайте маршрут от чипа USB к резисторам завершения/подтяжки/понижения и затем к разъему, все как дифференциальные пары. Ниже показана высокоуровневая топология маршрутизации с резисторами подтяжки и понижения. Также, как показано ниже, согласно стандарту USB 2.0 требуются некоторые конденсаторы.
Прокладка дорожек довольно проста: следуйте стандартным практикам прокладки дифференциальных пар между каждой частью системы, и у вас не возникнет проблем с регистрацией сигналов или согласованием импеданса. Держите короткие маршруты с прямыми соединениями, идущими от линий дифференциальной пары, для подключения к GND/VCC для резисторов подтяжки и опускания. Обязательно проверьте схему применения для вашего устройства в технических описаниях, так как линии D+/D- могут иметь дополнительные внешние конденсаторы на устройстве; вы увидите это на устройстве TUSB2077A, которое я упомянул выше.
Мы покажем реальный пример в компоновке печатной платы в предстоящем блоге. Пока что попробуйте сделать это самостоятельно и посмотрите, сможете ли вы проложить дорожки.
В этом блоге и нашем предыдущем посте мы рассмотрели некоторые важные правила прокладки, которым следует следовать при настройке и прокладке высокоскоростного интерфейса, такого как USB, на двухслойной печатной плате. Вот наши окончательные рекомендации по прокладке:
Показанные здесь рекомендации по трассировке не всегда гарантируют EMC, есть и другие аспекты дизайна, которые иногда плохо выполнены в 2-слойных печатных платах. Однако, эти рекомендации определенно помогут с EMI, если вы работаете со спецификацией Full Speed. Мое личное предпочтение - использовать 4-слойную печатную плату для последовательных цифровых шин и протоколов высокой скорости, особенно если плата большая или она будет выпускаться большим тиражом.
Если вы используете USB 3.0, тогда у вас будут строгие требования к согласованию длин из-за быстрых скоростей переключения, и вы должны разместить интерфейс близко к разъему, как мы сделали со спецификацией Full Speed, указанной выше.
Когда вам нужно проложить интерфейс, например USB, на двухслойной печатной плате или более сложной многослойной плате, используйте инструменты размещения и трассировки печатных плат в CircuitMaker. Все пользователи CircuitMaker могут создавать схемы, размещения печатных плат и производственную документацию, необходимую для перевода дизайна из идеи в производство. Пользователи также имеют доступ к личному рабочему пространству на платформе Altium 365™, где они могут загружать и хранить данные дизайна в облаке, а также легко просматривать проекты через веб-браузер на защищенной платформе.
Начните использовать CircuitMaker уже сегодня и следите за новинками CircuitMaker Pro от Altium.