Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: управление 88e1111 по mdio
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
bva_rzn
Доброе утро.

Среда Vivado 2017, плис virtex7. К ПЛИС подключен 88e1111. Пробую им управлять по MDIO.
Для начала пытаюсь считать содержимое регистра 2.
Сигналы MDIO формирую uB портом gpio.

Подключения в top модуле
....
inout MDIO_clk;
inout MDIO_data;

IOBUF MDIO_data_iobuf
(.I(wMDC_MDIO_o[1]),
.IO(MDIO_data),
.O(wMDC_MDIO_i[1]),
.T(wMDC_MDIO_t[1]));

IOBUF MDIO_clock_iobuf
(.I(wMDC_MDIO_o[0]),
.IO(MDIO_clk),
.O(wMDC_MDIO_i[0]),
.T(wMDC_MDIO_t[0]));

wMDC_MDIO - линии с microblaze, настроенные на ввод/вывод.

MDIO_data снаружи ПЛИС подтянут резистором к питанию.

Тактовая частота клока MDC 1 МГц.

Сигналы смотрю в ILA.



Адрес phy (7) и адрес регистра 2 это уходит на phy, в ответ считываю одни единицы.

В чём может быть проблема?

Спасибо.


GriXa
Добрый день. Проблема может быть в неправильной времянке, неправильно подключеных пинах и еще во многом другом. Я бы Вам посоветовал пощупать это дело осциллографом, чтобы убедиться, что все остальное функционирует соглсано ожиданиям.
krux
скорее всего не угадали адрес, на котором висит PHY
bva_rzn
Всё оказалось проще. Не учёл, что 88e1111 нужно сбрасывать нулевым уровнем.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.