Проект Pi.MX8 - Размещение компонентов на плате Часть 2

Lukas Henkel
|  Создано: 21 Марта, 2024  |  Обновлено: 24 Июля, 2024
Pi MX8 Глава IV

Главы

1
Introduction and Overview
| Created: January 18, 2024
2
Component placement and layout planning
| Created: February 06, 2024
3
Board Layout Part 1
| Created: February 22, 2024
4
Board Layout Part 2
| Created: March 21, 2024
5
Board Layout Part 3
| Created: June 24, 2024
6
Board Layout Part 4
| Created: July 23, 2024
7
PCB Assembly
| Coming soon

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

Test of button

Настройка профилей импеданса

Настройка профилей импеданса в менеджере стека слоев выполняется просто. Нам нужно определить как одиночные, так и дифференциальные профили импеданса. Информацию о необходимых значениях импеданса можно взять из стандартов интерфейсов и руководств по проектированию аппаратного обеспечения для процессора NXP i.MX8. В дизайне используются следующие значения импеданса как для одиночных, так и для дифференциальных:

Table of Impedances

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

Layerstack manager Impedance profile differential 100 Ohm

Профиль импеданса менеджера стека слоев дифференциальный 100 Ом

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

Настройка правил проектирования

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

Multiple net classes assigned to a design blanket

Несколько классов сетей, назначенных на дизайнерское одеяло

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

Impedance profile used in the design rule dialog – high priority rule overrides impedance profile

Профиль импеданса, используемый в диалоговом окне правил проектирования – правило высокого приоритета переопределяет профиль импеданса

Обратите внимание, что у нас есть еще одно правило проектирования, которое имеет наивысший приоритет в нашей настройке. Это правило проектирования применяется только к определенным зонам проектирования, которые мы создали в предыдущем обновлении. Эти зоны располагаются непосредственно под компонентами с мелким шагом и позволяют нам локально использовать ширину и расстояние между дорожками до 85 мкм в зоне разветвления. Правила проектирования для этих зон имеют наивысший приоритет, поскольку нам необходимо переопределить заданные профили импеданса. Поскольку мы можем не соблюдать требуемую геометрию дорожек в этих зонах, нам нужно держать их как можно меньше и использовать геометрию дорожек, отклоняющуюся от профилей импеданса, только там, где это абсолютно необходимо. Если мы будем держать эти секции очень маленькими, общее влияние на целостность сигнала канала будет приемлемым. Однако нам нужно будет проверить это в наших постлейаутных симуляциях.

Design rooms in red shown underneath fine-pitch BGAs

Зоны проектирования в красном цвете, показанные под компонентами BGA с мелким шагом

Маршрутизация LPDDR4

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

Вы заметите, что мы еще не определили общую стратегию трассировки для этой платы. Мы могли бы сделать это до размещения каких-либо трасс, и в зависимости от личных предпочтений, в этом нет ничего плохого. На этой плате я решил сначала проложить интерфейс DRAM, чтобы увидеть, сколько места и сколько слоев трассировки нам нужно выделить для интерфейса DRAM. Если нам удастся проложить микросхему LPDDR4 на двух или трех сигнальных слоях, тогда мы сможем выделить один или два слоя трассировки для других интерфейсов поблизости. Поскольку интерфейс DRAM занимает довольно много места, особенно на маленькой плате, как эта, наличие еще одного свободного сигнального слоя было бы очень желательно.

Разделительные конденсаторы LPDDR4

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

Каждый питающий контакт на микросхеме DRAM имеет свой сквозной VIA, который может соединяться со всеми 10 слоями платы. Нам необходимо использовать VIA на этих контактах, поскольку мы имеем дело с возвратными токами на всех земляных плоскостях в стеке. Поскольку развязывающие конденсаторы размещены на нижней стороне платы, нам также необходимо иметь доступ к питающим контактам VDD и VDDQ на нижней стороне платы. Микросхема DRAM имеет шаг контактов 0,65 мм по оси Y. Этот шаг контактов позволяет нам размещать развязывающие конденсаторы непосредственно между контактами GND и VDD/VDDQ. Такое расположение обеспечивает минимально возможную петлевую индуктивность. Теперь мы можем равномерно распределить развязывающие конденсаторы среди питающих контактов.

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

Decoupling capacitors placed on bottom side of the LPDDR4 IC

Развязывающие конденсаторы, размещенные на нижней стороне микросхемы LPDDR4

Трассировка сигналов LPDDR4

Поскольку для развязывающих конденсаторов не требуются дополнительные сегменты дорожек, мы можем использовать пространство на нижнем слое для маршрутизации сигналов. Мы будем придерживаться референсного дизайна i.MX 8M plus и разместим все дифференциальные пары DQS на нижней стороне платы. Кроме того, мы также можем разместить сигналы сброса DRAM и разрешения тактового сигнала на нижней стороне:

DRAM routing bottom side

Маршрутизация DRAM с нижней стороны

Раскраска сигналов команд/адресов/управления в отличный от групп DQ цвет помогает нам определить хорошую стратегию маршрутизации. Голубые сигналы команд/адресов/управления расположены за первыми двумя рядами контактных выводов на SoC, за исключением двух сигналов тактовой частоты. Если мы хотим маршрутизировать эти сигналы на внутренних слоях, мы должны убедиться, что никакие переходные отверстия (VIA) от двух внешних рядов контактных выводов не мешают. Мы можем соединить Byte 0 из каналов A и B, а также сигналы тактовой частоты, которые все доступны на двух внешних рядах, непосредственно на верхнем слое без необходимости изменения слоя:

DRAM top side routing

Маршрутизация DRAM с верхней стороны

Байт 1 с каналов A и B оба расположены ближе к углу BGA. Это идеально, так как это позволяет нам перенести эти сигналы на L2 и соединить их с микросхемой DRAM, оставляя достаточно места между этими двумя группами трассировки для подключения сигналов команд/адресов/управления:

DRAM L2 routing

Трассировка DRAM L2

Строго говоря, мы не меняем опорный слой, но мы вводим второй, переключаясь на L2. Как только мы размещаем трассу с переменным во времени напряжением над слоем земли, ток будет течь независимо от того, присутствует ли второй опорный слой. Чтобы обеспечить возвратный путь для этих токов, мы используем возвратные пути через VIA рядом с переходами слоев на верхнем слое. Сигналы, которые переключают слои за двумя внешними рядами контактов под BGA, уже имеют рядом возвратные пути через VIA, которые образованы двумя рядами контактов земли и заземляющими VIA SoC:

Return path VIAs for the DRAM interface

Возвратные пути через VIA для интерфейса DRAM

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

 Return path management - voids and splits on the left side, improved routing on the right side

Управление путем возврата - пустоты и разделения с левой стороны, улучшенная трассировка с правой стороны

Располагая микропереходы и участки трасс в соответствии с сеткой BGA устройства DRAM, мы можем гарантировать, что под сигнальными линиями всегда будет надежное заземление:

Трассы на верхнем слое и на L2 расположены на равном расстоянии друг от друга, как минимум 0.275 мм. Это расстояние необходимо для того, чтобы не создавать избыточную перекрестную помеху между этими сигналами. Мы должны будем проверить это в пост-лейаутной симуляции также.

Единственное, что осталось сделать сейчас для завершения трассировки интерфейса DRAM, это настройка задержек. Однако мы не будем это делать сейчас. Вместо этого настройка задержек будет выполнена для всех интерфейсов после завершения трассировки. Для очень плотных дизайнов или интерфейсов, требующих большой компенсации задержек, лучше выполнить настройку длины раньше, чем позже. Требования к времени на LPDDR4 не слишком строгие, поэтому я уверен, что у нас не возникнет проблем, если мы займемся этим позже.

На данный момент трассировка DRAM завершена, и мы можем перейти к планированию компоновки и трассировке всех остальных интерфейсов. Об этом и многом другом будет рассказано в следующем обновлении проекта открытого вычислительного модуля!

Об авторе

Об авторе

Лукас — увлеченный разработчик аппаратного обеспечения с более чем 10-летним опытом работы в электронной индустрии. Будучи сооснователем собственной инженерной компании, он имел честь работать над множеством захватывающих проектов, принимая на себя вызовы, варьирующиеся от точного аналогового дизайна до высокоскоростной разводки печатных плат и силовой электроники.

Будучи сторонником философии открытого исходного кода, Лукас поставил перед собой цель предоставить всем заинтересованным возможность узнать о конструкции и функционировании современных электронных устройств. С этой целью он основал компанию Open Visions Technology (OV Tech GmbH), которая стремится вывести на рынок высококачественную потребительскую электронику с возможностью ремонта, полностью документированную и соответствующую последнему слову техники.

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

Связанные ресурсы

Связанная техническая документация

Вернуться на главную
Thank you, you are now subscribed to updates.