Вбудо́вана, вбудо́вувана систе́ма (англ. embedded system) — спеціалізована комп'ютерна система або обчислювальний пристрій, призначений для виконання обмеженої кількості функцій, часто, з обмеженнями реального часу. Комбінація апаратного та програмного забезпечення, можливо, з механічними або іншими частинами, призначена для виконання окремої функції. Зазвичай, вбудовувані системи є складовою частиною пристрою, включаючи апаратне забезпечення та механічні елементи. На противагу вбудовуваним, загальні комп'ютерні системи (такі як персональний комп'ютер) призначені для виконання широкого кола завдань. Вбудовувані системи присутні у багатьох сучасних приладах.
Оскільки вбудовувана система призначена для виконання обмеженої кількості функцій, розробники можуть її оптимізувати, зменшуючи вартість продукту, або збільшуючи надійність та швидкодію. Деякі вбудовувані системи виготовляються у великій кількості, що стимулює максимально зменшувати їх собівартість.
Фізично, вбудовувані системи бувають як і такими малими, наприклад, як портативні пристрої (цифрові годинники або MP3-плеєри), так і такими великими, як світлофори, пристрої управління виробництвом, або системи керування ядерними електростанціями. Відповідно, складність може бути низькою, як з одним чипом керування, так і дуже високою, з багатьма пристроями, периферійними приладами, комп'ютерними мережами тощо.
Взагалі кажучи, поняття «вбудовувана система» не є чітко визначеним, оскільки багато систем мають деякі можливості програмування. Наприклад, кишенькові комп'ютери мають деякі елементи від вбудовуваних систем — такі як операційні системи та мікропроцесори — але вони не є чисто вбудовуваними системами, оскільки дозволяють завантаження нових застосунків та підключення нових периферійних пристроїв.
Застосування
Вбудовувані системи забезпечують роботу тисяч різноманітних інтелектуальних взаємодіючих систем, таких як:
- касові термінали
- телевізійні приставки
- цифрові медіа-програвачі
- складна споживацька електроніка
- IP-телефони
- мережеві шлюзи
- серверні пристрої
- кіоски та торгові автомати
- промислові системи керування і системи керування завданнями
- вимірювальні і
- кишенькові комп'ютери та інші мобільні пристрої
Характеристики
- Вбудовувані системи, призначені для якоїсь певної задачі, на відміну від комп'ютерів, призначених для виконання величезної кількості задач. Деякі з таких мають обмеження функціональності роботи обрахунків в реальному вимірі, які накладаються задля безпеки та зручності використання. Це також дозволяє знижувати системні вимоги для використання задач, спрощувати системи та знижувати їх собівартість.
- Вбудовувані системи не завжди є автономними та незалежними системами. Іноді вони складається із малих, комп'ютеризованих складових в рамках однієї складної системи, яка служить для загальнішої цілі. Для прикладу такою може бути система сучасних автомобілів із складним електронним начинням, яке керується автомобільним комп'ютером.
- Програмна інструкція написана для вбудовуваних систем називається мікропрограмою, і зберігається в незмінному ПЗП або у вільнозаписуваній пам'яті чипів. Вони працюють із обмеженими апаратними ресурсами, за відсутності клавіатури та/або екрану.
Інтерфейс користувача
Вбудовувані системи можуть бути як взагалі без інтерфейсу користувача, так і мати складний графічний інтерфейс, схожий на інтерфейс сучасних середовищ на настільних комп'ютерах.
Прості системи
Прості вбудовувані системи використовують кнопки, РК-дисплеї та малі літерні або цифрові дисплеї, часто з простою системою меню. Цілий графічний екран з сенсорами дотику або клавішами на границі екрану надає гнучкість, зменшуючи, при цьому, використаний простір: значення клавіш може змінюватись разом із меню, що відображається, а вибір елементів може відтворювати природні механізми вибору.
Складніші системи
Повний графічний екран, із чутливим на дотик монітором і/та кнопками по краях забезпечують гнучкість та мінімізацію простору керування: функції кнопки можна змінити з екрану, а вибір залежить від наявних та потрібних вимог, що робить систему дуже зручною.
Надолонні системи часто мають екран з клавішею схожою на джойстик як вказівник.
Разом із поширенням вебтехнологій, розробники вбудовуваних систем отримали можливість створювати інтерфейси користувача у вигляді вебсторінок. Це дозволяє уникати складні схеми відображення, але надає можливості комплексного вводу та відображення, за необхідності, на іншому комп'ютері.
Центральні процесори
Процесори для вбудовуваних систем можна розбити на дві великі категорії: звичайні мікропроцесори (μP) та мікроконтролери (μC), що мають набагато більше периферійних пристроїв вбудованих на чип. На відміну від серверів та робочих комп'ютерів, у вбудовуваних системах використовується порівняно велика кількість простих архітектур ЦП; як фон-Нейманівські так і реалізації Гарвардської архітектури, RISC так і VLIW; розмір машинного слова коливається від 4 біт до 64 біт і більше (зазвичай, в DSP), хоча типовим залишається розмір в 8/16 біт.
Великий, але не вичерпний перелік архітектур ЦП, що використовуються вбудовуваними системами: , , , , 68k, 8051, ARM, AVR, AVR32, , , , , , , , , , , , MIPS, , PIC, PowerPC, , , , SuperH, , , , , , x86, , Z80 тощо.
Готові рішення
(PC/104) та PC/104 + є прикладами готових комп'ютерних систем, призначених для малої, низькопрофільної та підвищеної надійності. В них може використовуватися DOS, Linux, NetBSD, чи вбудовувані операційні системи реального часу, такі як [en], QNX or VxWorks.
В деяких ситуаціях, коли невеликі розміри не є першочерговими, компоненти можуть бути сумісними із комп'ютерами загального призначення. Плати, такі як VIA [en] зменшують різницю, тому що є PC-сумісними, але з сильно інтегрованими, фізично малими або мають інші корисні параметри, що роблять їх привабливими для проектантів вбудовуваних систем. Перевага даного підходу полягає в тому, що низькі витрати на нестандартні компоненти компенсовуються розробкою програмного забезпечення, коли може використовуватися те ж, що й у загальний мейнстрім комп'ютерах. Системи побудовані таким чином, що ще виглядають як вбудовувані, оскільки вони є компонентою більшого пристрою і виконують одну роль. Яскравим прикладом є банкомати.
Монокристальні та FPGA рішення
Загальною конфігурацією вбудовуваних систем є однокристальна система (SoC), спеціалізована інтегральна схема (ASIC), в якій процесор переробили та додали як складову частину дизайну чипу. Такі схеми застосовуються в програмованій логіці інтегральних схем (ПЛІС, FPGA), коли програмується вся логіка, включно з ЦП.
Периферія
Вбудовувані системи обмінюються інформацією з зовнішнім світом використовуючи периферійні прилади, такі як:
- Послідовний інтерфейс (SCI): RS-232, RS-422, RS-485 та ін.
- : I²C, SPI, SSC nf ESSI
- USB
- Мережа: Ethernet, Controller Area Network, [en], та інші
- Час: Фазове автопідлаштування частоти (ФАПЧ), захват/порівняння, час обробки
- Аналогово-цифрові/цифрово-аналогові перетворювачі (АЦП/ЦАП)
Інструменти
Розробники вбудовуваних систем використовують компілятор на асемблері, та зневаджувач для розробки програмного забезпечення вбудовуваних систем. Хоча крім цього використовуються і деякі більш специфічні інструменти:
- Цикли налагодження та емуляції (див. наступну секцію).
- Утиліти для додавання контрольної суми чи CRC до програми, так вбудовувані системи можуть перевіряти дієздатність роботи основної програми.
- Для систем, що використовують цифрову обробку сигналів розробники можуть використовувати математичні робочі платформи, такі як: Scilab / , MATLAB / Simulink, MathCad, чи Mathematica для імітації математики. Вони також можуть використовувати бібліотеки для хосту та для клієнта, що виключає розробку ЦОС алгоритмів, як це було зроблено в [en] та Unison Operating System.
- Спеціальні компілятори та компонувальники можуть використовуватися для оптимізації специфічного обладнання.
- Вбудовувані системи можуть використовувати власні спеціалізовані мови програмування та засоби проектування, або додаються вдосконалення до наявних мов, таких як Forth та BASIC.
- Іншим альтернативним шляхом є використання операційних систем реального часу та [en], які пристосовані до ЦСП ([en]).
Засоби програмного забезпечення можуть мати кілька джерел походження:
- Софтверні компанії, які спеціалізуються на вбудовуваних системах.
- Перенесені із GNU програмні засоби розроблення.
- Використання програм для ПК, якщо вбудовуваний процесор є близьким аналогом за архітектурою звичайних ПК.
У зв'язку із комплексним розвитком вбудовуваних систем, засоби розроблення та операційні системи мігрують на системи, в яких з'являється сенс. Наприклад стільникові телефони, кишенькові комп'ютери та інша споживацька техніка часто потребує значного програмного забезпечення, яке купується або надається сторонніми джерелами, що не пов'язані із виробництвом даної конкретної електроніки. В таких випадках використовується відкрите програмне середовище (Linux, NetBSD, чи вбудовану Java) для того щоб виробники програмного забезпечення спокійно створювали свої продукти для широкого ринку.
Зневадження
Вбудовані зневаджувачі можуть працювати на різних рівнях, в залежності від наявних можливостей. Від найпростіших до найскладніших вони можуть бути умовно згруповані за такими напрямками:
- Інтерактивна резидентне зневадження, використовуючи просту оболонку, представлену у вбудовану операційну систему (наприклад, Forth і Basic)
- Зовнішній зневаджувач із використанням прямих або послідовних портів для виведення слідів операції, використовуючи або контроль активності або з використання зневаджувального сервера.
- Вбудовуваний зневаджувач, апаратний пристрій, який підключається до мікропроцесора за допомогою JTAG або NEXUS інтерфейсу. Це дозволяє забезпечити функціонування мікропроцесора, який буде контролюватися ззовні, але, як правило, обмежена конкретним зневаджувальними можливостями в процесорі.
- Внутрішньосхемний емулятор замінює мікропроцесор із моделюючою еквівалентою, забезпечуючи повний контроль над усіма аспектами мікропроцесора.
- Повний емулятор забезпечує моделювання всіх аспектів апаратних засобів, що дозволяє все це контролювати і змінювати, і забезпечуючи зневадження на нормальному комп'ютері.
Якщо не обмежуватися зовнішніми дебаґерами, програміст може завантажувати та запускати програмне забезпечення використовуючи інструменти, переглядати запущені в процесорі коди, а також запускати та припиняти операції. З огляду на це початковий програмний код може як на основі як і початкового коду мов програмування високого рівня, низького так і їх поєднання.
Оскільки вбудовувані системи часто складаються з найрізноманітніших елементів, стратегії зневадження можуть варіюватися. Наприклад, зневадження програмно- (та мікропроцесор-) орієнтованих вбудованих систем відрізняється від зневадження вбудовуваних систем, де більшу частину обробки здійснюють периферійні пристрої (DSP, FPGA, співпроцесора).
Все більша кількість вбудовуваних систем сьогодні використовують більш ніж одне процесорне ядро. Загальною проблемою з мультиядерних розробок є виконання належної синхронізації програмного забезпечення. У такому випадку, дизайн вбудовуваних систем має забезпечувати перевірку руху даних по шинах між процесорними ядрами. Такий дизайн вимагає низькорівневого зневадження, на рівні сигналів/шини, наприклад, з логічним аналізатором.
Надійність
Вбудовувані системи часто знаходяться в машинах, які будуть працювати безперервно протягом багатьох років без помилок, а в деяких випадках відновлюватися самим, якщо відбувається помилка. Тому програмне забезпечення зазвичай розробляється та випробовується більш ретельно, ніж для персональних комп'ютерів, а також уникають ненадійних механічних рухомих частин, таких як дисководи, перемикачі і кнопки.
Конкретні питання надійності, можуть включати в себе:
- Система не може бути безпечно вимкнена на ремонт, чи бути в занадто недоступному місці для ремонту. Прикладами є: космічні системи, підводні кабелі, навігаційні маяки, свердловинні системи, а також автомобілі.
- Ця система повинна працювати з міркувань безпеки. «Кульгаючі режими» найменш допустимі. Часто оператором знімаються резервні копії. Прикладами є: навігатори літальних апаратів, системи управління реакторів, системи безпеки та оповіщення контролю хімічного заводу, системи однодвигунних літаків.
- Система втрачатиме значні суми грошей, якщо вимкнути: телефонні комутатори, контроль за заводі, контроль мостів та елеваторів, переказу грошових коштів та ринкових процедур, [en] та сервісу.
Використовуються різноманітні методи, іноді в поєднанні один з одним, щоб регенеруватися від помилок як помилки програмного забезпечення (таких як витік пам'яті), так і м'яких помилок в апаратній частині:
- Сторожовий таймер, який перезавантажує комп'ютер, якщо програмне забезпечення періодично повідомляє схему безпеки
- Підсистем з надлишковою кількістю запасних частин, на які можна перемикати
- Програмні модулі «слабких режимів», які забезпечують часткове функціонування
- Захист від збоїв живлення
Багатосерійні проти дрібносерійних
Для багатотиражованих систем, таких як портативні музичні програвачі або мобільні телефони, мінімізують витрати, як правило, ще при проектуванні. При виборі апаратних засобів інженери як правило користуються правилом: «досить добре» для виконання необхідних функцій.
Для малосерійних чи дослідних зразків вбудованих систем, комп'ютери основного напрямку можуть бути адаптовані обмеженням програм або шляхом заміни операційної системи на операційну систему реального часу.
Архітектури програмного забезпечення вбудованих систем
Є декілька різних типів архітектури програмного забезпечення в загальному користуванні.
Простий цикл управління
При такій архітектурі, програмне забезпечення містить простий цикл. В циклі робляться виклики підпрограм, кожна з яких виконує свою частину задачі апаратного або програмного забезпечення.
Системи, що керуються перериваннями
Деякі вбудовувані системи переважно змінюють порядок виконання за допомогою переривань. Це означає, що задачі, які виконуються системою викликаються за допомогою іншого типу подій. Переривання може генеруватися таймером із заздалегідь встановленою частотою, або контролером послідовного порту при отриманні сигналів.
Такі системи використовуються у випадку, якщо необхідна мала затримка обробки подій та події, що оброблюються, є короткими і простими. Зазвичай, системи такого типу також виконують прості задачі в основному циклі, але такі задачі не мають необхідності обробки без затримки.
Іноді обробник переривань вибудовує довгі за часом обробки задачі в чергу. Як тільки обробник переривань закінчує свою роботу, ці задачі виконуються в основному циклі. Цей метод робить систему близькою до багатозадачної системи з дискретними процесами.
Системи сумісної багатозадачності
Системи невитісняючої багатозадачності дуже схожі на простий цикл схеми контролю, за винятком того, що цикл прихований в інтерфейс прикладного програмування. Програміст визначає ряд завдань, і кожне завдання отримує свої власні умови для «виконання» роботи. Коли завдання не виконується, воно потребує регулярного простою (так звані «пауза», «очікування», «простій», «НОП» (операція порожньої команди) і т. д.).
Переваги та недоліки дуже схожі до систем циклічного виконання, за винятком того, що легше додати нове програмне забезпечення : просто шляхом написання нової задачі та додати її до черги інтерпритатора.
Системи витісняючої багатозадачності чи мультиядерні
У цьому типі системи, частина коду низького рівня перемикається між завданнями або потоками, і базується на таймері (підключеного до переривача). В основному вважається що системи такого рівня належать до ядра «операційної системи». В залежності від того, яка функціональність потрібна, він вводить більш чи менш складне управління кількома задачами, яке працює концептуально паралельно.
Оскільки будь-який код може пошкодити дані в іншому завданні (за винятком у великих систем з використанням блока управління пам'яттю), програми повинні бути ретельно розроблені та випробувані, також доступ до загальних даних необхідно контролювати за допомогю деяких стратегій синхронізації, наприклад: черга повідомлень, Семафори або неблокуюча схема синхронізації.
Через такі труднощі в організації, загальноприйнятим вважається купівля операційної системи реального часу, що дозволяє програмістам зосередитися на функціональності пристрою, а не на обслуговуванні операційної системи, принаймні для великих систем; менші системи часто не можуть собі дозволити накладних витрат, пов'язаних із загальними системами реального часу, у зв'язку з обмеженням співвідношення пам'яті, продуктивності та/або ємності акумулятора.
Мікроядра та екзоядра
є логічним кроком вперед від ОС реального часу. Звичайний механізм полягає в тому, що ядро операційної системи розділяє пам'ять і перемикає ЦП для різних потоків виконання. Користувацький режим процесів реалізовує основні функції, такі як файлові системи, мережеві інтерфейси і т. д.
В загальному, виграш мікроядер тоді, коли перемикання і зв'язок між завданнями швидкий, і програш — коли повільний.
Екзоядра взаємодіють ефективніше на рівні звичайних підпрограмних викликів. Апаратні засоби і все програмне забезпечення в системі є, і розширюване за допомогою застосунків програмістів.
Монолітні ядра
В даному випадку відносно великі ядра адаптовані до специфіки вбудовуваних систем за допомогою сучасних можливостей. Це дозволяє програмістам працювати в середовищі аналогічному настільним операційним системам, такими як Linux або Microsoft Windows, і тому є дуже продуктивним для розробників; недоліками є необхідність значно більших апаратних ресурсів, через складність цих ядер можуть бути менш передбачуваними і надійними, і часто дорожчі.
Загальними прикладами вбудовуваних монолітних ядер є вбудовуваний Linux та Windows CE.
Не зважаючи на збільшення витрат на обладнання, цей тип вбудовуваних систем набуває популярності, особливо на потужніших вбудовуваних пристроях, таких як Бездротові маршрутизатори та GPS навігація. Ось деякі з причин:
- Встановлені порти в загальних комплектах вбудованих чипів.
- дозволяється повторно використовувати доступні коди , вебсервери, , і інший коди.
- Розробку системи можна розпочинати з загальнофункціональних наборів, а потім налаштувати дистрибутив відділивши непотрібні функції. Таким чином заощаджуються витрати на пам'ять, використовувати тільки для актуального споживання.
- Багато інженерів вважають, що використання кодів у користувацькому режимі є надійнішим, легше налагоджуваним, і тому процес розробки простіший, а коди переносиміші.
- У багатьох вбудовуваних системах не вистачає жорстких вимог реального часу для контролю системи. Такі системи як вбудовуваний Linux досить швидкі для реагування у багатьох застосунках.
- Особливі умови, які вимагають швидшого реагування, ніж це може бути гарантовано найчастіше переміщують в .
- Багато операційних систем реального часу коштують співрозмірно з ціною системи. При використанні їх у продукті, вартість товару зросте істотно.
Спеціальні екзотичні операційні системи
Невелика кількість вбудовуваних систем вимагає безпечної, своєчасної, надійної та ефективної поведінки, недоступної в жодній із вищевказаних архітектур. У цьому випадку організація будує потрібну систему.
У деяких випадках система може бути розділена на «механізм контролера» з використанням спеціальної техніки, та «контролера дисплея» зі звичайною операційною системою. Система зв'язку передає дані між ними.
Додаткові програмні компоненти
На додачу до основної операційної системи, багато вбудовуваних систем мають додаткові програмні компонени верхнього рівня. Ці компоненти суміщають мережевий протокольний стек, такий як (TCP/IP), FTP, HTTP і HTTPS, та вміщують систему керування пам'яті, сумісною із накопичувачами у FAT так і флеш-пам'яті. Якщо пристрій забезпечений вбудовуваними аудіо-та відео-можливостями, то і відповідні драйвери та кодеки будуть наявні в системі. У разі монолітних ядер, багато що з цих програмних забезпечень вже включені. У категорії операційних систем реального часу, наявність додаткових програмних компонентів залежить від комерційних пропозицій.
Див. також
Посилання
- . Embedded Systems Glossary. Netrino Technical Library. Архів оригіналу за 25 червня 2013. Процитовано 21 квітня 2007.
- Jack Ganssle, Michael Barr (2003). Embedded Systems Dictionary. CMP Books. ISBN .
Ця стаття потребує додаткових для поліпшення її . (березень 2016) |
Це незавершена стаття про інформаційні технології. Ви можете проєкту, виправивши або дописавши її. |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Vbudo vana vbudo vuvana siste ma angl embedded system specializovana komp yuterna sistema abo obchislyuvalnij pristrij priznachenij dlya vikonannya obmezhenoyi kilkosti funkcij chasto z obmezhennyami realnogo chasu Kombinaciya aparatnogo ta programnogo zabezpechennya mozhlivo z mehanichnimi abo inshimi chastinami priznachena dlya vikonannya okremoyi funkciyi Zazvichaj vbudovuvani sistemi ye skladovoyu chastinoyu pristroyu vklyuchayuchi aparatne zabezpechennya ta mehanichni elementi Na protivagu vbudovuvanim zagalni komp yuterni sistemi taki yak personalnij komp yuter priznacheni dlya vikonannya shirokogo kola zavdan Vbudovuvani sistemi prisutni u bagatoh suchasnih priladah Marshrutizator yak priklad vbudovanih sistem Vidmicheni skladovi poznachayut mikroprocesor 4 RAM 6 ta flesh pam yat 7 Oskilki vbudovuvana sistema priznachena dlya vikonannya obmezhenoyi kilkosti funkcij rozrobniki mozhut yiyi optimizuvati zmenshuyuchi vartist produktu abo zbilshuyuchi nadijnist ta shvidkodiyu Deyaki vbudovuvani sistemi vigotovlyayutsya u velikij kilkosti sho stimulyuye maksimalno zmenshuvati yih sobivartist Fizichno vbudovuvani sistemi buvayut yak i takimi malimi napriklad yak portativni pristroyi cifrovi godinniki abo MP3 pleyeri tak i takimi velikimi yak svitlofori pristroyi upravlinnya virobnictvom abo sistemi keruvannya yadernimi elektrostanciyami Vidpovidno skladnist mozhe buti nizkoyu yak z odnim chipom keruvannya tak i duzhe visokoyu z bagatma pristroyami periferijnimi priladami komp yuternimi merezhami tosho Vzagali kazhuchi ponyattya vbudovuvana sistema ne ye chitko viznachenim oskilki bagato sistem mayut deyaki mozhlivosti programuvannya Napriklad kishenkovi komp yuteri mayut deyaki elementi vid vbudovuvanih sistem taki yak operacijni sistemi ta mikroprocesori ale voni ne ye chisto vbudovuvanimi sistemami oskilki dozvolyayut zavantazhennya novih zastosunkiv ta pidklyuchennya novih periferijnih pristroyiv ZastosuvannyaVbudovuvani sistemi zabezpechuyut robotu tisyach riznomanitnih intelektualnih vzayemodiyuchih sistem takih yak kasovi terminali televizijni pristavki cifrovi media progravachi skladna spozhivacka elektronika IP telefoni merezhevi shlyuzi serverni pristroyi kioski ta torgovi avtomati promislovi sistemi keruvannya i sistemi keruvannya zavdannyami vimiryuvalni i kishenkovi komp yuteri ta inshi mobilni pristroyiAvtomobilnij komp yuter ALIX 1C Mini ITX iz vpayanim na meterinskij plati procesorom AMD Geode LX 800 interfejsom dlya CF kartki miniPCI ta PCI slotami 44 pinovim IDE roz yemom ta 256MB operativnoyi pam yatiHarakteristikiVbudovuvani sistemi priznacheni dlya yakoyis pevnoyi zadachi na vidminu vid komp yuteriv priznachenih dlya vikonannya velicheznoyi kilkosti zadach Deyaki z takih mayut obmezhennya funkcionalnosti roboti obrahunkiv v realnomu vimiri yaki nakladayutsya zadlya bezpeki ta zruchnosti vikoristannya Ce takozh dozvolyaye znizhuvati sistemni vimogi dlya vikoristannya zadach sproshuvati sistemi ta znizhuvati yih sobivartist Vbudovuvani sistemi ne zavzhdi ye avtonomnimi ta nezalezhnimi sistemami Inodi voni skladayetsya iz malih komp yuterizovanih skladovih v ramkah odniyeyi skladnoyi sistemi yaka sluzhit dlya zagalnishoyi cili Dlya prikladu takoyu mozhe buti sistema suchasnih avtomobiliv iz skladnim elektronnim nachinnyam yake keruyetsya avtomobilnim komp yuterom Programna instrukciya napisana dlya vbudovuvanih sistem nazivayetsya mikroprogramoyu i zberigayetsya v nezminnomu PZP abo u vilnozapisuvanij pam yati chipiv Voni pracyuyut iz obmezhenimi aparatnimi resursami za vidsutnosti klaviaturi ta abo ekranu Interfejs koristuvacha Vbudovuvani sistemi mozhut buti yak vzagali bez interfejsu koristuvacha tak i mati skladnij grafichnij interfejs shozhij na interfejs suchasnih seredovish na nastilnih komp yuterah Prosti sistemi Prosti vbudovuvani sistemi vikoristovuyut knopki RK displeyi ta mali literni abo cifrovi displeyi chasto z prostoyu sistemoyu menyu Cilij grafichnij ekran z sensorami dotiku abo klavishami na granici ekranu nadaye gnuchkist zmenshuyuchi pri comu vikoristanij prostir znachennya klavish mozhe zminyuvatis razom iz menyu sho vidobrazhayetsya a vibir elementiv mozhe vidtvoryuvati prirodni mehanizmi viboru Skladnishi sistemi Povnij grafichnij ekran iz chutlivim na dotik monitorom i ta knopkami po krayah zabezpechuyut gnuchkist ta minimizaciyu prostoru keruvannya funkciyi knopki mozhna zminiti z ekranu a vibir zalezhit vid nayavnih ta potribnih vimog sho robit sistemu duzhe zruchnoyu Nadolonni sistemi chasto mayut ekran z klavisheyu shozhoyu na dzhojstik yak vkazivnik Razom iz poshirennyam vebtehnologij rozrobniki vbudovuvanih sistem otrimali mozhlivist stvoryuvati interfejsi koristuvacha u viglyadi vebstorinok Ce dozvolyaye unikati skladni shemi vidobrazhennya ale nadaye mozhlivosti kompleksnogo vvodu ta vidobrazhennya za neobhidnosti na inshomu komp yuteri Centralni procesori Procesori dlya vbudovuvanih sistem mozhna rozbiti na dvi veliki kategoriyi zvichajni mikroprocesori mP ta mikrokontroleri mC sho mayut nabagato bilshe periferijnih pristroyiv vbudovanih na chip Na vidminu vid serveriv ta robochih komp yuteriv u vbudovuvanih sistemah vikoristovuyetsya porivnyano velika kilkist prostih arhitektur CP yak fon Nejmanivski tak i realizaciyi Garvardskoyi arhitekturi RISC tak i VLIW rozmir mashinnogo slova kolivayetsya vid 4 bit do 64 bit i bilshe zazvichaj v DSP hocha tipovim zalishayetsya rozmir v 8 16 bit Velikij ale ne vicherpnij perelik arhitektur CP sho vikoristovuyutsya vbudovuvanimi sistemami 68k 8051 ARM AVR AVR32 MIPS PIC PowerPC SuperH x86 Z80 tosho Gotovi rishennya PC 104 ta PC 104 ye prikladami gotovih komp yuternih sistem priznachenih dlya maloyi nizkoprofilnoyi ta pidvishenoyi nadijnosti V nih mozhe vikoristovuvatisya DOS Linux NetBSD chi vbudovuvani operacijni sistemi realnogo chasu taki yak en QNX or VxWorks V deyakih situaciyah koli neveliki rozmiri ne ye pershochergovimi komponenti mozhut buti sumisnimi iz komp yuterami zagalnogo priznachennya Plati taki yak VIA en zmenshuyut riznicyu tomu sho ye PC sumisnimi ale z silno integrovanimi fizichno malimi abo mayut inshi korisni parametri sho roblyat yih privablivimi dlya proektantiv vbudovuvanih sistem Perevaga danogo pidhodu polyagaye v tomu sho nizki vitrati na nestandartni komponenti kompensovuyutsya rozrobkoyu programnogo zabezpechennya koli mozhe vikoristovuvatisya te zh sho j u zagalnij mejnstrim komp yuterah Sistemi pobudovani takim chinom sho she viglyadayut yak vbudovuvani oskilki voni ye komponentoyu bilshogo pristroyu i vikonuyut odnu rol Yaskravim prikladom ye bankomati Monokristalni ta FPGA rishennya Zagalnoyu konfiguraciyeyu vbudovuvanih sistem ye odnokristalna sistema SoC specializovana integralna shema ASIC v yakij procesor pererobili ta dodali yak skladovu chastinu dizajnu chipu Taki shemi zastosovuyutsya v programovanij logici integralnih shem PLIS FPGA koli programuyetsya vsya logika vklyuchno z CP Periferiya Vbudovuvani sistemi obminyuyutsya informaciyeyu z zovnishnim svitom vikoristovuyuchi periferijni priladi taki yak Poslidovnij interfejs SCI RS 232 RS 422 RS 485 ta in I C SPI SSC nf ESSI USB Merezha Ethernet Controller Area Network en ta inshi Chas Fazove avtopidlashtuvannya chastoti FAPCh zahvat porivnyannya chas obrobki Analogovo cifrovi cifrovo analogovi peretvoryuvachi ACP CAP Instrumenti Rozrobniki vbudovuvanih sistem vikoristovuyut kompilyator na asembleri ta znevadzhuvach dlya rozrobki programnogo zabezpechennya vbudovuvanih sistem Hocha krim cogo vikoristovuyutsya i deyaki bilsh specifichni instrumenti Cikli nalagodzhennya ta emulyaciyi div nastupnu sekciyu Utiliti dlya dodavannya kontrolnoyi sumi chi CRC do programi tak vbudovuvani sistemi mozhut pereviryati diyezdatnist roboti osnovnoyi programi Dlya sistem sho vikoristovuyut cifrovu obrobku signaliv rozrobniki mozhut vikoristovuvati matematichni robochi platformi taki yak Scilab MATLAB Simulink MathCad chi Mathematica dlya imitaciyi matematiki Voni takozh mozhut vikoristovuvati biblioteki dlya hostu ta dlya kliyenta sho viklyuchaye rozrobku COS algoritmiv yak ce bulo zrobleno v en ta Unison Operating System Specialni kompilyatori ta komponuvalniki mozhut vikoristovuvatisya dlya optimizaciyi specifichnogo obladnannya Vbudovuvani sistemi mozhut vikoristovuvati vlasni specializovani movi programuvannya ta zasobi proektuvannya abo dodayutsya vdoskonalennya do nayavnih mov takih yak Forth ta BASIC Inshim alternativnim shlyahom ye vikoristannya operacijnih sistem realnogo chasu ta en yaki pristosovani do CSP en Zasobi programnogo zabezpechennya mozhut mati kilka dzherel pohodzhennya Softverni kompaniyi yaki specializuyutsya na vbudovuvanih sistemah Pereneseni iz GNU programni zasobi rozroblennya Vikoristannya program dlya PK yaksho vbudovuvanij procesor ye blizkim analogom za arhitekturoyu zvichajnih PK U zv yazku iz kompleksnim rozvitkom vbudovuvanih sistem zasobi rozroblennya ta operacijni sistemi migruyut na sistemi v yakih z yavlyayetsya sens Napriklad stilnikovi telefoni kishenkovi komp yuteri ta insha spozhivacka tehnika chasto potrebuye znachnogo programnogo zabezpechennya yake kupuyetsya abo nadayetsya storonnimi dzherelami sho ne pov yazani iz virobnictvom danoyi konkretnoyi elektroniki V takih vipadkah vikoristovuyetsya vidkrite programne seredovishe Linux NetBSD chi vbudovanu Java dlya togo shob virobniki programnogo zabezpechennya spokijno stvoryuvali svoyi produkti dlya shirokogo rinku Znevadzhennya Vbudovani znevadzhuvachi mozhut pracyuvati na riznih rivnyah v zalezhnosti vid nayavnih mozhlivostej Vid najprostishih do najskladnishih voni mozhut buti umovno zgrupovani za takimi napryamkami Interaktivna rezidentne znevadzhennya vikoristovuyuchi prostu obolonku predstavlenu u vbudovanu operacijnu sistemu napriklad Forth i Basic Zovnishnij znevadzhuvach iz vikoristannyam pryamih abo poslidovnih portiv dlya vivedennya slidiv operaciyi vikoristovuyuchi abo kontrol aktivnosti abo z vikoristannya znevadzhuvalnogo servera Vbudovuvanij znevadzhuvach aparatnij pristrij yakij pidklyuchayetsya do mikroprocesora za dopomogoyu JTAG abo NEXUS interfejsu Ce dozvolyaye zabezpechiti funkcionuvannya mikroprocesora yakij bude kontrolyuvatisya zzovni ale yak pravilo obmezhena konkretnim znevadzhuvalnimi mozhlivostyami v procesori Vnutrishnoshemnij emulyator zaminyuye mikroprocesor iz modelyuyuchoyu ekvivalentoyu zabezpechuyuchi povnij kontrol nad usima aspektami mikroprocesora Povnij emulyator zabezpechuye modelyuvannya vsih aspektiv aparatnih zasobiv sho dozvolyaye vse ce kontrolyuvati i zminyuvati i zabezpechuyuchi znevadzhennya na normalnomu komp yuteri Yaksho ne obmezhuvatisya zovnishnimi debagerami programist mozhe zavantazhuvati ta zapuskati programne zabezpechennya vikoristovuyuchi instrumenti pereglyadati zapusheni v procesori kodi a takozh zapuskati ta pripinyati operaciyi Z oglyadu na ce pochatkovij programnij kod mozhe yak na osnovi yak i pochatkovogo kodu mov programuvannya visokogo rivnya nizkogo tak i yih poyednannya Oskilki vbudovuvani sistemi chasto skladayutsya z najriznomanitnishih elementiv strategiyi znevadzhennya mozhut variyuvatisya Napriklad znevadzhennya programno ta mikroprocesor oriyentovanih vbudovanih sistem vidriznyayetsya vid znevadzhennya vbudovuvanih sistem de bilshu chastinu obrobki zdijsnyuyut periferijni pristroyi DSP FPGA spivprocesora Vse bilsha kilkist vbudovuvanih sistem sogodni vikoristovuyut bilsh nizh odne procesorne yadro Zagalnoyu problemoyu z multiyadernih rozrobok ye vikonannya nalezhnoyi sinhronizaciyi programnogo zabezpechennya U takomu vipadku dizajn vbudovuvanih sistem maye zabezpechuvati perevirku ruhu danih po shinah mizh procesornimi yadrami Takij dizajn vimagaye nizkorivnevogo znevadzhennya na rivni signaliv shini napriklad z logichnim analizatorom Nadijnist Vbudovuvani sistemi chasto znahodyatsya v mashinah yaki budut pracyuvati bezperervno protyagom bagatoh rokiv bez pomilok a v deyakih vipadkah vidnovlyuvatisya samim yaksho vidbuvayetsya pomilka Tomu programne zabezpechennya zazvichaj rozroblyayetsya ta viprobovuyetsya bilsh retelno nizh dlya personalnih komp yuteriv a takozh unikayut nenadijnih mehanichnih ruhomih chastin takih yak diskovodi peremikachi i knopki Konkretni pitannya nadijnosti mozhut vklyuchati v sebe Sistema ne mozhe buti bezpechno vimknena na remont chi buti v zanadto nedostupnomu misci dlya remontu Prikladami ye kosmichni sistemi pidvodni kabeli navigacijni mayaki sverdlovinni sistemi a takozh avtomobili Cya sistema povinna pracyuvati z mirkuvan bezpeki Kulgayuchi rezhimi najmensh dopustimi Chasto operatorom znimayutsya rezervni kopiyi Prikladami ye navigatori litalnih aparativ sistemi upravlinnya reaktoriv sistemi bezpeki ta opovishennya kontrolyu himichnogo zavodu sistemi odnodvigunnih litakiv Sistema vtrachatime znachni sumi groshej yaksho vimknuti telefonni komutatori kontrol za zavodi kontrol mostiv ta elevatoriv perekazu groshovih koshtiv ta rinkovih procedur en ta servisu Vikoristovuyutsya riznomanitni metodi inodi v poyednanni odin z odnim shob regeneruvatisya vid pomilok yak pomilki programnogo zabezpechennya takih yak vitik pam yati tak i m yakih pomilok v aparatnij chastini Storozhovij tajmer yakij perezavantazhuye komp yuter yaksho programne zabezpechennya periodichno povidomlyaye shemu bezpeki Pidsistem z nadlishkovoyu kilkistyu zapasnih chastin na yaki mozhna peremikati Programni moduli slabkih rezhimiv yaki zabezpechuyut chastkove funkcionuvannya Zahist vid zboyiv zhivlennyaBagatoserijni proti dribnoserijnih Dlya bagatotirazhovanih sistem takih yak portativni muzichni progravachi abo mobilni telefoni minimizuyut vitrati yak pravilo she pri proektuvanni Pri vibori aparatnih zasobiv inzheneri yak pravilo koristuyutsya pravilom dosit dobre dlya vikonannya neobhidnih funkcij Dlya maloserijnih chi doslidnih zrazkiv vbudovanih sistem komp yuteri osnovnogo napryamku mozhut buti adaptovani obmezhennyam program abo shlyahom zamini operacijnoyi sistemi na operacijnu sistemu realnogo chasu Arhitekturi programnogo zabezpechennya vbudovanih sistemYe dekilka riznih tipiv arhitekturi programnogo zabezpechennya v zagalnomu koristuvanni Prostij cikl upravlinnya Pri takij arhitekturi programne zabezpechennya mistit prostij cikl V cikli roblyatsya vikliki pidprogram kozhna z yakih vikonuye svoyu chastinu zadachi aparatnogo abo programnogo zabezpechennya Sistemi sho keruyutsya pererivannyami Deyaki vbudovuvani sistemi perevazhno zminyuyut poryadok vikonannya za dopomogoyu pererivan Ce oznachaye sho zadachi yaki vikonuyutsya sistemoyu viklikayutsya za dopomogoyu inshogo tipu podij Pererivannya mozhe generuvatisya tajmerom iz zazdalegid vstanovlenoyu chastotoyu abo kontrolerom poslidovnogo portu pri otrimanni signaliv Taki sistemi vikoristovuyutsya u vipadku yaksho neobhidna mala zatrimka obrobki podij ta podiyi sho obroblyuyutsya ye korotkimi i prostimi Zazvichaj sistemi takogo tipu takozh vikonuyut prosti zadachi v osnovnomu cikli ale taki zadachi ne mayut neobhidnosti obrobki bez zatrimki Inodi obrobnik pererivan vibudovuye dovgi za chasom obrobki zadachi v chergu Yak tilki obrobnik pererivan zakinchuye svoyu robotu ci zadachi vikonuyutsya v osnovnomu cikli Cej metod robit sistemu blizkoyu do bagatozadachnoyi sistemi z diskretnimi procesami Sistemi sumisnoyi bagatozadachnosti Sistemi nevitisnyayuchoyi bagatozadachnosti duzhe shozhi na prostij cikl shemi kontrolyu za vinyatkom togo sho cikl prihovanij v interfejs prikladnogo programuvannya Programist viznachaye ryad zavdan i kozhne zavdannya otrimuye svoyi vlasni umovi dlya vikonannya roboti Koli zavdannya ne vikonuyetsya vono potrebuye regulyarnogo prostoyu tak zvani pauza ochikuvannya prostij NOP operaciya porozhnoyi komandi i t d Perevagi ta nedoliki duzhe shozhi do sistem ciklichnogo vikonannya za vinyatkom togo sho legshe dodati nove programne zabezpechennya prosto shlyahom napisannya novoyi zadachi ta dodati yiyi do chergi interpritatora Sistemi vitisnyayuchoyi bagatozadachnosti chi multiyaderni U comu tipi sistemi chastina kodu nizkogo rivnya peremikayetsya mizh zavdannyami abo potokami i bazuyetsya na tajmeri pidklyuchenogo do pererivacha V osnovnomu vvazhayetsya sho sistemi takogo rivnya nalezhat do yadra operacijnoyi sistemi V zalezhnosti vid togo yaka funkcionalnist potribna vin vvodit bilsh chi mensh skladne upravlinnya kilkoma zadachami yake pracyuye konceptualno paralelno Oskilki bud yakij kod mozhe poshkoditi dani v inshomu zavdanni za vinyatkom u velikih sistem z vikoristannyam bloka upravlinnya pam yattyu programi povinni buti retelno rozrobleni ta viprobuvani takozh dostup do zagalnih danih neobhidno kontrolyuvati za dopomogyu deyakih strategij sinhronizaciyi napriklad cherga povidomlen Semafori abo neblokuyucha shema sinhronizaciyi Cherez taki trudnoshi v organizaciyi zagalnoprijnyatim vvazhayetsya kupivlya operacijnoyi sistemi realnogo chasu sho dozvolyaye programistam zosereditisya na funkcionalnosti pristroyu a ne na obslugovuvanni operacijnoyi sistemi prinajmni dlya velikih sistem menshi sistemi chasto ne mozhut sobi dozvoliti nakladnih vitrat pov yazanih iz zagalnimi sistemami realnogo chasu u zv yazku z obmezhennyam spivvidnoshennya pam yati produktivnosti ta abo yemnosti akumulyatora Mikroyadra ta ekzoyadra ye logichnim krokom vpered vid OS realnogo chasu Zvichajnij mehanizm polyagaye v tomu sho yadro operacijnoyi sistemi rozdilyaye pam yat i peremikaye CP dlya riznih potokiv vikonannya Koristuvackij rezhim procesiv realizovuye osnovni funkciyi taki yak fajlovi sistemi merezhevi interfejsi i t d V zagalnomu vigrash mikroyader todi koli peremikannya i zv yazok mizh zavdannyami shvidkij i progrash koli povilnij Ekzoyadra vzayemodiyut efektivnishe na rivni zvichajnih pidprogramnih viklikiv Aparatni zasobi i vse programne zabezpechennya v sistemi ye i rozshiryuvane za dopomogoyu zastosunkiv programistiv Monolitni yadra V danomu vipadku vidnosno veliki yadra adaptovani do specifiki vbudovuvanih sistem za dopomogoyu suchasnih mozhlivostej Ce dozvolyaye programistam pracyuvati v seredovishi analogichnomu nastilnim operacijnim sistemam takimi yak Linux abo Microsoft Windows i tomu ye duzhe produktivnim dlya rozrobnikiv nedolikami ye neobhidnist znachno bilshih aparatnih resursiv cherez skladnist cih yader mozhut buti mensh peredbachuvanimi i nadijnimi i chasto dorozhchi Zagalnimi prikladami vbudovuvanih monolitnih yader ye vbudovuvanij Linux ta Windows CE Ne zvazhayuchi na zbilshennya vitrat na obladnannya cej tip vbudovuvanih sistem nabuvaye populyarnosti osoblivo na potuzhnishih vbudovuvanih pristroyah takih yak Bezdrotovi marshrutizatori ta GPS navigaciya Os deyaki z prichin Vstanovleni porti v zagalnih komplektah vbudovanih chipiv dozvolyayetsya povtorno vikoristovuvati dostupni kodi vebserveri i inshij kodi Rozrobku sistemi mozhna rozpochinati z zagalnofunkcionalnih naboriv a potim nalashtuvati distributiv viddilivshi nepotribni funkciyi Takim chinom zaoshadzhuyutsya vitrati na pam yat vikoristovuvati tilki dlya aktualnogo spozhivannya Bagato inzheneriv vvazhayut sho vikoristannya kodiv u koristuvackomu rezhimi ye nadijnishim legshe nalagodzhuvanim i tomu proces rozrobki prostishij a kodi perenosimishi U bagatoh vbudovuvanih sistemah ne vistachaye zhorstkih vimog realnogo chasu dlya kontrolyu sistemi Taki sistemi yak vbudovuvanij Linux dosit shvidki dlya reaguvannya u bagatoh zastosunkah Osoblivi umovi yaki vimagayut shvidshogo reaguvannya nizh ce mozhe buti garantovano najchastishe peremishuyut v Bagato operacijnih sistem realnogo chasu koshtuyut spivrozmirno z cinoyu sistemi Pri vikoristanni yih u produkti vartist tovaru zroste istotno Specialni ekzotichni operacijni sistemi Nevelika kilkist vbudovuvanih sistem vimagaye bezpechnoyi svoyechasnoyi nadijnoyi ta efektivnoyi povedinki nedostupnoyi v zhodnij iz vishevkazanih arhitektur U comu vipadku organizaciya buduye potribnu sistemu U deyakih vipadkah sistema mozhe buti rozdilena na mehanizm kontrolera z vikoristannyam specialnoyi tehniki ta kontrolera displeya zi zvichajnoyu operacijnoyu sistemoyu Sistema zv yazku peredaye dani mizh nimi Dodatkovi programni komponenti Na dodachu do osnovnoyi operacijnoyi sistemi bagato vbudovuvanih sistem mayut dodatkovi programni komponeni verhnogo rivnya Ci komponenti sumishayut merezhevij protokolnij stek takij yak TCP IP FTP HTTP i HTTPS ta vmishuyut sistemu keruvannya pam yati sumisnoyu iz nakopichuvachami u FAT tak i flesh pam yati Yaksho pristrij zabezpechenij vbudovuvanimi audio ta video mozhlivostyami to i vidpovidni drajveri ta kodeki budut nayavni v sistemi U razi monolitnih yader bagato sho z cih programnih zabezpechen vzhe vklyucheni U kategoriyi operacijnih sistem realnogo chasu nayavnist dodatkovih programnih komponentiv zalezhit vid komercijnih propozicij Div takozhMikroprograma Mova programuvannya Operacijna sistema realnogo chasu Procesor cifrovih signaliv Centralnij procesor Odnoplatnij komp yuter Vbudovuvana SKBDPosilannya Embedded Systems Glossary Netrino Technical Library Arhiv originalu za 25 chervnya 2013 Procitovano 21 kvitnya 2007 Jack Ganssle Michael Barr 2003 Embedded Systems Dictionary CMP Books ISBN 1578201209 Cya stattya potrebuye dodatkovih posilan na dzherela dlya polipshennya yiyi perevirnosti Bud laska dopomozhit udoskonaliti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Zvernitsya na storinku obgovorennya za poyasnennyami ta dopomozhit vipraviti nedoliki Material bez dzherel mozhe buti piddano sumnivu ta vilucheno berezen 2016 Ce nezavershena stattya pro informacijni tehnologiyi Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi