Компоновка печатной платы Quad SPI

Я пытаюсь сделать хороший макет для флэш-памяти Quad SPI NOR MT25QL256ABA1EW9-0SIT с микроконтроллером STM32. Моя проблема в том, что я нахожу распиновку чипа памяти довольно неудобной. Мне удалось поменять местами контакты на стороне MCU таким образом, чтобы сигналы располагались рядом друг с другом, но это все еще сложно. Следуя руководству по компоновке Micron Quad spi, мне удалось:

  • Не разделять базовую плоскость заземления (это двухслойная печатная плата),
  • Сделайте тактовый сигнал коротким и, возможно, с наименьшим изгибом,
  • Не используйте VIAS для маршрутизации сигналов

Однако мне не удалось:

  • Сохраняйте любой разумный импеданс, вычисляя полосковые линии (на самом деле не так много места и много сигналов)
  • Сохраняйте одинаковые длины сигналов.

Вот макет:Схема памяти Quad SPI

После увеличения изображения видны названия цепей на контактных площадках микросхем памяти. Я хотел бы спросить вас, считаете ли вы, что эта конструкция достаточна для тактовой передачи до 80 МГц. Для сравнения розовая форма, внутри которой находится чип, имеет размеры 18 x 8 мм. Полигональные заливки GND отложены для наглядности. Буду признателен за любую помощь.

Является ли нижний слой полной заливкой грунта? Можете ли вы также добавить скриншот верхней заливки?
Не лучше ли повернуть его, чтобы добиться более равной длины сигнала? Нет необходимости помещать контакты питания с колпачками между чипами — это пространство можно использовать для согласования длины.
Это переходное отверстие между двумя крышками немного странное... Вам это сошло с рук?
Я удалил его. Хотел сделать близкое заземление, но это было близко.

Ответы (2)

Для FR4, используя эффективный эпсилон 3,25, мы получаем длину волны сигнала 80 МГц на печатной плате, равную 80, вычислив

длина волны = (c/f) * (1/sqrt(эпсилон)) = (300000000 м/с / 80000000 1/с) * (1/sqrt(3,25) = 2,06 метра.

Используя 1/16 длины волны в качестве «безопасного предела», ниже которого нам не нужно беспокоиться об отражениях и относительной синхронизации сигнала,

безопасная_длина = (1/16) * длина волны = 2,06/16 = 12,8 сантиметра = 5 дюймов.

Ваши следы сигнала значительно ниже этого предела. Ваша маршрутизация достаточно хороша.

https://www.jlab.org/accel/eecad/pdf/050rfdesign.pdf

Но есть еще перекрестные помехи. Должен ли я намеренно делать больше пространства между дорожками?
Кстати, не стоит рассматривать только основную часть тактовой частоты. Более консервативным подходом было бы рассмотрение быстрых нарастающих/спадающих фронтов, которые могут составлять 1-3 нс... т.е. на гораздо более высоких частотах.
Я думаю, что не нужно переусердствовать. Как бы вы на это ни посмотрели, маршрутизация намного ниже любых ограничений по радиочастоте на частоте 80 МГц, и какие-либо проблемы, вероятно, не будут связаны с маршрутизацией, скорее, с расположением контактных площадок или чем-то в этом роде. Достаточно хорошо достаточно хорошо. Пора переходить к следующей проблеме. :)

С точки зрения топологии вы можете рассмотреть возможность поворота микросхемы флэш-памяти SPI на 90 градусов влево (против часовой стрелки), как показано ниже. Это приведет к выравниванию естественной длины маршрутизации и даст некоторую возможность согласования длины с MCU.

введите описание изображения здесь

Похоже, что NCS и CLK перенаправлены неправильно, но остальная часть ответа остается в силе.
@ IgnacioVazquez-Abrams - я только что перевернул этикетки с правой стороны. Исправлено сейчас.
Спасибо за ответ. Я попытался сделать это так, как вы описали, но у меня был более изогнутый тактовый сигнал. Является ли более важным, чтобы трассы имели одинаковую длину? Нижняя сторона предназначена не только для заземления, это сигнальный слой, но я намереваюсь, чтобы бот размещал дорожки под ним.
Более крупные современные флэш-памяти SPI имеют термопрокладку под чипом, я бы использовал ее и по возможности избегал прокладки через нее.
Да, я рассматриваю термопрокладку