PowerPC получает порт Android 4.4 с поддержкой Big Endian

Компания eInfochips перенесла Android 4.4 на архитектуру PowerPC от имени клиента авионики, который будет использовать его для HMI, который отслеживает состояние двигателя.

Компания eInfochips разработала первый порт Android для архитектуры процессора PowerPC с использованием современной сборки Android и поддержкой Big Endian.
Этот порт основан на коде Android Open Source Project (AOSP) для Android 4.4 (KitKat) и поддерживает ядро ​​3.12.19.

Android появился примерно в то же время, когда PowerPC находился в упадке и быстро терял долю на рынке ARM.
Клиенты с высокопроизводительными сетевыми системами и другими ориентированными на предприятия встроенными устройствами, работающими на процессорах PowerPC, таких как PowerQUICC и QorIQ Freescale, вместо этого зависели от Linux.
Однако было предпринято несколько попыток использовать порты Android.
В 2009 году Freescale и Embedded Alley - теперь часть команды Linux в Mentor Graphics - объявили о порте для чипов PowerQUICC и QorIQ, которые теперь создаются NXP.
Появился еще один проект, претендующий на тот же успех, под названием Android-PowerPC .

Однако от этих усилий не так много получилось, и когда авионическая фирма попросила eInfochips изучить приложение Android для добавления улучшенного HMI к своей системе мониторинга двигателя на основе PowerPC, компания обнаружила, что эти более ранние порты были не на высоте.
Им придется начинать с нуля.

Основная проблема с предыдущими портами заключалась в том, что они были для гораздо более старого и совсем другого Android.
Порт встроенного переулка был для Android 1.5 (Cupcake), выпущенного в 2009 году и основанного на ядре Linux 2.6.28, а последний порт в проекте Android-PowerPC, по-видимому, предназначен для Android 2.2 (Froyo), который был выпущен в 2010 году. на основе Linux 2.6.32.
Клиенту авионики также потребовались другие технологии, такие как поддержка Big Endian, устаревшая схема доступа к памяти, все еще используемая в мире сетей и телекоммуникаций.
Другие порты поддерживают только доступ к памяти Little Endian.

Новый порт PowerPC от eInfochips

eInfochips, который известен здесь в основном благодаря своим платам на основе ARM / Snapdragon, таким как компьютер-модуль Eragon 600 , теперь завершил порт Android 4.4 QorIQ и опубликовал официальный документ с описанием проекта.
Однако клиент авионики, использующий эту технологию, остается неназванным, и неясно, в какой степени порт будет открыт для общего доступа.


Изображение из сообщения в блоге eInfochips

(щелкните изображение, чтобы увеличить)

Новый проект PowerPC Android включает в себя:

  • Бионическая настройка для PowerPC e5500
  • Поддержка Big Endian в Android KitKat
  • Разработка цепочки инструментов с помощью GCC версии 5.2
  • Поддержка PowerPC в платформе Android 4.4
  • Ядро Android 3.12.19 для PowerPC e5500

По словам менеджера по маркетингу eInfochips Соорянараянана Баласубраманяна, клиент авионики хотел получить Android в первую очередь за знакомый интерфейс, который сокращает время обучения, а также упрощает обновление системы новыми приложениями.
«Благодаря успешному переносу на Android они могут допускать больше модификаций на уровне приложений, не проходя утомительный процесс сертификации на всех уровнях», - пояснил Баласубраманян.
«Впервые подобные попытки были предприняты в аэрокосмической отрасли, что требует должной осмотрительности при разработке».

Портирование Android на PowerPC потребовало серьезных модификаций каркаса, базовых библиотек, разработки инструментальных цепочек, компоновщика во время выполнения, компоновщика объектов и поддержки компилятора с открытым исходным кодом, согласно техническому документу.
При создании байт-кода команда портирования решила использовать переносной режим, а не режим быстрого интерпретатора.
На PowerPC для Android нет быстрого интерпретатора, в то время как в переносном режиме для интерпретации используется libffi с открытым исходным кодом , который поддерживает PowerPC.

Команде также нужно было выбрать между Android Run Time (ART) и Dalvik Virtual Machine (DVM).
Они обнаружили, что портативный режим для АРТ не тестировался и плохо документирован, поэтому они использовали DVM в портативном режиме.

Далее в документе описываются другие проблемы порта, в том числе разработка набора инструментов с нуля и переписывание сценариев для преодоления проблемы «нестандартного» использования AOSP флагов компилятора.
Готовый порт предлагает 37 сервисов и обеспечивает автономное развертывание Android вместе с эмулируемым пользовательским интерфейсом в пространстве пользователя.

Целевое оборудование

Благодаря изображению (показанному выше) в блоге eInfochips о порте Android PowerPC компании мы смогли определить целевое оборудование проекта.
Плата оказывается X-ES Xpedite 6101 , который представляет собой прочный мезонинный модуль XMC / PrPMC.


X-ES Xpedite 6101 фото и структурная схема

(нажмите на картинку, чтобы увеличить)

X-ES Xpedite 6101 поставляется с выбором коммуникационных процессоров серии T на базе NXP QorIQ - T2081, T1042 и T1022 - которые объединяют ядра 8, 4 и 2 e6500, соответственно, с тактовой частотой до 1,8 ГГц (T2081) или 1,4 ГГц (T1042 / 22).
Каждое ядро ​​имеет встроенный механизм AltiVec SIMD, обеспечивающий производительность с плавающей запятой на уровне DSP.
Все три модели плат X-ES поддерживают до 8 ГБ памяти DDR3-1600 ECC SDRAM, плюс до 512 МБ NOR и 32 ГБ флэш-памяти NAND.


Блок-схема NXP T2081

(щелкните изображение, чтобы увеличить)

Ввод / вывод платы включает в себя канал x4 PCI Express Gen2, а также два порта Gigabit Ethernet, последовательный порт RS232 / 422/485 и порты SATA 3.0.
В дополнение к выбору трех процессоров QorIQ, Xpedite 6101 предлагается с поддержкой трех уровней прочности X-ES , рассчитанных на работу при температуре от 0 до 55 ° C, от -40 до 70 ° C или от -40 до 85 ° C соответственно. наряду с тремя категориями ударопрочности и виброустойчивости.

Другие покрытые X-ES QorIQ платы XMC / PrPMC, которые мы рассмотрели, включают XPedite6401 и XPedite6370 , которые поддерживаются стандартными BSP для Linux, Wind River VxWorks и Green Hills Integrity.

Дальнейшая информация

Технический документ по портированию eInfochips для Android PowerPC доступен для загрузки здесь (требуется бесплатная регистрация).