Опубликован: 24.04.2009 | Доступ: свободный | Студентов: 1180 / 358 | Оценка: 4.39 / 4.28 | Длительность: 18:45:00
Специальности: Программист
Лекция 1:

Введение во встроенные системы

Лекция 1: 123 || Лекция 2 >

Введение в процесс проектирования встроенных систем

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

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

Большая часть усилий по аппаратной и программной реализации происходят в конце этапа проектирования и на стадии разработки. Критический анализ проектных решений помогает определить, возможно ли физически реализовать концепцию проекта с учетом спецификаций проекта. Электротехнический и программный макет часто создается перед анализом проектных решений. Затем проектируется небольшое число прототипов, конструируется, и используется для более детального аппаратного и программного тестирования.

Фазы жизненного цикла создания встроенного устройства: Конструирование, Разработка, и Производство

Рис. 1.10. Фазы жизненного цикла создания встроенного устройства: Конструирование, Разработка, и Производство

Наконец, в производственной фазе производится большое количество продукта. Сначала обычно создается небольшая пилотная партия для дополнительного тестирования и оценки перед началом массового производства. Инженеры по качеству непрерывно работают над улучшением качества продукта и процесса. Инженеры службы поддержки имеют дело с изменениями, которые следуют после представления нового продукта и предоставляют техническую поддержку продукта. С учетом текущих тенденций глобализации массовое производство нового встроенного устройства часто происходит в другой стране, где это более экономически выгодно. Для многих встроенных устройств весь процесс требует от шести месяцев до года, но конкурентный рынок постоянно заставляет сокращать жизненный цикл продукта.

Разработка проекта встроенной системы

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

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

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

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

После тщательного ввода принципиальной схемы конструкции, для встроенного устройства проектируется печатная плата (printed circuit board -- PCB) с помощью автоматизированной системы проектирования (CAD) печатных плат. Этот инструмент импортирует информацию о соединениях контактов из принципиальной схемы и использует ее для проектирования и проверки медных проводников, используемых для соединения интегральных микросхем (IC) на печатной плате. Создается несколько печатных плат, заполняется необходимыми компонентами, и затем используется для выполнения обширных тестов программного обеспечения на новой конструкции. Любые ошибки конструкции оборудования обнаруженные во время тестирования будут требовать изменения в принципиальной схеме, модификации конструкции печатной платы, и нового цикла производства печатных плат и тестирования, что увеличит соответственно время разработки.

Средства разработки программного обеспечения обычно поставляются вместе с ОС. Так как ОС написана на C/C++, то для генерации новой ОС требуются компилятор, редактор связей, отладчик и инструменты двоичного образа. Эти же инструменты используются обычно для разработки приложений.

Разработка программного обеспечения происходит параллельно разработке оборудования с целью сокращения общего времени разработки продукта. Это становится еще более важным, учитывая все сокращающийся жизненный цикл продуктов современных встроенных устройств. Для разработки и тестирования программного обеспечения можно использовать средства эмуляции и встроенные компьютерные платы с аналогичным оборудованием, выполняющим ту же самую ОС, прежде чем станет доступна новая аппаратная платформа. Так как большая часть кода написана на C/C++/C#, большую часть программного обеспечения может даже разрабатываться и тестироваться на другом процессоре или эмуляторе. Код затем перекомпилируется для нового процессора для последнего круга разработки и тестирования, когда станет доступно новое оборудование.

В Windows Embedded CE имеется эмулятор ARM вместе с инструментами разработки, для начальной разработки программного обеспечения и тестирования, прежде чем станет доступна новая аппаратная платформа, можно использовать устройство на базе ПК X86 (называемое CEPC), или встроенную компьютерную плату (называемую целевым устройством).

Технологии памяти используемые во встроенных устройствах

Большинство встроенных устройств в настоящее время используют два типа памяти, SDRAM или иногда, возможно, SRAM для основной памяти и память Flash или ROM для энергонезависимой памяти. SDRAM имеет значительно меньшую стоимость за бит памяти, чем SRAM, но требует более сложный аппаратный контроллер для периодических циклов обновления динамической памяти. Одним из важных решений, которое должно быть сделано в начале процесса проектирования, является вопрос о том, сколько памяти каждого типа необходимо устройству.

Операционная система и прикладные программы обычно хранятся во flash-памяти, так как большинство встроенных устройств не имеют устройства жесткого диска. Жесткие диски имеют более высокий уровень отказов, они требуют больше пространства, и питания, поэтому они не являются жизненной необходимостью для многих встроенных конструкций, особенно в небольших мобильных и использующих батарею устройствах.

 Большинство встроенных систем использует два типа памяти. SDRAM для основной памяти и Flash-память вместо жесткого диска для хранения ОС и прикладных программ

Рис. 1.11. Большинство встроенных систем использует два типа памяти. SDRAM для основной памяти и Flash-память вместо жесткого диска для хранения ОС и прикладных программ

Чтение Flash-памяти выполняется значительно медленнее, чем памяти SDRAM, поэтому код обычно копируется из Flash в SDRAM для более быстрого выполнения. При включении питания начальный загрузчик в памяти Flash загружает операционную систему. Flash-память поддерживает только ограниченное число операций записи, поэтому использование системы виртуальной памяти с подкачкой страниц по запросу (как в настольном ПК) с Flash-памятью (вместо жесткого диска) служащей в качестве устройства для обмена страницами виртуальной памяти обычно не применяется во встроенных устройствах. В таких случаях виртуальная память будет тем не менее полезна для предоставления каждому процессу уникального адресного пространства, снижения фрагментации памяти, и для обеспечения защиты памяти. Некоторые встроенные устройства используют также память RAM для хранения и поддержания ее в состоянии пониженного потребления энергии, когда устройство не работает, используя батарею. Если батарея полностью разрядится, или потребуется холодный старт, то эти данные будут потеряны.

Дополнительная информация:

  • Данные обзора взяты из ежегодного обзора за 2006 г. рынка встроенных устройств, выполненного EETimes и Embedded Systems Design Magazine (www.embedded.com). Опубликованные в течение года статьи обсуждают результаты ежегодного обзора и исследуют последствия и тенденции, обнаруженные в этих данных.
  • Исследование "Общая стоимость разработки" доступно по адресу www.embedded-forecast.com. Это исследование рассматривает несколько проектов разработки встроенных продуктов для сравнения расходов при использовании коммерческих ОС или ОС с открытым исходным кодом.
  • Отчет RTOS Evaluation Project, "RTOS State of the Art" авторов M. Timmerman и L. Perneel сравнивает три альтернативы RTOS и доступен по адресу http://www.microsoft.com/windows/embedded/eval/wince/default.mspx .
  • Найдите в Web более свежие обзоры и статьи. Доступны несколько других прогнозов рынка встроенных устройств с данными, но многие из этих организаций требуют плату за эти данные и могут требовать, чтобы они не были доступны публично.
  • Июльский выпуск 2006 г. журнала IEEE Computer содержит несколько статей о жизненных циклах продуктов, и о том, как глобализация изменяет отрасль электроники и программного обеспечения.
Лекция 1: 123 || Лекция 2 >