Перейти к содержанию

Всех приветствую.
Пост упила задача поддержать максимальное к-во SFP модулей. Coper в идеале еще и на разных скоростях 10/100/1000.
AR8033 хардварно включен в режиме 1011 = "Copper/fiber auto-detection, RGMII".
Модули SFP использую Finisar FCLF8522P2BTL(coper), Avago ABCU-5740ARZ-CG1(coper), JDSU PLRXPL-VI-S24-22(optic). Оба coper модуля на гигабите запускаются без проблем, оптика тоже.
Когда модуля нет, регистр PHY(0x1F) возвращает 0x81BB, когда же модуль подключен значение меняется на 0x812B. Режим 2 это 1000BASE-X. Для оптики норм, но для копера я ожидал другое значение режима.
Попробовал воткнуть копер модуль в 100мбит свитч. Линк не горит и модуль не подхватывается, в регистре значение 0x81BB. После переконфигурации(конфиг взят с Finisar доки AN-2036_FAQ_1000BASE-T_SFPs.pdf) линк подымается, но режим опять тот же 0x812B(1000BASE-X) как для оптики. Ну и следовательно пинг не ходит.
Конфиг:
i2cset -y "QUP I2C adapter" 0x56 0x1b 0x8490 w
i2cset -y "QUP I2C adapter" 0x56 0x09 0x000F w
i2cset -y "QUP I2C adapter" 0x56 0x00 0x4081 w
i2cset -y "QUP I2C adapter" 0x56 0x04 0xE10D w
i2cset -y "QUP I2C adapter" 0x56 0x00 0x4091 w

Отсюда я сделал вывод что AR8033 всегда работает через шину SerDes в режиме 1000BASE-X.
Вопрос: как мне заставить AR8033 работать с SFP-coper по шине SGMII? чтобы я мог данные ганять на скоростях отличных от 1000. В даташите вроде как заявлена возможность работы с SFP по SGMII.

Функциональную схему прилагаю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(JeDay @ Nov 5 2017, 22:08) <{POST_SNAPBACK}>
...Отсюда я сделал вывод ...


Ну, там из даташита и без выводов понятно, что именно чип умеет, а что нет.
Потребный Вам режим для этого чипа не заявлен.
Думаю, что можно и не искать.

В своё время решали аналогичную задачу на аляске 88E1111.
Что из свежего, даже не подскажу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Спасибо за ответ.
А можно попродробней для безграмотных sm.gif Как из схемы видно что режим работы 8033 менять не может?
У меня недопонимание чем отличается SGMII от SerDes на протокольном утровне. И там и там вроде 8b/10b. Для SGMII вроде как клоки, передаваемые по дифф паре, не обязательны. Одно уяснил что у них физика разная: SGMII->LVDS, SerDes->PECL.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(JeDay @ Nov 7 2017, 22:13) <{POST_SNAPBACK}>
Спасибо за ответ.
А можно попродробней для безграмотных sm.gif Как из схемы видно что режим работы 8033 менять не может?
У меня недопонимание чем отличается SGMII от SerDes на протокольном утровне. И там и там вроде 8b/10b. Для SGMII вроде как клоки, передаваемые по дифф паре, не обязательны. Одно уяснил что у них физика разная: SGMII->LVDS, SerDes->PECL.


SGMII подразумевает специфическую упаковку 10/100 в SerDes, что есть далеко не у всех микросхем PHY.
В даташитах о возможных режимах обычно всегда упоминается. В противном случае нет смысла городить огород с многорежимностью.
В случае 8033 о многорежимности даже не заикаются. Имха, можно и не искать.

Ну и физика действительно разная, что подразумевает возможность подстраивать режим передатчиков, как минимум.
Т.е., возни ради двух режимов получается много, а в случае внешних микросхем PHY востребовано это редко.
Сваял когда-то Марвелл Аляску 1111, и до сих пор...

На протокольном утровне SGMII от SerDes отличается только "автонегом".
Но даже если "автонег" отключить, пустить на 1Г и пренебречь физикой, останется то, что MAC с микросхемой-мостом R/GMII-SGMII может искать внешний PHY, подключённый к SGMII. А с этим могут быть проблемы.
Т.е., должна быть ещё возможность задать на уровне логики MAC, что SerDes - это SGMII или наоборот.
А SerDes это и есть собственно PHY и будет опрашиваться и управляться через MDIO.

Крче, всегда ещё возможен бардак на уровне логики MAC.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(JeDay @ Nov 5 2017, 22:08) <{POST_SNAPBACK}>
...
Отсюда я сделал вывод что AR8033 всегда работает через шину SerDes в режиме 1000BASE-X.
...



Цитата(JeDay @ Nov 8 2017, 15:50) <{POST_SNAPBACK}>
Cпасибо за развернутый ответ! sm.gif


И Вам спасибо. За аккуратное рытьё весьма рыхлой темы.

- Посещали меня мысли о возможности фокуса с режимом 1000BASE-X для трёхскоростной медяхи с SGMII, но на практике не сталкивался.
Приходилось использовать односкоростные, изначально заточенные под чистый 1000BASE-X. С ними как бы всё понятно.
А вот относительно режима для трёхскоростной медяхи далеко не всё очевидно. Таки автонег у 1000BASE-X и SGMII слегка разный.

Получается, что это или 1000BASE-X с отключенным автонегом, или же автонег имеет второй режим для SGMII. Т.е. достигается совместимость с SGMII только на 1000. Или же PHY модулей понимает оба варианта автонега, что тоже прикольно (вроде, у Марвелла что-то типа такого встречалось).

Не посмотрите, автонег в AR8033 при работе с "медным" модулем включён или нет?
Если включён, можно ещё осциллографом точно определить тип, но это уже несколько сложнее.

- И ещё момент.
То, что физика у модулей м.б. разная, это да. Но всё далеко не так просто, как Вы описали: SGMII->LVDS, SerDes->PECL.
Лучше ориентироваться на конкретные эл. параметры PHY и модулей, так как может попадаться и CML и т.п.
Анархия в части дифф. сигналов SFP нехилая, MSA производителям не указ.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата
Не посмотрите, автонег в AR8033 при работе с "медным" модулем включён или нет?
Если включён, можно ещё осциллографом точно определить тип, но это уже несколько сложнее.

В регистре значение 0x1140([12] - Enable auto-negotiation process, остальные биты говорят 1000 Mbps Full-duplex).

PS: После Ваших разъяснений я пришел к выводу, что одно режимность нас вполне устроит laugh.gif

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(JeDay @ Nov 8 2017, 23:11) <{POST_SNAPBACK}>
В регистре значение 0x1140([12] - Enable auto-negotiation process, остальные биты говорят 1000 Mbps Full-duplex).

PS: После Ваших разъяснений я пришел к выводу, что одно режимность нас вполне устроит laugh.gif


Ага. Таки похоже, что чип реализует честный мост RGMII-SGMII, но только для 1000 Mbps.
И в любом случае, общая картинка вполне себе прорисовалась. Решение очень даже неплохое.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(JeDay @ Nov 5 2017, 22:08) <{POST_SNAPBACK}>
Отсюда я сделал вывод что AR8033 всегда работает через шину SerDes в режиме 1000BASE-X.
Вопрос: как мне заставить AR8033 работать с SFP-coper по шине SGMII? чтобы я мог данные ганять на скоростях отличных от 1000. В даташите вроде как заявлена возможность работы с SFP по SGMII.

Можно я вставлю свои 2 цента?
Много раз у меня возникала задача сделать так, чтобы выход SGMII MAC работал либо с другим MAC напрямую либо с SFI входом SFP, либо с 1000BASE-X входом удаленного PHY либо еще что-то в том же духе. Иначе говоря заставить MAC-PHY интерфейс вести себя как не MAC-PHY.
Единственная рабочая конфигурация где это у меня получилась выглядела так:

Intel i210 (MAC) --- SGMII --- Marvel 88E1340 (PHY/Media Converter) --- QSGMII - Marvel Prestera DX (MAC).

Сейчас занимаемся очередной половой жизнью, пытаясь заставить жить i210 подключенный к SGMII входу Ethernet свича. Пока безуспешно. Причем i210 поднимает линк, а свич в упор не понимает что от него хотят ваще.

Из всего это я вынес один вывод - лучше не пытаться подключить один MAC к другому через MAC-PHY интерфейс (MII) (не принципиально есть между ними SFP итп - это вторично). Это авантюра =). Как в анекдоте про белочку и зайчика: они оба мальчики.
Изменено пользователем Tosha1984

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(Tosha1984 @ Nov 9 2017, 17:41) <{POST_SNAPBACK}>
...Из всего это я вынес один вывод - лучше не пытаться подключить один MAC к другому через MAC-PHY интерфейс (MII) (не принципиально есть между ними SFP итп - это вторично). Это авантюра =). ...


Да ладно пугать, это нормальная практика.
Неоднократно и MII, и GMII. Естественно, при наличии возможности переключения одного из MAC в режим PHY.
О наличии такого режима всегда упоминается в доках. И как правило, находятся рекомендации по подключению.

А вот с SGMII такой номер обычно не удаётся. Чем и интересен этот случай.

Т.е., удаётся, но несколько другим путём.
Сердезы свитчей очень часто поддерживают как полноценный SGMII, так и 1000BASE-X. Вот последний и используется.
В пределах платы летает без проблем. Для бэкплейна нужно искать девайсы с поддержкой 1000BASE-KX или чем-то похожим. Тоже ОК.

А вот если надо залинковать что-то разнородное с MAC без режима PHY, тогда да, приходится ставить микросхемы PHY с поддержкой 100BASE-TX или 1000BASE-X в зависимости от потребной скорости и интерфейса. В пределах платы/бэкплейна отлично прокатывает конденсаторная развязка.

И совершенно отдельная тема - это 10G и более. Принцип тот же, что и на иксах, но есть подводные камни при реализации.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Да я не пугаю.
Просто в таких дизайнах надо на 100% быть уверенным в том что эта городушка будет работать хотя бы теоретически. То есть должен быть либо удачный рефренс либо в доках явно написано что так делать можно.
Чаще просто подход в духе "ну вроде и то и то SerDes и вроде как похоже". А потом случается "ой".
А давайте мы 10GBASE-KR подключим SFP трансиверу. И снова "ой".
Мне на такое везет почему-то.
Цитата(prig @ Nov 9 2017, 18:47) <{POST_SNAPBACK}>
Естественно, при наличии возможности переключения одного из MAC в режим PHY.

Да.
Еще конкретно Intel умеет такую работу поддерживать на уровне драйверов. К нему можно напрямую подключить другой MAC, который тоже так умеет (например тоже Intel).
Изменено пользователем Tosha1984

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(Tosha1984 @ Nov 9 2017, 17:41) <{POST_SNAPBACK}>
...пытаясь заставить жить i210 подключенный к SGMII входу Ethernet свича...


Надо смотреть на наличие подходящих режимов в используемых чипах.
SGMII-SGMII и комбинации SGMII-1000BASE-X мы интереса ради пробовали. На нескольких девайсах.
Были у нас горячие головы, пытавшиеся заложиться на SGMII, но я настоял на наличии 1000BASE-X в обязательном порядке.
Как выяснилось, SGMII срубается на логике MAC, как я уже упоминал ранее. Форсить одни режимы и отключать другие не помогало.
И я так подозреваю, что если вдруг получится, то это уже будет 1000BASE-X, о котором обязательно заявят в доках.


Цитата(Tosha1984 @ Nov 9 2017, 19:00) <{POST_SNAPBACK}>
Да я не пугаю.
Просто в таких дизайнах надо на 100% быть уверенным в том что эта городушка будет работать хотя бы теоретически. То есть должен быть либо удачный рефренс либо в доках явно написано что так делать можно.
Чаще просто подход в духе "ну вроде и то и то SerDes и вроде как похоже". А потом случается "ой".
А давайте мы 10GBASE-KR подключим SFP трансиверу. И снова "ой".
Мне на такое везет почему-то.

Да.
Еще конкретно Intel умеет такую работу поддерживать на уровне драйверов. К нему можно напрямую подключить другой MAC, который тоже так умеет (например тоже Intel).


Если теоретически - то строго по докам. Никаких фантазий быть не должно. Тут всё правильно.
Просто доки приходится рыть долго и упорно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Всем здравствуйте.
Никак не получается запустить AR8033 по медному кабелю выше 10Мбит/сек.
Имеются две платы собранные по референсной схеме для AR8033 "AR8031-33-REF-DESIGN-V1.1.pdf" с SFP подулем и FPGA MAX10.

Линк появляется только если постоянно записывать в 0x00(Control Register) 0x0000. Или чтобы биты 13 и 6 были в нулях.
Если прекратить записывать в регистр 0x00, то при считывании содержимое сбрасывается в 0x3100.
Если вообще ничего не записывать в регистры, то при подаче питания AR8033 считывает с джамперов MODE[3:0].



Если MODE = 0000, то AR8033 должна запуститься в режиме 100Мбит, но Windows говорит - "Сетевой кабель не подключен"

Трансформатор ставил SM51589 http://www.mouser.com/ds/2/54/SM51589PEL-372257.pdf
Пробывал ставить другой RJ45+транс от материнской платы, результат тот же - максимум 10Мбит
Пробывал прямой и кроссовый кабель - максимум 10Мбит
Сейчас вообще выпаян трансформатор.
Пробывал инициализировать все 27 регистров как было сделано тут http://teec.eefocus.com/marianna/blog/14-1...6913_e11aa.html толку 0.

Если всё же линк поднимается на 10, то переодически происходит обрыв линии.
Микросхемы должны быть живые, обе платы работают одинаково.

С SFP модулем не разбирался ещё, очень хотелось бы запустить AR8033 по меди на 100 и 1000.
У меня идеи закончились, прошу помощи знающих.

https://s14.postimg.org/501b0ak35/AR8033_PCB_TOP.jpg
https://s14.postimg.org/oj5w93djl/AR8033_PCB_BOT.jpg

[attachment=111874:AR8031_3...IGN_V1.1.pdf]
[attachment=111875:AR8033.pdf]

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(андрей11 @ Apr 1 2018, 21:04) <{POST_SNAPBACK}>
Если всё же линк поднимается на 10, то переодически происходит обрыв линии.
Микросхемы должны быть живые, обе платы работают одинаково.

у вас чип тактируется от внешней частоты - зачем на контакте 7 висит кондей?
тактовая частота д.б.:
T_XI_PER XI Clock Period 40.0 - 50ppm 40.0 40.0 + 50ppm ns
видимо вы с геныча 50МГц делите на 2 и подаете на вход phy, там можно не более 1.5в - согласовано?
проверяйте характеристики этого генератора
и что там с соединением между трансом и rg45, д.б. 1-2, 3-6, 4-5, 7-8
Изменено пользователем Jury093

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Сначала был кварц на 25мгц и два кондёра по 27пф. Он работал, но на 7-й ноге осциллографом я ничего не видел. Наверно у щупов большая ёмкость.
Решил выпаять кварц и кондёры и подать с PLL FPGA 25мгц через резистивный делитель, напряжение на 7-й ноге 1,1В конденсатора нет.
Какой PPM у генератора на 50мгц я незнаю. Поставил другой на 50мгц - тоже самое 10мбит\с.

Вместо трансформатора сейчас стоят перемычки.
Подключено вот так:
[attachment=111877:RJ45.JPG]

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти