12.04.2018 ClonicusDebugBoard

Материал из SRNS
Перейти к: навигация, поиск
(Ethernet)
(Известные проблемы)
 
(не показаны 36 промежуточных версий 2 участников)
Строка 20: Строка 20:
 
* На будущее - ошибки можно избежать, если попробовать собрать проект в вивадо с использованием ног из всех банков и прописыванием желаемых стандартов. Если напряжение стандарта недопустимое - можно получить ошибку при сборке проекта.
 
* На будущее - ошибки можно избежать, если попробовать собрать проект в вивадо с использованием ног из всех банков и прописыванием желаемых стандартов. Если напряжение стандарта недопустимое - можно получить ошибку при сборке проекта.
 
* Необходимо вернуть номиналы делителя резисторов и выпаять конденсатор с FB с dc/dc 5v и убедиться, что со штатными номиналами все запускается.
 
* Необходимо вернуть номиналы делителя резисторов и выпаять конденсатор с FB с dc/dc 5v и убедиться, что со штатными номиналами все запускается.
 +
* [Clonicus] В схематике КЗ по питанию антенны. L5 выглядит лишней. '''Не впаиваем. Исправить в монтажной документации!!!!!!!!!!!!!'''
 +
* [Clonicus] '''Важно! Выдерживать требования на ресет''' - задержка не менее 2 мкс на PS_POR_B (UG585 pg.163). На клоникус не выполнено (не мешает загрузке)
 +
* [Clonicus] пожелания/замечания к дизайну PCB (от В. А. Филатова):
 +
** Сделать в дизайне платы технологические планки по периметру шириной 5-10 мм (как будто литник от детали). Иначе напаянные элементы не дают закрепить плату в тисках/направляющих.
 +
** Контактные площадки под микросхемами в корпусе QFN должны выходить за габариты микросхемы, чтобы припой мог вытекать из-под корпуса и напаиваться на вертикальные контакты на корпусе.
 +
** Попробовать (если места хватит) разнести детали поверхностного монтажа чуть подальше друг от друга, а то их может слепить вместе в печке.
 +
* [Clonicus]  На цифровую линию 3,3В пролазит фантомное питание через ПЛИС от интерфейсных ног номады. Необходимо поставить ключ на аналоговые 3,3В.
 +
* [Clonicus] Возможно стоит поставить RC цепочки на открывание ключей питания для настройки последовательности включения линий.
 +
* [Clonicus] Необходимо исправить пады на BGA8 чтобы площать площадок была одинакова. Желательно для QFN также.
 +
* [Clonicus] Перепутаны RX TX в FTDI. '''ИСПРАВИТЬ!''' Есть вопросы к работе FTDI возможно нужен доп ресет
 +
* [Clonicus] Нога PUDC_B определяет состояние мульти-ног до и во время конфигурации. '''Не оставлять в воздухе!'''
 +
* [Clonicus] Был косяк в питании MGTAVTT LDO - мин. вх. напряжения 2,2В. Было 1,8В, исправил на 2,5В.
 +
* [PCB] Замечание от резонита - отверстия для отделения платы от технологической заготовки должны быть не менее 0,5мм и между краями отверстий не менее 0,2мм
  
 
== Текущий вывод клоникуса ==
 
== Текущий вывод клоникуса ==
Строка 166: Строка 179:
  
 
* Не использовать RGMII 3.3V!!! Xilinx не поддерживает, только 1.8/2.5
 
* Не использовать RGMII 3.3V!!! Xilinx не поддерживает, только 1.8/2.5
 +
 +
В клоникусе сделано 1.8. В PLDA сделано 3.3
 +
 +
* Необходимо помнить про задержку в линиях RGMII, возможны режимы:
 +
  * "rgmii" (RX and TX delays are added by the MAC when required)
 +
  * "rgmii-id" (RGMII with internal RX and TX delays provided by the PHY, the
 +
    MAC should not add the RX or TX delays in this case)
 +
  * "rgmii-rxid" (RGMII with internal RX delay provided by the PHY, the MAC
 +
    should not add an RX delay in this case)
 +
  * "rgmii-txid" (RGMII with internal TX delay provided by the PHY, the MAC
 +
    should not add an TX delay in this case)
 +
 +
* Также подключаем в ядре поддержку физика и его дров.
 +
 +
<source lang="bash">
 +
$ petalinux-config -c kernel
 +
</source>
  
 
<source lang="bash">
 
<source lang="bash">
Строка 171: Строка 201:
 
     [*]Network device support ->
 
     [*]Network device support ->
 
           [*]Ethernet driver support ->
 
           [*]Ethernet driver support ->
               [*] Marvell devices
+
               [*] Micrel devices
 
           [*] PHY Device support and infastructure -->
 
           [*] PHY Device support and infastructure -->
               [*] Drivers for Marvell PHYs
+
               [*] Drivers for Micrel PHYs
 
</source>
 
</source>
 +
 +
В Oryx_custom работает сеть только на 10Мбит/с. Предположительно из-за неправильных задержек в RGMII.
 +
 +
[https://ethernetfmc.com/rgmii-interface-timing-considerations/ описание задержек]
 +
 +
Запускается с помощью утилиты ethtool(необходимо подключать в rootfs). Команда включения 10Мбит/с:
 +
<source lang="bash">
 +
ethtool -s eth0 speed 10 autoneg off
 +
ifdown eth0
 +
ifup eth0
 +
</source>
 +
 +
Под вопросом решение о выводе eth напрямую в type-c. Не известно что будет, если подключить его как есть в usb3.0
 +
 +
Включил в настройках ядра рандомизацию MAC-адреса
 +
 +
---------------------
 +
 +
Eth_phy
 +
 +
Предполагалось разделить 2 физика по адресам настройками bootstrap резисторов. 0 адрес на клоникус и 12 адрес на отладочную плату. Реально получается 15 адрес на обоих. Предположительно из-за подтяжки ног плисиной.
 +
 +
Исправляется отключением pull-up в вивадо на ногах RX_D0; RX_D2; RX_CTRL
 +
 +
При попытке определить phy  с помощью lwip необходимо включить отладочные сообщения или вручную добавить принтф в функцию detect_phy.
 +
 +
При отладке eth очень помогает утилита ethtool. Ставится в настройках rootfs
 +
 +
== Всякое ==
 +
 +
Включить в rootfs "libstdc++"
 +
 +
Возможно нужно еще glibc
 +
 +
При использовании LVDS интерфейсов необходимо проверять совместимость напряжений и терминаторов [https://www.xilinx.com/support/answers/43989.html ссылка]
 +
 +
Для создания красивых надписей на плате на шелкографии:
 +
 +
* Пишем красивым текстом надпись
 +
* Переводим маск-генератором слой текста на юзер слой в режиме extract as shape без заливки
 +
* Открываем юзер слой и если нельзя включить заливку, то переводим объекты на плейншейп и обратно в дро-обджект.
 +
* Включаем заливку
 +
* Чистим плейншейп! и радуемся
 +
 
[[Category:Clonicus]]
 
[[Category:Clonicus]]
 
{{wl-publish: 2018-04-12 16:56:17 +0300 | Lipa }}
 
{{wl-publish: 2018-04-12 16:56:17 +0300 | Lipa }}

Текущая версия на 16:29, 5 июля 2018

Содержание

[править] Известные проблемы

  • Не был расчитан и замонтирован резистор R80. Необходимо впаять 0 Ом. Исправлено на обеих платах
  • Не правильно впаяны разъемы jtag. Исправлено на одной платах. Исправить документацию
  • SD карточка заблокирована PLD разъемами
  • На bootstrap ноги etgPhy влияет zynq. Необходимо хотя бы изменить резисторы. По-хорошему как-то отсекать zynq от phy при bootstrap.
  • ВАЖНО: на RJ45 разъеме ногу P10 необходимо вешать на воздух. Некоторые физики с open-drain требуют подтяжку на AVCC. Некоторые (как наш) с push-pull требуют вешание на воздух. Сейчас по схеме подключено к земле. Это точно неверно. Исправил на обоих отладочных платах Проверено только на основном экземпляре. После этого поднялась сеть.
  • [Clonicus] Сместить немного sd карту вглубь платы, чтобы было более компактно
  • На ответных платах должно быть свободное место под вставку sd карты.
  • Разобраться, почему смещены мезанинные разъемы
  • [Clonicus] Пздец. Банк 35 -HP поддерживает только 1,8В. Подано 3,3В. ПЛИС должна перейти в protection mode. Это может быть очень серьезной проблемой. Пока не ясно как с этим быть.
  • На будущее - ошибки можно избежать, если попробовать собрать проект в вивадо с использованием ног из всех банков и прописыванием желаемых стандартов. Если напряжение стандарта недопустимое - можно получить ошибку при сборке проекта.
  • Необходимо вернуть номиналы делителя резисторов и выпаять конденсатор с FB с dc/dc 5v и убедиться, что со штатными номиналами все запускается.
  • [Clonicus] В схематике КЗ по питанию антенны. L5 выглядит лишней. Не впаиваем. Исправить в монтажной документации!!!!!!!!!!!!!
  • [Clonicus] Важно! Выдерживать требования на ресет - задержка не менее 2 мкс на PS_POR_B (UG585 pg.163). На клоникус не выполнено (не мешает загрузке)
  • [Clonicus] пожелания/замечания к дизайну PCB (от В. А. Филатова):
    • Сделать в дизайне платы технологические планки по периметру шириной 5-10 мм (как будто литник от детали). Иначе напаянные элементы не дают закрепить плату в тисках/направляющих.
    • Контактные площадки под микросхемами в корпусе QFN должны выходить за габариты микросхемы, чтобы припой мог вытекать из-под корпуса и напаиваться на вертикальные контакты на корпусе.
    • Попробовать (если места хватит) разнести детали поверхностного монтажа чуть подальше друг от друга, а то их может слепить вместе в печке.
  • [Clonicus] На цифровую линию 3,3В пролазит фантомное питание через ПЛИС от интерфейсных ног номады. Необходимо поставить ключ на аналоговые 3,3В.
  • [Clonicus] Возможно стоит поставить RC цепочки на открывание ключей питания для настройки последовательности включения линий.
  • [Clonicus] Необходимо исправить пады на BGA8 чтобы площать площадок была одинакова. Желательно для QFN также.
  • [Clonicus] Перепутаны RX TX в FTDI. ИСПРАВИТЬ! Есть вопросы к работе FTDI возможно нужен доп ресет
  • [Clonicus] Нога PUDC_B определяет состояние мульти-ног до и во время конфигурации. Не оставлять в воздухе!
  • [Clonicus] Был косяк в питании MGTAVTT LDO - мин. вх. напряжения 2,2В. Было 1,8В, исправил на 2,5В.
  • [PCB] Замечание от резонита - отверстия для отделения платы от технологической заготовки должны быть не менее 0,5мм и между краями отверстий не менее 0,2мм

[править] Текущий вывод клоникуса

[править] Ethernet

  • Не использовать RGMII 3.3V!!! Xilinx не поддерживает, только 1.8/2.5

В клоникусе сделано 1.8. В PLDA сделано 3.3

  • Необходимо помнить про задержку в линиях RGMII, возможны режимы:
 * "rgmii" (RX and TX delays are added by the MAC when required)
 * "rgmii-id" (RGMII with internal RX and TX delays provided by the PHY, the
    MAC should not add the RX or TX delays in this case)
 * "rgmii-rxid" (RGMII with internal RX delay provided by the PHY, the MAC
    should not add an RX delay in this case)
 * "rgmii-txid" (RGMII with internal TX delay provided by the PHY, the MAC
    should not add an TX delay in this case)
  • Также подключаем в ядре поддержку физика и его дров.
$ petalinux-config -c kernel
Device Drivers->
     [*]Network device support ->
          [*]Ethernet driver support ->
               [*] Micrel devices
          [*] PHY Device support and infastructure -->
               [*] Drivers for Micrel PHYs

В Oryx_custom работает сеть только на 10Мбит/с. Предположительно из-за неправильных задержек в RGMII.

описание задержек

Запускается с помощью утилиты ethtool(необходимо подключать в rootfs). Команда включения 10Мбит/с:

ethtool -s eth0 speed 10 autoneg off
ifdown eth0
ifup eth0

Под вопросом решение о выводе eth напрямую в type-c. Не известно что будет, если подключить его как есть в usb3.0

Включил в настройках ядра рандомизацию MAC-адреса


Eth_phy

Предполагалось разделить 2 физика по адресам настройками bootstrap резисторов. 0 адрес на клоникус и 12 адрес на отладочную плату. Реально получается 15 адрес на обоих. Предположительно из-за подтяжки ног плисиной.

Исправляется отключением pull-up в вивадо на ногах RX_D0; RX_D2; RX_CTRL

При попытке определить phy с помощью lwip необходимо включить отладочные сообщения или вручную добавить принтф в функцию detect_phy.

При отладке eth очень помогает утилита ethtool. Ставится в настройках rootfs

[править] Всякое

Включить в rootfs "libstdc++"

Возможно нужно еще glibc

При использовании LVDS интерфейсов необходимо проверять совместимость напряжений и терминаторов ссылка

Для создания красивых надписей на плате на шелкографии:

  • Пишем красивым текстом надпись
  • Переводим маск-генератором слой текста на юзер слой в режиме extract as shape без заливки
  • Открываем юзер слой и если нельзя включить заливку, то переводим объекты на плейншейп и обратно в дро-обджект.
  • Включаем заливку
  • Чистим плейншейп! и радуемся

[ Хронологический вид ]Комментарии

(нет элементов)

Войдите, чтобы комментировать.

Персональные инструменты
Пространства имён

Варианты
Действия
SRNS Wiki
Рабочие журналы
Приватный файлсервер
QNAP Сервер
Инструменты