Ignoramus
Sep 13 2010, 08:41
Здравствуйте!
Пытаемся связать i.MX31 с SMSC LAN9217, образец схемы взяли из Freescale PDK 3 Stack Board, только вместо тамошней CPLD используем буферы ( TI TXB0108 ) для преобразования 1.8V в 3.3V; шина адреса, данных, nCS, nRD, nWR заведены на imx31. Проблема в том, что при чтении регистров LAN9217, читаются нули, причем не всегда, а как будто случайным образом. В основном бывает так, что при дампе всех регистров первая половина адресного пространства микросхемы читается нулями, а вторая считывается корректно, либо наоборот -- первая половина выдает правильные значения, а вторая нули. Кто-нибудь сталкивался с этим?
Ignoramus
Oct 1 2010, 05:43
Дело оказалось в некачественном соединении процессора i.MX31 и чипа LAN9217: в одной из линий адреса оказался разрыв, на контакте чипа после старта висела либо 1 либо 0, соответственно, чип некорректно воспринимал адреса.
После выявления и устранения данной проблемы, возникла следующая: при передаче фреймов в сеть из буфера TX_FIFO часть чипа, отвечающая за MAC время от времени зависает и не реагирует на требование остановить передачу, хотя при этом никакой передачи не ведет, выставляет флаг прерывания TX Error, но слова состояния передачи (TX Status Word) не возвращает. Кто-нибудь сталкивался с подобной проблемой?