AT91sam7x + DM9161AEP соединены по MII. Трансформатор - J00-0061
Есть некоторая плата. Схема, в части езернета, полностью 1 к 1 содрана с евалюейшн кита AT91SAM7X-EK.
Разводку PCB мягко говоря сделали не совсем грамотно.
Первый запуск:
С виду PHY работает полностью корректно. Лампочки адекватно мигают и реагируют на переключение режимов работы 10/100Mbit и Half / full duplex. Нормально работает Auto-MDIX.
Форма сигналов тактирования на первый взгляд нормальные.
МАС, IP, NetMask, Gateway, DNS присваиваются вручную. DHCP отключен.
Пробую пропинговать. Результат - Request timed out.
Беру ев.кит AT91SAM7X-EK загружаю туда ту же прошивку. Подключаю к ней тот же езернет кабель. Результат - все работает нормально.
Беру отладчик и смотрю как выполняется программа. Ход выполнения программы на обеих платах одинаковый.
Создается впечатление что проблема на 99% аппаратная.
Заметил такой нюанс. Если все выключить. Немного подождать. Затем снова включить. То все запускается. Пинг и другие сервисы работают, но не долго.
Проходит 40-80 секунд и снова пинг пропадает и связи нет.
Такой эффект наблюдается только на скорости 10Mbit. На 100Мбит связи нет вообще.
----
Если смотреть осциллографом то от PHY к MAC какие то данные доходят. При этом сигнал RX_DV (RX Data Valid) = 1. RX_ER (RX DataError) всегда в 0.
Значит ли это что полученные МАСом данные являются правильными и 100% должны были им обработаться?
Ответа от МАСа нет. (Ну кроме тех 40-80 секунд при включении в режиме 10Мбит).
Подскажите в чем может быть проблема. Хоть бы как-то на тех 10 мбит этот езернет стабильно запустить.