Особенности создания одноплатного компьютера на базе RK3568

Прокомментировать Просмотры: 0

К моменту начала проекта за плечами у меня было 20 лет работы в этой области в разных компаниях. Я занимался разработкой аппаратуры на FPGA, работал со «Скифом» компании «Элвис» и IMX8 от NXP. Китайские процессоры Rockchip тогда были для меня в новинку и вызывали живой интерес.

Введение: почему RK3568?

На первой встрече заказчик предложил выбрать один из двух процессоров — RK3399 или RK3568. Я остановился на втором варианте. Проект предназначался для промышленного применения, а RK3568 сочетает современную архитектуру с более простой конфигурацией и широким набором интерфейсов.

Архитектура

Я предложил сделать плату как можно универсальнее и задействовать максимум доступной периферии. Важно ещё в начале разработки ясно представлять, каким должно быть итоговое устройство. Поэтому первым делом я подготовил структурную схему.

Этот этап особенно важен: обсуждая проект на уровне функциональных блоков, заказчик заранее получает представление о будущей плате, а команда согласовывает её основные возможности и состав.

Схемотехника

Разработка принципиальной схемы естественным образом продолжает работу над структурной. Здесь уже не нужно придумывать систему с нуля: достаточно последовательно детализировать каждый блок. Например, участок с процессором и памятью LPDDR4 у меня выглядит так.

Большую роль здесь играет библиотека компонентов. Я создал свою, опираясь на накопленный опыт. При её разработке учитывал требования ЕСКД: возможно, на это повлиял пройденный нормоконтроль, но на всякий случай условные графические обозначения оформил именно в таком стиле. Затем начинается последовательная сборка схемы: каждый компонент нужно подключить в соответствии с datasheet, Hardware Design Guide, REF Schematic и другими документами.

Работа с памятью — задача довольно типовая и при наличии опыта не отнимает много времени. А вот подключение максимального числа периферийных устройств потребовало особой внимательности: выводы процессора имеют несколько функций, и их распределение нужно тщательно продумать.

Отдельно отмечу мультиплексирование выводов — это решение Rockchip стало для меня неожиданностью. Так, в процессоре предусмотрено десять UART-контроллеров, для каждого из которых доступны несколько вариантов мультиплексирования: M0, M1 и M2. Этот нюанс важно учитывать и при настройке DTS.

Ну что, Илон Маск, как тебе такое?)

Руководитель проекта настаивал на поддержке LVDS. В RK3568 предусмотрен комбинированный PHY MIPI DSI TX0 / LVDS TX, который поддерживает одноканальный LVDS с разрешением 1280×800 при частоте 60 Гц. Когда удалось разместить память и многочисленную периферию, пришло время проектировать систему питания.

На плату подаётся напряжение +5 В. Организация питания Rockchip стала отдельной задачей. В европейских и отечественных микросхемах мы обычно встречаем «дерево питания»: от одного мощного источника через фильтры формируются нужные шины. В связке Rockchip с PMIC RK809-5 структура скорее напоминает «кустарник». Только для напряжения +0.9 В, питающего ядро, чипу может понадобиться до шести отдельных линий от PMIC. В итоге в проекте появилось 20 различных шин питания. Это усложнило схему и заняло заметную часть слоёв, отведённых под сигналы, поэтому пришлось перейти к десятислойной плате.

Мультиплексирование выводов и столь сложная система питания показали мне, насколько необычные решения применяет Rockchip. Эти подходы оказались интересными и неожиданными — оставалось разобраться в них и учесть при проектировании.

Трассировка печатной платы

Для такого процессора понадобилось четыре сигнальных слоя и пара слоёв земли. Ещё четыре слоя я отвёл под разводку питания — в результате плата получилась десятислойной. Использовались только сквозные отверстия, финишное покрытие — иммерсионное золото, толщина меди — 0,5 oz. Диэлектрики подбирал так, чтобы обеспечить требуемое волновое сопротивление линий LPDDR4, LVDS, USB и других интерфейсов. Материалы FR4 High speed выбирал с учётом ассортимента одного из крупнейших российских производителей печатных плат.

Особое внимание нужно уделить настройке правил: они определяют выравнивание длины проводников, расстояния между компонентами, параметры маски и другие ограничения. Иногда советуют просто взять готовый набор правил у производителя печатных плат — для многих проектов это вполне приемлемый вариант. Однако при росте сложности конструкции параметры стоит прорабатывать самостоятельно и осознанно, чтобы не переплачивать за изготовление. Кроме того, важно следить за балансом меди во внутренних слоях.

Мы договорились с заказчиком, что конструктор подготовит габариты платы и расположение основных разъёмов, а мне передадут файлы DWG/DXF. Но с файлами возникли сложности, поэтому размеры я определил по чертежам, а разъёмы разместил по заданным координатам. На оставшейся площади расположил процессор, память, интерфейсные микросхемы и обвязку рядом с соответствующими разъёмами.

Выводы процессора спроектированы удачно, а шаг контактов 0,65 мм позволяет разводить сигнальные цепи на плате. Тем не менее на этапе реализации пришлось тщательно проработать каждое соединение и выравнивание линий.

Не обошлось и без ошибок: несколько линий дифференциальных пар USB и ETH оказались перепутаны. Проблему удалось устранить паяльником. Кроме того, пришлось добавить пропущенную кнопку MaskROM. Небольшое число ошибок — скорее исключение, которого удаётся добиться благодаря опыту, а не общее правило.

Выводы

Мультиплексирование выводов и система питания на основе PMIC RK809-5 произвели на меня сильное впечатление. В итоге получилась удачная плата с широкими возможностями подключения периферии — результат заложенной в неё универсальности. Сам процессор работал стабильно. Под нагрузкой потребление составляло около 5 Вт, поэтому для охлаждения достаточно пассивного радиатора.

Китайские микросхемы действительно предлагают немало оригинальных решений. Но при грамотном подходе на их основе можно создавать надёжные рабочие устройства. RK3568 — один из таких процессоров.

 

Источник

Похожие статьи

Поиск по играм, новостям и статьям…

Введите не менее двух символов

Введите не менее двух символов