операционная система Linux
для встроенного микропроцессора СнК SmartFusion
Евгений КотЕльниКов
19 августа 2010 года корпорация Actel и компания RoweBots объявили о доступности для СнК SmartFusion версии операционной системы (оС) Unison.
введение
Системы на кристалле (СнК) SmartFusion состоят из ARM-совместимого процессора CortexM3, аналогового блока с усилителями — формирователями аналоговых сигналов, одного или нескольких АЦП, развитой системы ввода/вывода и матрицы ПЛИС. Unison — это ультракомпактная операционная система, совместимая с ОС Linux. Ее отличительной чертой является построение по модульному принципу, что в большинстве приложений позволяет сократить объем используемой памяти. Теперь разработчики встроенных систем имеют возможность использовать в своих проектах весь набор программного обеспечения, разработанного под операционную систему Linux.
Создание операционной системы Unison для СнК SmartFusion стало результатом сотрудничества корпорации Actel, ведущего производителя малопотребляющих ПЛИС, и компании RoweBots, известной своими разработками малых операционных систем реального времени (RTOS) для встроенных приложений. Штаб-квартира Actel находится в США, корпорация имеет официального представителя в России и Украине [1]. А штаб-квартира RoweBots расположена в Канаде [2].
СнК SmartFusion
Микросхемы семейства SmartFusion представляют собой системы на кристалле (рис. 1).
В состав каждой микросхемы SmartFusion входит:
• Аппаратный ARM-совместимый процессор CortexM3 с тактовой частотой до 100 МГц.
• Набор аппаратных контроллеров интерфейсов, состоящий из контроллеров Ethernet 10/100, SPI, I2C и UART.
• Развитая периферия процессора: контроллеры прямого доступа к памяти и контроллер внешней памяти, 32-битные таймеры и часы реального времени с возможностью
Рис. 1. Составляющие СнК SmartFusion
работы от независимого источника питания, сторожевой таймер и блоки ФАПЧ для формирования сетки тактовых частот. Встроенное ПЗУ до 512 кбайт и ОЗУ до 64 кбайт.
От одного до трех аналоговых блоков, в каждый из которых входит 12-разрядный АЦП и ЦАП и набор операционных и измерительных усилителей с программируемым коэффициентом усиления, предназначенный для подготовки аналогового сигнала на входе АЦП.
Набор быстродействующих компараторов напряжения с временем задержки распространения менее 50 нс.
Цифровой блок обработки аналоговых сигналов, позволяющий без использования процессора и ресурсов ПЛИС осуществлять фильтрацию и масштабирование данных, поступающих с АЦП.
Матрица ПЛИС, выполненная по Flash-технологии, а следовательно, не требующая повторной загрузки, что позволяет создавать системы, готовые к работе сразу после включения питания. Матрица может работать с тактовыми частотами до 350 МГц и имеет в своем составе блоки ОЗУ, которые могут быть сконфигурированы как регистры FIFO.
Для создания и отладки проектов на базе СнК SmartFusion доступна среда разработки Libero, версию которой, Libero Gold, можно бесплатно скачать с сайта Actel [3]. Доступны и стартовые наборы, включающие в себя плату с микросхемой SmartFusion и необходимыми цепями обвязки. Демонстрационный ролик, посвященный стартовому набору SmartFusion, можно найти на популярном сервере YouTube [4], там же есть много полезных видеороликов, посвященных различным аспектам программирования систем на базе СнК SmartFusion.
йперационная система Unison
Операционная система Unison доступна в двух вариантах: бесплатная версия Unison 4 и версия Unison 5 с базовой ценой около $1000. В поставку бесплатной версии Unison 4 входят базовая версия ядра ОС, некоммерческий вариант модуля TCP, файловая система, модуль последовательного ввода/вывода, базовый набор документации и 6 примеров программ. В платную версию дополнительно входят: расширенное ядро, коммерческие модули протоколов TCP и полная документация. В комплект поставки Unison 5 входят 33 примера. Для платной версии доступно множество дополнительных модулей, например, файловая система FAT, модули сетевых интерфейсов, модули беспроводного доступа, развитый стек TCP, графические модули и модули поддержки интерфейсных шин. Для покупателей ОС Unison доступна поддержка, и им оказывается помощь в адаптации ОС к требованиям конечной системы.
Классические версии Linux требуют наличия в процессоре модуля защиты памяти (memory management unit, MMU); встраиваемые версии Linux могут обходиться без MMU, однако требуют значительного объема памяти для своей работы. Unison сочетает в себе совместимость с операционными системами POSIX и Linux, высокую производительность для приложений, работающих в режиме реального времени, полноценные
КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 10 '2010
системы на кристалле і компоненты
модули ввода/вывода с низкими запросами к объему памяти системы и простыми интерфейсами для подключения драйверов устройств. Все это дает возможность использовать развитую аналоговую периферию систем на кристалле SmartFusion и ресурсы ПЛИС под управлением операционной системы реального времени. Unison поставляется с примерами и демонстрационными программами, каждую из которых можно без труда скомпилировать, прошить в микросхему SmartFusion и запустить, используя SoftConsole.
К достоинствам Unison можно отнести и поддержку сетевых соединений, что сэкономит значительное количество времени и усилий при интеграции приборов в сеть, а аппаратная поддержка Ethernet в СнК SmartFusion сэкономит еще и место на печатной плате. Структура проекта по разработке программного обеспечения для семейства SmartFusion показана на рис. 2. Система поставляется с подробным руководством по установке, к которому прилагаются видеоролики с пошаговыми инструкциями. Совместимость интерфейсов всех версий ОС Unison и DSPnano позволяет легко, без из-
Рис. 2. Структурная схема разработки приложений под ОС Unison
менений в исходном коде, менять базовый процессор приложения, увеличивая или уменьшая его вычислительную мощность в соответствии с требованиями проекта.
Все версии операционной системы Unison успешно прошли тщательное тестирование, как на стандартном наборе тестов POSIX так и на специализированных тестах, что подтверждает их надежность и позволяет использовать в качестве устойчивой сверхкомпакт-ной операционной системы. Возможности
Unison поражают: она может выполнять приложения в конфигурации, где доступно 1 кбайт ОЗУ и всего 6 кбайт ПЗУ.
Заключение
Появление операционной системы реального времени Unison значительно упрощает разработку сложных проектов для СнК SmartFusion, а то, что эта операционная система совместима с ОС Linux, открывает широчайшие возможности по использованию готовых программных решений в новых проектах. Разработка такой операционной системы является еще одним подтверждением решимости корпорации Actel и дальше расширять «экосистему» готовых решений, доступных для применения в СнК SmartFusion. ■
Литература
1. www.actel.ru
2. www.rowebots.com
3. http://www.actel.com/download/software/libero/ default.aspx
4. http://www.youtube.com/watch? v=7FMmaKNaO_4
КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 10 '2010
www.kit-e.ru