STM32 и LAN8742 проектирование без помех

Когда стоит задача дизайна PHY для Ethernet, мы обращаемся к Reference manual производителя. В нем достаточно подробно рассказывается о том, что можно делать, а чего делать нельзя. Но идеальные условия могут не устраивать нас по ряду причин, в таком случае мы не знаем, что делать можно, чем позволено пренебречь и в каких пределах. Эта статья позволит оценить поведение LAN8742A в рамках бюджетных проектов, где используется двухсторонняя печатная плата, что безусловно уже является серьезным допущением.

Как сохранить работоспособность устройства, при этом не заваливая EMI тест устройства. Как оценить по косвенным признакам, работает физика нормально или нет. Далее в этой статье.

Речь идет о крошечном PHY интерфейсе LAN8742A в корпусе QFN24. Заметки о ее поведении и советы по диагностике:

  • Если вывод 2 (nINTSEL) не подтянут к земле резистором (от 2.2к до 10к) — то не будет генерации от внешнего кварца 25 МГц.
  • Выводы 1, 19 (VDDA) подключены через EMI фильтр, обозначенный в RM как Ferrite bead. VDDA можно питать и без Ferrite bead, однако лучше использовать его, так как возникнет уйма радиопомех и устройство не пройдет тест. В качестве альтернативы, допустимо использовать дроссель 1.8...18 нГн. VDDA следует очень сильно фильтровать емкостями. Лучше установить три емкости 0.1мкФ, 1мкФ, 10мкФ параллельно. Все это меры по подавлению мощных помех. Наличие или отсутствие этих компонентов не повлияли на работоспособность во время экспериментов.
  • Ножки TXN, TXP, RXN, RXP (20, 21, 22, 23) подтянуты к VDDA терминаторами 49.9 Ом. Допустимо использование резисторов 50 Ом или даже 51 Ом. Лично я сам использую 51 Ом ввиду их доступности в виде резисторной сборки. Однако, если на плате существует много нарушений правил проектирования, то с 51 Омными резисторами PHY работать не будет, а будет работать только с 49.9 Ом. Скажу больше, при грамотном проектировании платы, Ethernet будет работать даже без терминаторов, но на коротком кабеле (до 10 метров).
  • В RM указано, что TXN, TXP, RXN, RXP допустимо шунтировать емкостями в 10 пФ в качестве фильтров электромагнитных помех, но делать этого не стоит. Перерасходуете компоненты и место на плате, а разницы никакой нет совершенно, если дорожки короткие.
  • TXN, TXP, RXN, RXP – очень критичные цепи. Я повторюсь — очень критичные цепи! Траектория дорожек, толщина фольги, расстояние между дифференциальными парами — все это влияет на стабильность соединения и на количество излучаемых помех. TXN + TXP, RXN + RXP – дифференциальные пары с волновым сопротивлением 100 Ом. Существуют определенные инструменты для расчета волнового сопротивления дифференциальной пары, однако я просто скажу оптимальное дешевое решение: фольга 18мкм (½ Oz), толщина дорожки 0.4мм, зазор 0.22мм — дает порядка 115 Ом, что вполне допустимо. Следите за тем, чтобы длина трассы RXN была равна длине трассы RXP. То же самое касается TXN + TXP. Длины могут различаться до 5 мм. Я не утверждаю, что разница длин в 10, 20 мм даст неработоспособное устройство, я видел работы с вопиющими нарушениями всех правил и они работали, хреново, но работали. К примеру, полное несоблюдение волнового сопротивления, отличие длин трасс в 20 с лишним мм позволяли соединяться на 100 Мбитах! Но вот только кварцевый резонатор нужно было шунтировать емкостями 10 пФ вместо 30 пФ, а терминаторы в 51 Ом не годились, требовались именно 49.9 Ом +/- 1%. Другими словами — шаманские бубны.
  • Сигнал RXER/PHYAD0 обычно всегда подтягивается резистором 10кОм к земле. Допустима экономия места и компонента путем замыкания PHYAD0 на землю (к термопаду).
  • Кварцевый резонатор на 25 МГц. Очень капризный и ответственный узел. Как и везде требуется ставить его как можно ближе к ИМС. Подтягивать XTAL1, XTAL2 к земле конденсаторами 22 — 33 пФ. Прекрасный, предсказуемый результат даёт использование емкости 27 пФ в корпусе 0402 и кварца в корпусе 3225. Проверить тактирование можно с помощью осциллографа. На щупе нужно включить делитель x10. Относительно GND на выводе 4 (XTAL2) будет синус 25 МГц амплитудой около 800 мВ, на выводе 5 (XTAL1) будет синус 25 МГц амплитудой около 600 мВ. Если изменить емкости на кварце в меньшую сторону — амплитуда будет уменьшаться (например при 10 пФ, амплитуда будет 450 мВ, при этом работоспособность сохранится). Несущественное дрожание импульса допустимо. Иногда между XTAL1 и XTAL2 ставят резистор 1 МОм. Но наличие или отсутствие его не влияет на работоспособность PHY LAN8742A.
  • Сигнал ETH_REF_CLK обязательно нужно подсоединять к MCU. Но эта цепь очень «шумная», от нее фонит 50 МГц амплитудой до 4 Вольт. В RM рекомендуется подключать его через резистор 33 Ома. Но чтобы снизить фон, можно подключить его через резистор 510 Ом (не больше). Подтяжку к 3V3 на ETH_REF_CLK можно не делать в целях уменьшения площади «антенны». Дорожку ETH_REF_CLK необходимо сделать максимально короткой, максимально тонкой. Желательно, чтобы по краям этой дорожки и под ней была фольга GND.
  • Без емкостей на кварце PHY не запустится.
  • Если PHY не подключать к процессору, но подсоединить кабель LAN (патчкорд), линк будет мигать.
  • Если стерлась маркировка на LAN8742A и не видно где ключ, посмотрите на термопад, там ключ тоже есть в виде засечки.

Первое и основное правило проектирования: чем короче дороги — тем лучше. Чем толще дороги — тем лучше (Это не касается сигнала ETH_REF_CLK).

Второе правило — минимум переходных отверстий.

Третье правило — никаких углов больше 45 градусов на трассе. В идеале — закруглённые.

Правило четвертое: фильтрующие емкости должны быть в непосредственной близости к VDDA и VSS, соединены одной фольгой.