Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: MII vs. GMII: как правильно детектировать скорость?
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Fast Ethernet/Gigabit Ethernet/FibreChannel
demidrol
не очень понимаю, как работает магия с переключением интерфейса между PHY и MAC.

Допустим, пишу я себе MAC для GMII (для гигабитного соединения), то есть даю PHY на вход 125 МГц (как phy_gtx_clk), а phy_txd (7 downto 0) тактирую по тому же клоку. Вроде такое должно даже работать, если линк установился на гигабите. А что будет, если на другой стороне стоит обычный Fast Ethernet? Как на это дело должен отреагировать PHY? Если он переключается в MII, то как он об этом сообщает MAC'у?
SM
Могу сказать, как это выглядит в RGMII - там при RX_CTL=[0,0] - inter-frame - передаются нибблы формата DSSU - D=half/full duplex, SS - скорость, U - UP/DOWN
demidrol
Цитата(SM @ Dec 18 2014, 15:11) *
Могу сказать, как это выглядит в RGMII - там при RX_CTL=[0,0] - inter-frame - передаются нибблы формата DSSU - D=half/full duplex, SS - скорость, U - UP/DOWN


RX_CTL, как я понимаю, -- это выход PHY. Когда именно PHY решает, что пора передать служебную информацию?
SM
Цитата(demidrol @ Dec 18 2014, 18:21) *
RX_CTL, как я понимаю, -- это выход PHY. Когда именно PHY решает, что пора передать служебную информацию?

Всегда, между фреймами. А вот в GMII, похоже, ничего подобного нету - остается, видимо, читать регистры через SMI (постоянно поллить, что там в статусах).

UPD
Или, тупо, завести в ПЛИС сигналы со светодиодов. По ним сразу все ясно sm.gif
demidrol
Цитата(SM @ Dec 18 2014, 18:29) *
Всегда, между фреймами. А вот в GMII, похоже, ничего подобного нету - остается, видимо, читать регистры через SMI (постоянно поллить, что там в статусах).

UPD
Или, тупо, завести в ПЛИС сигналы со светодиодов. По ним сразу все ясно sm.gif


понял, спасибо. Скорее всего, задача решается уже на софтовом уровне опросом регистров.
SM
Цитата(demidrol @ Dec 19 2014, 00:11) *
Скорее всего, задача решается уже на софтовом уровне опросом регистров.

Можно и на хардовом, особенно, если корке MAC надо управление 1G / 10-100 с мультиплексированием клока. Хотя поставить PHY с RGMII выглядит интереснее, мультиплексор клоков ликвидируется.
prig
Цитата(demidrol @ Dec 18 2014, 13:12) *
... Если он переключается в MII, то как он об этом сообщает MAC'у?

802.3 Clause 22 - наше всё. А MDIO/MDC - вооплощение его. Если речь о 10/100/1000 ессно.
И да, MAC просто тупо опрашивает PHY и переключает режимы по результату опроса.
SFx
А вы HalfDuplex поддерживаете? тоже из опроса регистров эту информацию берете?
Столкнулся с странным "флудом" на петле при halfduplex, не знаю даже куда копать.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.