Плохая глазковая диаграмма, с чего начать поиск?

Я пытаюсь отладить 100-мегабитную сетевую плату и столкнулся с проблемой, которую не могу решить.

глазковая диаграмма пары tx схематический

Это глазковая диаграмма для передающей пары. Приемная пара очень похожа. Это LAN8700 PHY, и у меня эффективно отключен интерфейс MII, поэтому PHY передает кодовые последовательности IDLE. Согласно техническому описанию, он принудительно настроен на 100 Мбит / FDX. 100 Мбит/HDX идентичны.

Исправление: конструкция использует внутренний источник питания 1,8 В LAN8700 для питания сети VDD_CORE; Я, должно быть, перепутал питание логики 1,8 В с питанием VDD_CORE в моем предыдущем описании. Мне кажется, шум блока питания не такая уж большая вероятность, так как высокий, нулевой и низкий уровни на самом деле довольно приличные. То есть глаз не «сжимается». Тот факт, что все нарушения выглядят как очень хорошие переходы, просто "перекошенные" во времени, наводит меня на мысль, что проблема кроется в кристалле или питании для драйвера кристалла/PLL на физическом уровне.

Если я позволю запустить глазковую диаграмму (около 15 минут), нарушения в маске «заполнятся» таким образом, что белые нарушения, которые вы видите на картинке, станут белыми шевронами (>) в правой части синих масок. Это говорит мне о том, что ошибки синхронизации распределены более или менее случайным образом, а не какой-то дискретный шум, сбивающий синхронизацию с точной величиной.

Кристалл, который использует PHY, имеет спецификацию 30 ppm, которая находится в пределах спецификации 802.3 100 ppm и даже в пределах рекомендованной спецификации 50 ppm, указанной для PHY. Я использую нагрузочные конденсаторы, которые соответствуют тому, что ищет кристалл, и довольно близки к тому, что LAN8700 указывает в качестве своей номинальной емкости.

Прежде чем я отключил интерфейс MII, я видел ошибки кадрирования (как сообщила моя программа ifconfig в Linux). Ошибок нет, если форсирую ссылку на 10Mbit.

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

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

(редактирование: добавлена ​​схема, исправлен источник питания VDD_CORE)

На что ты заводишься? Откуда вы знаете, что у триггера нет джиттера или случайных промахов, а не сигнала?
Я использую прикладное программное обеспечение для проверки соответствия Ethernet на прицеле. Я протестировал приложение для проверки соответствия на плате разработки, которая проходит с честью.
Мне нужны схемы, чтобы сказать что-нибудь наверняка. На данный момент у меня есть подозрения: источники питания PLL, проблемы с XTAL, заделка и неправильное обращение с центральными ответвлениями трансформатора. В этой последовательности. С помощью схем я мог бы сузить некоторые из них.
Обновленный вопрос для включения схемы
Мне «забавно пахнет», что центральный отвод одного трансформатора подключен к тому же источнику питания с индуктивной изоляцией, который завершает сигнальные линии от другого трансформатора. Наоборот. Но я раньше не занимался подобной работой с Ethernet, так что не знаю, что это не совсем то, что вы должны делать.
Я видел центральные отводы, «изолированные», как у меня, связанные вместе и подведенные к тому же источнику питания, что и принимающая сторона ... кажется, существует множество способов подключения этих центральных отводов.
@AndrewKohlsmith Вы правы, есть множество способов отключить центральные краны. К сожалению, разные микросхемы Ethernet требуют разных схем терминации. То, что сработало здесь, не всегда будет работать с другими чипами. Если вы сомневаетесь, следуйте примечанию к приложению для рассматриваемого чипа.

Ответы (2)

Я вижу много вещей, которые потенциально могут вызвать проблемы с глазковой диаграммой, которые вы видите. Не «дымящийся пистолет», а некоторые вещи, которые потенциально могут все испортить.

У вас есть колпачки 0,01 мкФ (C211, C212, C214 и C217) на неиспользуемых контактах RJ-45 и центральных ответвлениях трансформатора. Я рекомендую закоротить эти колпачки. Использование заглавных букв здесь необычно и может вызвать проблемы позже, хотя они вряд ли вызовут проблемы с глазковой диаграммой, которые у вас есть. Насколько я могу судить, единственная причина иметь эти ограничения — это схема блокировки постоянного тока, когда кто-то использует нестандартную схему питания через Ethernet. Стандартный POE не нуждается в этой защите, а поскольку стандарт POE устарел, вы вряд ли столкнетесь с оборудованием, отличным от стандарта POE.

Снимите колпачки C19 и C25 емкостью 10 пФ с оконечных резисторов Ethernet. Они слишком малы и слишком далеки от чего-либо критического, чтобы быть полезными.

Замените C18 и C24, колпачки 0,01 мкФ на оконечных резисторах Ethernet, по крайней мере, на 0,1 мкФ. Можно даже попробовать 4,7 мкФ. «Шину питания», которую развязывают эти колпачки, должна быть достаточно стабильной, и через согласующие резисторы может протекать неожиданный ток. Если L4/L5 слишком сильно ограничивают поток тока, а колпачки не компенсируют слабину, у вас могут быть ошибки данных.

Удалите C16, C17, C22 и C23 — все 10-пФ колпачки на линиях передачи данных Ethernet. Единственной причиной этого является фильтрация электромагнитных помех, и они не нужны для отладки. Удалите их, чтобы убедиться, что они не вызывают других проблем. Вы всегда можете вернуть их позже, если вам нужно.

Замените конденсаторы C20 и C21, 0,022 мкФ на центральных ответвлениях трансформатора, по крайней мере, на 0,1 мкФ. 1,0 мкФ тоже можно попробовать. Эта линия может слишком сильно падать, учитывая резистор 10 Ом и L4/L5. Вы даже можете закоротить это на VCC для отладки. Единственная причина для резистора (и, в меньшей степени, колпачка) - это фильтрация электромагнитных помех. Когда вы повторно раскручиваете печатную плату, вы должны подключить резисторы 10 Ом напрямую к VDD33, а не через L4/L5. Резистор 10 Ом и L4/L5 являются резервными. Переходя непосредственно к VDD33, вы можете предотвратить попадание шума в ваши согласующие резисторы, а также упростить оптимизацию фильтрации в этой области.

Вам понадобится больше колпачков на контакте VDDIO или закоротите бусину. Этот вывод подает питание на множество выводов ввода-вывода и будет иметь большой ток. Если он потребляет мало тока из-за LC-фильтра (бусина + 0,4 мкФ), тогда у вас будет много одновременных шумов переключения на контактах ввода-вывода. На самом деле это вызовет больше шума, чем тот, который вы отфильтровываете с помощью этой бусины. Этот шум даже может попасть на выходы Ethernet.

Убедитесь, что у вас правильные выводы на вашем трансформаторе. Хотя маловероятно, возможно поменять местами центральный кран и другой штифт. Стоит потратить 5 минут на проверку. Если на то пошло, проверьте также распиновку LAN8700.

Если ничего из этого не улучшит ситуацию, то приобретите металлический генератор на 25 МГц и замените кварц. Я видел, как кварцевые схемы делают странные вещи, так что хотя бы для душевного спокойствия стоит взломать вашу прототипную плату, чтобы убедиться, что ваш clk стабилен.

Это все, что я вижу на данный момент. Надеюсь это поможет!

Большое спасибо за ваш ответ! Это действительно был слабый запас для центральных магнитных отводов. Я добавил 2,2 мкФ X5R прямо к центральному отводу, и (после того, как я использовал заземление постоянного тока, а не соседнее заземление переменного тока), он сразу же очистился! -- Катушки индуктивности рассмотрю повнимательнее, но ради любопытства, питание ТТ вы придумали на глаз или просто по опыту работы с ethernet?
@AndrewKohlsmith Я понял это в основном на собственном опыте. Я потерял счет печатным платам, которые я разработал с помощью Ethernet. Где-то в районе 20-30. Довольно сложно испортить конструкцию Ethernet, но кажется, что большую часть времени она портится из-за центральных отводов трансформаторов.
Честно говоря, я до сих пор удивлен, что это проявляется на глаз как горизонтальное (временное) отклонение, а не как вертикальное (амплитудное) нарушение. Вот почему я люблю этот сайт... постоянно учусь.
@AndrewKohlsmith Да, это не так интуитивно понятно, что ошибка напряжения = ошибка времени. Но подумайте об этом так: если у вас есть сигнал с медленной скоростью фронта на о-скопе, то небольшие изменения уровня запуска осциллографа будут перемещать сигнал влево или вправо. Это особенно верно, если вы увеличиваете масштаб сигнала через несколько тактов после фронта, по которому вы запускаете. Если фронты сигнала обычно быстрые, но иногда медленные или искаженные, то вы увидите глазковые диаграммы точно так же, как вы нашли.

Мои 2 цента: я согласен с вашей рекомендацией выбрать правильный кварцевый генератор на 25 МГц. Я использовал DP83865DVH от NSC в режиме 1 Гбит, и когда он перешел в неустойчивое состояние на длинном тестовом кабеле («особый» некачественный 5 кат и около 110 м), замена XTAL имела большое значение. Схема стала очень стабильной, а цена такого "улучшения" всего ~10 центов.