|
Проблемы с MDIO. Не отвечает host controller 10Gemac on Virtex5 |
|
|
|
Sep 1 2010, 15:15
|
Группа: Новичок
Сообщений: 7
Регистрация: 3-02-10
Из: Днепропетровск
Пользователь №: 55 270

|
Нужно запустить шину MDIO для настройки PHY. Для этого использую IP-core Ten Gigabit Ethernet MAC v10.1. Создал FSM (код прилагается). После записи в host controller данных, при чтении из того же регистра - получили нулевое значение (записывали не ноль). Последовательность установки сигналов выполнена согласно ДШ ug148 на IP-core. Помогите разобраться, в чём проблема.
|
|
|
|
|
 |
Ответов
|
Sep 1 2010, 19:50
|
Группа: Новичок
Сообщений: 7
Регистрация: 3-02-10
Из: Днепропетровск
Пользователь №: 55 270

|
сингнал start изначально находится в единице (инициализируется значением) :
initial begin state = IDLE; start = 1'b1; // <------ ...... end
по входу в состоянии IDLE первый раз, в данном коде, просто осуществляется переход в следующее состояние WR_CFG_MGMT, по второму фронту в состоянии WR_CFG_MGMT устанавливаются нужные сигналы, по третьему фронту в состоянии WR_CFG_MGMT снимаются управляющие сигналы, переход в состояние RD_CFG_MGMT, по четвёртому , в состоянии RD_CFG_MGMT выставляются управляющие сигналы на чтение из регистра по пятому в состоянии RD_CFG_MGMT снимаются управляющие сигналы, переход в состояние TRY_DATA, по шестому - host контроллер должен был выставить данные на host_rd_data , установка wr_en для уарта, переход в состояние IDLE по седьмому - в другой ветке IDLE снимаем сигнал wr_en уарта, а также все остальные сигналы.
Заранее согласен, что можно было добавить больше состояний. Тем не менее переходы выполняются корректно, и к самой машине состояний вроде как претензий, кроме наглядности кода, нет.
|
|
|
|
|
Sep 1 2010, 20:02
|
Знающий
   
Группа: Свой
Сообщений: 529
Регистрация: 15-06-05
Из: Питер
Пользователь №: 6 032

|
Цитата(mamrchelli @ Sep 2 2010, 06:20)  сингнал start изначально находится в единице (инициализируется значением) :
initial begin state = IDLE; start = 1'b1; // <------ ...... end
по входу в состоянии IDLE первый раз, в данном коде, просто осуществляется переход в следующее состояние WR_CFG_MGMT, по второму фронту в состоянии WR_CFG_MGMT устанавливаются нужные сигналы, по третьему фронту в состоянии WR_CFG_MGMT снимаются управляющие сигналы, переход в состояние RD_CFG_MGMT, по четвёртому , в состоянии RD_CFG_MGMT выставляются управляющие сигналы на чтение из регистра по пятому в состоянии RD_CFG_MGMT снимаются управляющие сигналы, переход в состояние TRY_DATA, по шестому - host контроллер должен был выставить данные на host_rd_data , установка wr_en для уарта, переход в состояние IDLE по седьмому - в другой ветке IDLE снимаем сигнал wr_en уарта, а также все остальные сигналы.
Заранее согласен, что можно было добавить больше состояний. Тем не менее переходы выполняются корректно, и к самой машине состояний вроде как претензий, кроме наглядности кода, нет. это я понял.
--------------------
Россия это даже не страна. Россия это секрет, завернутый в загадку и укрытый не проницаемой тайной...
|
|
|
|
Сообщений в этой теме
mamrchelli Проблемы с MDIO. Не отвечает host controller 10Gemac on Virtex5 Sep 1 2010, 15:15 Shtirlits Что видно в симуляторе? Sep 1 2010, 16:12 mamrchelli Смотря что Вас интересует. По результатам операций... Sep 1 2010, 17:32 Shtirlits Я не могу разобраться в вашем автомате, и верилог ... Sep 1 2010, 17:43 mamrchelli Спасибо. Но те сигналы которые сформированы , впол... Sep 1 2010, 19:08 iosifk Цитата(mamrchelli @ Sep 1 2010, 19:15) Ну... Sep 2 2010, 05:42 mamrchelli Цитата(iosifk @ Sep 2 2010, 08:42) Я когд... Sep 2 2010, 12:27 mamrchelli Всё, проблема с host controller решена. Нашли в в ... Sep 3 2010, 13:42 Shtirlits Не могли бы вы по горячим следам написать, какие и... Sep 3 2010, 16:48
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|