|
Проблема с KS8001, Непонятки с MDIO |
|
|
|
Sep 23 2010, 11:41
|

Частый гость
 
Группа: Свой
Сообщений: 162
Регистрация: 29-12-09
Из: Санкт-Петербург
Пользователь №: 54 553

|
При чтении регистров по MDIO наблюдаю эффект отсутствия резистора pull up, хотя он установлен 4.7к. Осциллограмму прилагаю. Может кто встречался с таким багом?
print_00.rar ( 40.21 килобайт )
Кол-во скачиваний: 117Начало приамбулы не влезло. В регистре записано 0111100001001001.
--------------------
Париться надо в бане.
|
|
|
|
|
Sep 27 2010, 13:05
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(semonoff @ Sep 23 2010, 15:41)  При чтении регистров по MDIO наблюдаю эффект отсутствия резистора pull up, хотя он установлен 4.7к. Осциллограмму прилагаю. Может кто встречался с таким багом?
print_00.rar ( 40.21 килобайт )
Кол-во скачиваний: 117Начало приамбулы не влезло. В регистре записано 0111100001001001. а почему Вы считаете, что это "Баг"? Это же не шина с ОК... Оно так и должно быть... Сначала шина развернута на вывод. И только если потом идет чтение после 2-х тактов она разворачивается на ввод... Пока все нормально!
--------------------
www.iosifk.narod.ru
|
|
|
|
|
Sep 28 2010, 10:51
|

Частый гость
 
Группа: Свой
Сообщений: 162
Регистрация: 29-12-09
Из: Санкт-Петербург
Пользователь №: 54 553

|
Цитата(iosifk @ Sep 27 2010, 17:05)  а почему Вы считаете, что это "Баг"? Это же не шина с ОК... Оно так и должно быть... Сначала шина развернута на вывод. И только если потом идет чтение после 2-х тактов она разворачивается на ввод... Пока все нормально! Ничего не понял. Последние 16 тактов - это ответ PHY на запрос чтения регистра 1h. PHY выдает кривой сигнал?! Это видно на осциллограмме.
--------------------
Париться надо в бане.
|
|
|
|
|
Sep 28 2010, 11:16
|

Частый гость
 
Группа: Свой
Сообщений: 162
Регистрация: 29-12-09
Из: Санкт-Петербург
Пользователь №: 54 553

|
Цитата(vitan @ Sep 28 2010, 14:55)  А не замыкают ли MDC и MDIO между собой? Они обычно рядом. Или с кем-нибудь другим? Да я все вокруг просмотрел. Единственное вразумительное объяснение - это плохое рассасывание заряда базы на нижнем транзисторе при отсутствии сигнала управления.
--------------------
Париться надо в бане.
|
|
|
|
|
Sep 28 2010, 11:26
|

Частый гость
 
Группа: Свой
Сообщений: 162
Регистрация: 29-12-09
Из: Санкт-Петербург
Пользователь №: 54 553

|
Цитата(vitan @ Sep 28 2010, 15:21)  Ну и замените его! (PHY)  Дык менял. Эффект тот же. Правда замена была из той же партии. Вот и думаю - может контафакт?
--------------------
Париться надо в бане.
|
|
|
|
|
Sep 28 2010, 11:34
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(semonoff @ Sep 28 2010, 14:51)  Ничего не понял. Последние 16 тактов - это ответ PHY на запрос чтения регистра 1h. PHY выдает кривой сигнал?! Это видно на осциллограмме. так тут тоже все просто! Я же Вам написал. Вы даете запрос на чтение. Шина развернута на вывод. Выводится первая часть диаграммы. Потом, шина разворачивается на ввод, далее два такта ожидания. Потом данные должен выдавать трансивер. Но он этого не делает. И шина висит в 3-м состоянии. А не делает он это потому, что не опознал свой адрес... Или там неправильно задан адрес регистра. Или слишком быстро идет запись. Или данные и клоки не соответствуют заданному расположению друг относительно друга. Проверьте зашивку адреса на PHY. Уменьшите тактовую на 2 порядка. Повторите, перебирая все адреса PHY или выдавая широковещательный адрес... Ответ должен появиться. Потом можно будет опять поднять тактовую... Удачи!
--------------------
www.iosifk.narod.ru
|
|
|
|
|
Sep 28 2010, 11:52
|

Частый гость
 
Группа: Свой
Сообщений: 162
Регистрация: 29-12-09
Из: Санкт-Петербург
Пользователь №: 54 553

|
Цитата(iosifk @ Sep 28 2010, 15:34)  так тут тоже все просто! Я же Вам написал. Вы даете запрос на чтение. Шина развернута на вывод. Выводится первая часть диаграммы. Потом, шина разворачивается на ввод, далее два такта ожидания. Потом данные должен выдавать трансивер. Но он этого не делает. И шина висит в 3-м состоянии. А не делает он это потому, что не опознал свой адрес... Или там неправильно задан адрес регистра. Или слишком быстро идет запись. Или данные и клоки не соответствуют заданному расположению друг относительно друга.
Проверьте зашивку адреса на PHY. Уменьшите тактовую на 2 порядка. Повторите, перебирая все адреса PHY или выдавая широковещательный адрес...
Ответ должен появиться. Потом можно будет опять поднять тактовую... Удачи! Если посмотреть на осциллограмму, где передаются 2 бита TA(turnaround), видно, что при удержании MDIO мастером в z-состоянии, PHY второй z-бит переводит в состояние 0 это означает, что адрес PHY воспринят правильно. иначе MDIO переводится в z-состояние. Пробовал давать другой PHY адрес - так и происходит. Снижал скорость клоков до 2.5МГц - эффект тот же. Цитата(vitan @ Sep 28 2010, 15:32)  Может. Правда, я с микрелом не работал, но у меня были, и не раз. Оставлять так нельзя, ибо на температуре начнутся глюки. У кого покупали, если не секрет? Буду узнавать, где закупали. Попробую купить в другом месте.
--------------------
Париться надо в бане.
|
|
|
|
|
Sep 28 2010, 12:08
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(semonoff @ Sep 28 2010, 15:52)  Если посмотреть на осциллограмму, где передаются 2 бита TA(turnaround), видно, что при удержании MDIO мастером в z-состоянии, PHY второй z-бит переводит в состояние 0 это означает, что адрес PHY воспринят правильно. иначе MDIO переводится в z-состояние.
Буду узнавать, где закупали. Попробую купить в другом месте. Ничего второй бит z-состояния вообще не означает, поскольку PHY начинает выставлять свои данные ПОСЛЕ этого второго такта... И второй бит z-состояния показывает пустую шину. И более ничего... А если уж и покупать трансиверы, то более новые, например 8041...
--------------------
www.iosifk.narod.ru
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|