На отладочной плате ML-402 собрал проект гигабитного эзернета. На борту этой платы есть Virtex-4 (на нем собрал кору MAC-а и её обвязку) и микросхема физического уровня фирмы Marvell 88E1111. Все в принципе работает, но время от времени передача данных с ML-402 в комп отваливается, причем под подозрением микросхема физического уровня, т.к. ПЛИС шлет в PHY нормальные пакеты (смотрел ChipScop-ом). Эффект проявляется следующим образом. Идет нормальная работа, пакеты отправляются с ML-402 и нормально принимаются компом. Это длится довольно долго, затем программа wireshark показывает, что входящих пакетов нет. Лампочки на ML-402 показывают, что все в порядке, передача идет, скорость в порядке, если есть входящие пакеты – моргает соответствующая лампочка “RX”. Но реально в комп ничего не идет, точнее может что-то и идёт, но например битое. И сетевуха это дело отбрасывает. Через несколько десятков секунд такой "работы" микросхема физического уровня сама сбрасывается (о чем говорит характерное гашение/зажигание контрольных светодиодов) и нормальная передача восстанавливается. Что особенно интересно. Если в момент аварии попытаться вручную сбросить PHY – это не помогает. Хотя по всем признакам сброс происходит (опять же характерное помаргивание светодиодами). Аварийная работа случается раз в 15-30 минут и только в режиме 1000BASE-T, в режиме 100BASE-T все работает без проблем.
Сначала под подозрением был перегрев микросхемы (в гигабитном режиме она прилично греется), но дополнительный обдув ситуации не исправил.
Кто-нибудь сталкивался с подобным эффектом?
Сейчас думаю – может сетевуха компа по каким-то причинам не выдерживает длительную эксплуатацию в гигабитном режиме… хотя это конечно маловероятно. Тем более что поток данных который в неё сыпется совсем не плотный всего около 5Мбит/с. Но с другой стороны ручной сброс PHY работу не восстанавливает - значит есть вероятность, что проблема не в PHY, а на другом конце...
Буду благодарен любым идеям.
|