stringtranslate.com

Встроенная система

Встроенная система на сменной карте с процессором, памятью, блоком питания и внешними интерфейсами.

Встроенная система — это компьютерная система — комбинация компьютерного процессора , компьютерной памяти и периферийных устройств ввода-вывода , — которая выполняет специальную функцию в более крупной механической или электронной системе. [1] [2] Он является частью целостного устройства, часто включающего электрическое или электронное оборудование и механические части. Поскольку встроенная система обычно контролирует физические операции машины, в которую она встроена, она часто имеет ограничения по вычислениям в реальном времени . Встроенные системы управляют многими устройствами общего пользования. [3] По оценкам, в 2009 году девяносто восемь процентов всех производимых микропроцессоров использовались во встроенных системах. [4] [ нужно обновить ]

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

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

Размер встраиваемых систем варьируется от портативных персональных устройств, таких как цифровые часы и MP3-плееры, до более крупных машин, таких как бытовая техника , промышленные сборочные линии , роботы , транспортные средства, контроллеры светофоров и системы медицинской визуализации . Часто они составляют подсистемы других машин, таких как авионика в самолетах и ​​астрионика в космических кораблях . Крупные объекты, такие как заводы , трубопроводы и электрические сети, полагаются на несколько встроенных систем, объединенных в сеть. Встраиваемые системы, такие как программируемые логические контроллеры, обобщенные посредством настройки программного обеспечения , часто включают в себя их функциональные блоки.

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

История

Фон

Истоки микропроцессора и микроконтроллера можно проследить до интегральной схемы МОП , которая представляет собой интегральную микросхему , изготовленную из МОП-транзисторов ( полевых транзисторов металл-оксид-полупроводник ) и разработанную в начале 1960-х годов. К 1964 году МОП-чипы достигли более высокой плотности транзисторов и более низких производственных затрат, чем биполярные чипы. Сложность МОП-чипов продолжала увеличиваться со скоростью, предсказанной законом Мура , что привело к широкомасштабной интеграции (LSI) с сотнями транзисторов на одном МОП-чипе к концу 1960-х годов. Применение микросхем MOS LSI для вычислений стало основой для первых микропроцессоров, поскольку инженеры начали осознавать, что полная компьютерная процессорная система может содержаться на нескольких чипах MOS LSI. [5]

Первые многокристальные микропроцессоры Four-Phase Systems AL1 в 1969 году и Garrett AiResearch MP944 в 1970 году были разработаны с использованием нескольких микросхем MOS LSI. Первым однокристальным микропроцессором был Intel 4004 , выпущенный в 1971 году. Он был разработан Федерико Фаггином с использованием его технологии MOS с кремниевым затвором совместно с инженерами Intel Марсианом Хоффом и Стэном Мазором , а также инженером Busicom Масатоши Шимой . [6]

Разработка

Одной из первых узнаваемо современных встроенных систем был компьютер управления Apollo , разработанный ок . 1965 год, Чарльз Старк Дрейпер в Приборной лаборатории Массачусетского технологического института . В начале проекта компьютер управления «Аполлона» считался самым рискованным элементом в проекте «Аполлон», поскольку в нем использовались недавно разработанные монолитные интегральные схемы для уменьшения размера и веса компьютера.

Первой встроенной системой массового производства был компьютер наведения Autonetics D-17 для ракеты Minuteman , выпущенный в 1961 году. Когда Minuteman II пошел в производство в 1966 году, D-17 был заменен новым компьютером, который представлял собой первый высокопроизводительный компьютер. массовое использование интегральных схем.

Со времени этих первых приложений в 1960-х годах стоимость встроенных систем снизилась, а вычислительная мощность и функциональность резко возросли. Первый микропроцессор Intel 4004 (выпущенный в 1971 году) был разработан для калькуляторов и других небольших систем, но все же требовал внешней памяти и вспомогательных микросхем. К началу 1980-х годов компоненты памяти, системы ввода и вывода были интегрированы в тот же чип, что и процессор, образующий микроконтроллер. Микроконтроллеры находят приложения, в которых компьютер общего назначения был бы слишком дорогим. По мере падения стоимости микропроцессоров и микроконтроллеров распространенность встроенных систем возросла.

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

Приложения

Встроенный компьютер в сборе для электронной машины для голосования Accupoll [7]

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

В телекоммуникационных системах используются многочисленные встроенные системы, от сетевых телефонных коммутаторов до сотовых телефонов у конечного пользователя . Компьютерные сети используют выделенные маршрутизаторы и сетевые мосты для маршрутизации данных.

Бытовая электроника включает MP3-плееры , телевизоры , мобильные телефоны , игровые приставки , цифровые камеры , GPS- приемники и принтеры . Бытовая техника, такая как микроволновые печи , стиральные и посудомоечные машины , включает в себя встроенные системы, обеспечивающие гибкость, эффективность и функциональность. В современных системах отопления, вентиляции и кондиционирования воздуха (HVAC) используются сетевые термостаты для более точного и эффективного контроля температуры, которая может меняться в зависимости от времени суток и сезона . Домашняя автоматизация использует проводные и беспроводные сети, которые можно использовать для управления освещением, климатом, безопасностью, аудио/видео, наблюдением и т. д., причем все они используют встроенные устройства для измерения и управления.

Транспортные системы, от самолетов до автомобилей, все чаще используют встроенные системы. Новые самолеты оснащены современной авионикой , такой как инерциальные системы наведения и приемники GPS , к которым также предъявляются серьезные требования по безопасности. Космические корабли полагаются на системы астрионики для коррекции траектории. В различных электродвигателях — бесщеточных двигателях постоянного тока , асинхронных двигателях и двигателях постоянного тока — используются электронные контроллеры двигателей . Автомобили , электромобили и гибридные транспортные средства все чаще используют встроенные системы для максимизации эффективности и снижения загрязнения. Другие автомобильные системы безопасности, использующие встроенные системы, включают антиблокировочную систему тормозов (ABS), электронную систему контроля устойчивости (ESC/ESP), антипробуксовочную систему (TCS) и автоматический полный привод .

В медицинском оборудовании используются встроенные системы мониторинга и различные методы медицинской визуализации ( позитронно-эмиссионная томография (ПЭТ), однофотонная эмиссионная компьютерная томография (ОФЭКТ), компьютерная томография (КТ) и магнитно-резонансная томография (МРТ) для неинвазивных внутренних исследований. Встроенные системы медицинского оборудования часто питаются от промышленных компьютеров. [8]

Встраиваемые системы используются для критически важных систем безопасности в аэрокосмической и оборонной промышленности. Если они не подключены к проводным или беспроводным сетям через встроенную сотовую связь 3G или другие методы для целей мониторинга и управления Интернетом вещей, эти системы могут быть изолированы от взлома и, следовательно, более безопасны. [ нужна ссылка ] В целях пожарной безопасности системы могут быть спроектированы так, чтобы иметь большую способность выдерживать более высокие температуры и продолжать работать. Что касается безопасности, встроенные системы могут быть самодостаточными и способны справляться с отключением электрических и коммуникационных систем.

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

Характеристики

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

Встроенные системы не всегда являются автономными устройствами. Многие встроенные системы представляют собой небольшую часть более крупного устройства, служащего более общей цели. Например, робот-гитара Gibson имеет встроенную систему настройки струн, но основная цель робот-гитары — воспроизведение музыки. [9] Точно так же встроенная система в автомобиле выполняет определенную функцию как подсистема самого автомобиля.

e-con Systems eSOM270 и eSOM300 Компьютер на модулях

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

Пользовательские интерфейсы

Встроенный системный текстовый пользовательский интерфейс с использованием MicroVGA [nb 1]

Встроенные системы варьируются от полного отсутствия пользовательского интерфейса в системах, предназначенных для одной задачи, до сложных графических пользовательских интерфейсов , напоминающих современные операционные системы для настольных компьютеров. В простых встраиваемых устройствах используются кнопки , светодиоды (LED), графические или символьные жидкокристаллические дисплеи (ЖКД) с простой системой меню . Более сложные устройства, в которых используется графический экран с сенсорным управлением или программные клавиши по краям экрана , обеспечивают гибкость при минимизации используемого пространства: значение кнопок может меняться в зависимости от экрана, а выбор предполагает естественное поведение указания на желаемое.

Некоторые системы предоставляют пользовательский интерфейс удаленно с помощью последовательного (например, RS-232 ) или сетевого (например, Ethernet ) соединения. Такой подход расширяет возможности встроенной системы, позволяет избежать затрат на дисплей, упрощает пакет поддержки платы (BSP) и позволяет разработчикам создавать на ПК богатый пользовательский интерфейс. Хорошим примером этого является комбинация встроенного HTTP-сервера , работающего на встроенном устройстве (например, IP-камере или сетевом маршрутизаторе ). Пользовательский интерфейс отображается в веб-браузере на ПК, подключенном к устройству.

Процессоры во встроенных системах

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

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

Готовые компьютерные платы

PC/104 и PC/104+ являются примерами стандартов готовых компьютерных плат, предназначенных для небольших встроенных и защищенных систем небольшого объема. В основном они основаны на процессорах x86 и часто физически малы по сравнению со стандартным ПК, хотя все же довольно велики по сравнению с большинством простых (8/16-битных) встраиваемых систем. Они могут использовать DOS , FreeBSD , Linux , NetBSD или встроенную операционную систему реального времени (RTOS), такую ​​как MicroC/OS-II , QNX или VxWorks .

В некоторых приложениях, где малый размер или энергоэффективность не имеют первостепенного значения, используемые компоненты могут быть совместимы с компонентами, используемыми в персональных компьютерах x86 общего назначения. Такие платы, как серия VIA EPIA , помогают преодолеть этот разрыв, поскольку они совместимы с ПК, но обладают высокой степенью интеграции, физически меньшими размерами или обладают другими характеристиками, делающими их привлекательными для инженеров встраиваемых систем. Преимущество этого подхода заключается в том, что можно использовать недорогие стандартные компоненты вместе с теми же инструментами разработки программного обеспечения, которые используются для общей разработки программного обеспечения. Системы, построенные таким образом, до сих пор считаются встроенными, поскольку они интегрированы в более крупные устройства и выполняют единственную роль. Примерами устройств, которые могут использовать этот подход, являются банкоматы (АТМ) и игровые автоматы , которые содержат код, специфичный для приложения.

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

В одном из распространенных стилей дизайна используется небольшой системный модуль, возможно, размером с визитную карточку, содержащий чипы BGA высокой плотности, такие как процессор «система-на-кристалле» на базе ARM и периферийные устройства, внешняя флэш-память для хранения и DRAM для времени выполнения. Память. Поставщик модуля обычно предоставляет загрузочное программное обеспечение и обеспечивает выбор операционных систем, обычно включая Linux и некоторые варианты реального времени. Эти модули могут производиться в больших объемах организациями, знакомыми со своими специализированными вопросами тестирования, и комбинироваться с гораздо меньшими объемами специализированных материнских плат с внешними периферийными устройствами для конкретных приложений. Яркими примерами такого подхода являются Arduino и Raspberry Pi .

Решения SoC ASIC и FPGA

Система на кристалле (SoC) представляет собой законченную систему, состоящую из нескольких процессоров, умножителей, кэшей, даже различных типов памяти и обычно различных периферийных устройств, таких как интерфейсы для проводной или беспроводной связи на одном кристалле. Часто в состав таких микросхем входят графические процессоры (GPU) и DSP. SoC могут быть реализованы в виде специализированной интегральной схемы (ASIC) или с использованием программируемой вентильной матрицы (FPGA), которую обычно можно переконфигурировать.

Реализации ASIC распространены для встраиваемых систем очень большого объема, таких как мобильные телефоны и смартфоны . Реализации ASIC или FPGA могут использоваться для не очень объемных встроенных систем с особыми потребностями в производительности обработки сигналов, интерфейсах и надежности, например, в авионике.

Периферийные устройства

Крупный план чипа SMSC LAN91C110 (SMSC 91x), встроенного чипа Ethernet .

Встроенные системы общаются с внешним миром через периферийные устройства , такие как:

Инструменты

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

Программные инструменты могут поступать из нескольких источников:

По мере роста сложности встроенных систем инструменты и операционные системы более высокого уровня мигрируют в машины там, где это имеет смысл. Например, мобильные телефоны , персональные цифровые помощники и другие бытовые компьютеры часто нуждаются в значительном программном обеспечении, которое приобретается или предоставляется лицом, отличным от производителя электроники. В этих системах требуется открытая среда программирования, такая как Linux , NetBSD , FreeBSD , OSGi или Embedded Java , чтобы сторонний поставщик программного обеспечения мог продавать свое программное обеспечение на большом рынке.

Отладка

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

От самых простых до самых сложных методов и систем отладки можно грубо сгруппировать по следующим областям:

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

Отслеживание

Операционные системы реального времени часто поддерживают отслеживание событий операционной системы. Графическое представление представляется с помощью главного ПК на основе записи поведения системы. Запись трассировки может выполняться программно, с помощью ОСРВ или специального оборудования трассировки. Трассировка RTOS позволяет разработчикам понять проблемы синхронизации и производительности программной системы, а также дает хорошее представление о поведении системы высокого уровня. Запись трассировки во встроенных системах может быть достигнута с использованием аппаратных или программных решений. Программная запись трассировки не требует специального оборудования для отладки и может использоваться для записи трассировок на развернутых устройствах, но может влиять на использование ЦП и ОЗУ. [13] Одним из примеров программного метода трассировки, используемого в средах ОСРВ, является использование пустых макросов , которые вызываются операционной системой в стратегических местах кода и могут быть реализованы в качестве перехватчиков .

Надежность

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

Конкретные проблемы с надежностью могут включать в себя:

Для устранения ошибок используются различные методы, иногда в комбинации, — как программные ошибки, такие как утечки памяти , так и программные ошибки в оборудовании:

Высокая и низкая громкость

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

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

Архитектуры встроенного программного обеспечения

В 1978 году Национальная ассоциация производителей электрооборудования выпустила ICS 3-1978, стандарт для программируемых микроконтроллеров, [18] включающий практически любые компьютерные контроллеры, такие как одноплатные компьютеры , числовые контроллеры и контроллеры, основанные на событиях.

Обычно используется несколько различных типов архитектуры программного обеспечения.

Простой контур управления

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

Система, управляемая прерываниями

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

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

Кооперативная многозадачность

Кооперативная многозадачность очень похожа на схему простого цикла управления, за исключением того, что цикл скрыт в API . [3] [1] Программист определяет серию задач, и каждая задача получает свою собственную среду для выполнения. Когда задача простаивает, она вызывает подпрограмму ожидания, которая передает управление другой задаче.

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

Вытесняющая многозадачность или многопоточность

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

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

Из-за этих сложностей организации обычно используют готовые RTOS, что позволяет программистам приложений сосредоточиться на функциональности устройства, а не на службах операционной системы. Однако выбор включения ОСРВ сопряжен с собственными проблемами, поскольку выбор должен быть сделан до начала процесса разработки приложения. Такое время вынуждает разработчиков выбирать встроенную операционную систему для своего устройства на основе текущих требований и, таким образом, в значительной степени ограничивает будущие возможности. [19]

Уровень сложности встроенных систем постоянно растет, поскольку устройствам требуются устройства для управления периферийными устройствами и задачами, такими как последовательный порт, USB, TCP/IP, Bluetooth , беспроводная локальная сеть , магистральная радиосвязь, несколько каналов, данные и голос, улучшенная графика, несколько состояний, несколько потоков, множество состояний ожидания и так далее. Эти тенденции ведут к внедрению встроенного промежуточного программного обеспечения в дополнение к RTOS.

Микроядра и экзоядра

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

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

Монолитные ядра

Монолитное ядро ​​— это относительно большое ядро ​​со сложными возможностями, адаптированными для встраиваемой среды. Это дает программистам среду, аналогичную настольной операционной системе, такой как Linux или Microsoft Windows , и, следовательно, очень продуктивна для разработки. С другой стороны, он требует значительно больше аппаратных ресурсов, часто является более дорогим и из-за сложности этих ядер может быть менее предсказуемым и надежным.

Типичными примерами встроенных монолитных ядер являются встроенные Linux , VXWorks и Windows CE .

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

Дополнительные программные компоненты

Помимо основной операционной системы, многие встроенные системы имеют дополнительные программные компоненты верхнего уровня. Эти компоненты включают в себя стеки сетевых протоколов, такие как CAN , TCP/IP , FTP , HTTP и HTTPS , а также возможности хранения, такие как FAT и системы управления флэш-памятью. Если встроенное устройство имеет аудио- и видеовозможности, то в системе будут присутствовать соответствующие драйверы и кодеки. В случае монолитных ядер многие из этих программных уровней могут быть включены в ядро. В категории ОСРВ наличие дополнительных программных компонентов зависит от коммерческого предложения.

Специализированные для предметной области архитектуры

В автомобильном секторе AUTOSAR представляет собой стандартную архитектуру встроенного программного обеспечения.

Смотрите также

Примечания

  1. ^ Более подробную информацию о MicroVGA можно найти в этом PDF-файле.

Рекомендации

  1. ^ AB Майкл Барр . «Глоссарий встраиваемых систем». Техническая библиотека нейтрино . Проверено 21 апреля 2007 г.
  2. ^ Хит, Стив (2003). Проектирование встраиваемых систем . Серия ЭДН для инженеров-конструкторов (2-е изд.). Ньюнес. п. 2. ISBN 978-0-7506-5546-0. Встроенная система — это система на базе микропроцессора , предназначенная для управления функцией или рядом функций.
  3. ^ AB Майкл Барр; Энтони Дж. Масса (2006). "Введение". Программирование встроенных систем: с помощью инструментов разработки C и GNU . О'Рейли. стр. 1–2. ISBN 978-0-596-00983-0.
  4. Барр, Майкл (1 августа 2009 г.). «Программа для настоящих мужчин на языке C». Проектирование встраиваемых систем . TechInsights (Объединенные Бизнес Медиа). п. 2 . Проверено 23 декабря 2009 г.
  5. Ширрифф, Кен (30 августа 2016 г.). «Удивительная история первых микропроцессоров». IEEE-спектр . Институт инженеров электротехники и электроники . 53 (9): 48–54. doi : 10.1109/MSPEC.2016.7551353. S2CID  32003640 . Проверено 13 октября 2019 г.
  6. ^ «1971: Микропроцессор объединяет функции ЦП в одном чипе» . Кремниевый двигатель . Музей истории компьютеров . Проверено 22 июля 2019 г.
  7. ^ "Фонд электронных границ" . Фонд электронных границ .
  8. ^ Встроенные системы OEM-решения Dell | Делл. Content.dell.com (04 января 2011 г.). Проверено 6 февраля 2013 г.
  9. ^ Дэвид Кэри (22 апреля 2008 г.). «Под капотом: робот-гитара со встроенной автонастройкой». Проектирование встраиваемых систем . Архивировано из оригинала 8 июля 2008 г.
  10. ^ Танкрети, Мэтью; Сундарам, Винайтиртан; Багчи, Саураб; Югстер, Патрик (2015). «ТАРДИС». Материалы 14-й Международной конференции по обработке информации в сенсорных сетях . ИПСН '15. Нью-Йорк, штат Нью-Йорк, США: ACM. стр. 286–297. дои : 10.1145/2737095.2737096. ISBN 9781450334754. S2CID  10120929.
  11. ^ Танкрети, Мэтью; Хоссейн, Мохаммад Саджад; Багчи, Саураб; Рагунатан, Виджай (2011). «Авекша». Материалы 9-й конференции ACM по встраиваемым сетевым сенсорным системам . СенСис '11. Нью-Йорк, штат Нью-Йорк, США: ACM. стр. 288–301. дои : 10.1145/2070942.2070972. ISBN 9781450307185. S2CID  14769602.
  12. ^ «Tektronix меняет прототипирование, встроенные инструменты повышают платы до статуса эмулятора» . Электронный инженерный журнал. 30 октября 2012 г. Проверено 30 октября 2012 г.
  13. ^ Крафт, Йохан; Уолл, Андерс; Кинле, Хольгер (2010), Бэрринджер, Ховард; Фальконе, Илис; Финкбайнер, Бернд; Хавелунд, Клаус (ред.), «Запись трассировки для встраиваемых систем: уроки, извлеченные из пяти промышленных проектов», Проверка во время выполнения , Берлин, Гейдельберг: Springer Berlin Heidelberg, vol. 6418, стр. 315–329, номер домена : 10.1007/978-3-642-16612-9_24, ISBN. 978-3-642-16611-2, получено 16 августа 2022 г.
  14. ^ Хейзер, Гернот (декабрь 2007 г.). «Ваша система безопасна? Докажите это!» (PDF) . ;авторизоваться: . 2 (6): 35–8. Архивировано (PDF) из оригинала 29 ноября 2014 г.
  15. ^ Морателли, К; Иоганн, С; Невес, М; Хессель, Ф (2016). «Встроенная виртуализация для разработки безопасных приложений Интернета вещей». Материалы 27-го Международного симпозиума по быстрому прототипированию систем: сокращение пути от спецификации к прототипу . стр. 2–6. дои : 10.1145/2990299.2990301. ISBN 9781450345354. S2CID  17466572 . Проверено 2 февраля 2018 г.
  16. ^ ab Short, Майкл (март 2008 г.). «Руководство по разработке надежных встроенных систем реального времени». 2008 Международная конференция IEEE/ACS по компьютерным системам и приложениям. стр. 1032–1039. дои : 10.1109/AICCSA.2008.4493674. ISBN 978-1-4244-1967-8. S2CID  14163138.
  17. ^ Ассоциация надежности программного обеспечения для автомобильной промышленности. «MISRA C: 2012, третье издание, первая редакция» . Проверено 3 февраля 2022 г.
  18. ^ «Часто задаваемые вопросы: Программируемые контроллеры» (PDF) . Проверено 10 января 2020 г.
  19. ^ «Работа на нескольких встроенных платформах» (PDF) . кларинокс. Архивировано (PDF) из оригинала 19 февраля 2011 г. Проверено 17 августа 2010 г.

дальнейшее чтение

Внешние ссылки