Skip to main content
Цю сторінку перекладено автоматично. Перейти натомість до англійської версії?

Вбудоване програмне забезпечення

Вбудоване програмне забезпечення - це спеціалізована програма або прошивка, яка працює на процесорному кластері, вбудованому в SoC або IC. Практично будь-який електронний продукт може містити один або кілька вбудованих процесорів, поширених у сучасних автомобілях, факторну автоматизацію підлоги, авіоніку, медичні пристрої тощо.

Які існують різні типи вбудованого програмного забезпечення?

Вбудовані програмні програми - це спеціалізоване програмування на пристроях, що не є ПК - або як частина мікрочіпа, або як частина іншої програми, яка знаходиться на верхній частині чіпа - для управління конкретними функціями пристрою. На відміну від програм для ПК, які можуть бути встановлені на різних комп'ютерних системах і модифіковані для забезпечення різних рівнів функціональності, вбудоване програмне забезпечення має фіксовані апаратні вимоги та можливості. Він створений виключно для конкретного пристрою, на якому він працює, з обмеженнями обробки та пам'яті, пов'язаними безпосередньо з його специфікаціями. У контексті цього обговорення вбудоване програмне забезпечення включає додатки, прошивки, проміжне програмне забезпечення та операційні системи, які виконуються на одному мікропроцесорі або кластері мікропроцесорів, «вбудованих» в додаткову логіку.

Супутні товари: Capital Embedded AR Classic | Capital Embedded Integrator AR Classic | Capital Embedded Virtualizer AR Classic

A professional working on a computer with a graph, another person standing nearby observing the screen.

Характеристики та особливості вбудованих систем

Незважаючи на те, що існує багато типів вбудованих систем, всі вони мають однакові корисні особливості та конструктивні характеристики.

Усі вбудовані системи є специфічними для завдань

Вони виконують одну і ту ж попередньо запрограмовану функцію протягом усього терміну експлуатації і не можуть бути змінені.

Всі вбудовані системи відрізняються високою ефективністю

Вимоги до ресурсів вбудованого програмного забезпечення ніколи не повинні перевищувати ємність обладнання, на якому воно встановлено, а технічні характеристики обладнання ніколи не повинні перевищувати мінімальні вимоги вбудованого програмного забезпечення.

Призначений для стабільності

Всі вбудовані системи розроблені так, щоб бути високонадійними та стабільними. Вони повинні виконувати своє завдання з послідовним часом відгуку та функціонувати протягом усього терміну служби пристрою, на якому вони розміщуються.

Які типи вбудованого програмного забезпечення пропонує Siemens?

«Сіменс» пропонує обидва автомобільне вбудоване програмне забезпечення і вбудована інженерія програмного забезпечення розчини. Siemens припинила пропонувати автономне вбудоване програмне забезпечення для SoC з виходом у листопаді 2023 року продуктів Nucleus, Nucleus Hypervisor, Nucleus ReadyStart, Sokol Flex Linux, Sokol Omni Linux та Sourcery CodeBench (включаючи супутні доповнення). Існуючі контракти на підтримку цих продуктів все ще виконуються, будь ласка, зв'яжіться з Siemens Центр підтримки для отримання додаткової інформації.

Які існують різні типи вбудованого програмного забезпечення та їх призначення?

  • Операційна система - Операційна система (ОС), в її найзагальнішому розумінні, - це програмне забезпечення, яке дозволяє користувачеві запускати інші програми на обчислювальному пристрої. Операційна система керує апаратними ресурсами процесора, включаючи пристрої введення, такі як клавіатура та миша, вихідні пристрої, такі як дисплеї або принтери, мережеві підключення та пристрої зберігання даних, такі як жорсткі диски та пам'ять. ОС також надає послуги для полегшення ефективного виконання та управління, а також розподілом пам'яті для програмних прикладних програм.
  • Прошивка - Прошивка - це тип програмного забезпечення, яке написано безпосередньо для апаратного забезпечення. Він працює без проходження API, операційної системи або драйверів пристроїв, надаючи необхідні інструкції та вказівки для спілкування з іншими пристроями або виконання основних завдань та функцій за призначенням.
  • Проміжне програмне забезпечення - це програмний шар, розташований між додатками та операційними системами. Проміжне програмне забезпечення часто використовується в розподілених системах, де воно спрощує розробку програмного забезпечення, забезпечуючи наступне:

    • Приховування тонкощів розподілених додатків
    • Маскування неоднорідності апаратного забезпечення, операційних систем і протоколів
    • Забезпечення рівномірних інтерфейсів високого рівня, що використовуються для створення сумісних, багаторазових та портативних додатків.
    • Надання набору загальних служб, що мінімізує дублювання зусиль та покращує співпрацю між додатками
  • Додаток - Кінцевий користувач розробляє кінцевий програмний додаток, який працює в операційній системі, використовує або взаємодіє з проміжним програмним забезпеченням та прошивкою, і є основним фокусом цільової функції вбудованих систем. Кожна кінцева програма унікальна, тоді як операційні системи та прошивка можуть бути ідентичними від пристрою до пристрою.

Вбудоване програмне забезпечення проти вбудованих систем

Апаратні компоненти в пристрої, що працює з вбудованим програмним забезпеченням, називаються «вбудованою системою». Деякі приклади апаратних компонентів, що використовуються у вбудованих системах, - це схеми живлення, центральні процесорні блоки, пристрої флеш-пам'яті, таймери та послідовні порти зв'язку. На ранніх етапах проектування пристрою вирішується обладнання, яке складе вбудовану систему, і її конфігурацію всередині пристрою. Потім вбудоване програмне забезпечення розробляється з нуля, щоб працювати виключно на цьому апаратному забезпеченні в цій точній конфігурації. Це робить дизайн вбудованого програмного забезпечення спеціалізованою сферою, що вимагає глибоких знань апаратних можливостей та комп'ютерного програмування.

Приклади вбудованих програмних функцій

Майже кожен пристрій з друкованими платами та комп'ютерними чіпами має ці компоненти, розташовані у вбудованій програмній системі. Як результат, вбудовані програмні системи є повсюдно поширеними в повсякденному житті і зустрічаються у споживчих, промислових, автомобільних, аерокосмічних, медичних, комерційних, телекомунікаційних та військових технологіях.

Поширені приклади вбудованих функцій на основі програмного забезпечення включають:

  • Системи обробки зображень, знайдені в медичному обладнанні візуалізації
  • Системи управління «Флай-by-Wire», знайдені в літаках
  • Системи виявлення руху в камерах безпеки
  • Системи управління дорожнім рухом виявлені на світлофорах
  • Системи синхронізації та автоматизації, знайдені в пристроях розумного будинку

Які існують різні типи вбудованих систем?

Якщо виходячи з продуктивності та функціональних вимог, виділяють п'ять основних класів вбудованих систем:

  • Вбудовані системи в режимі реального часу виконують завдання детермінованим та повторюваним способом, на що впливає основна архітектура та планування операційних систем, а також продуктивність потоків, розгалуження та затримка переривання. Вбудовані системи загального призначення не містять вимог у режимі реального часу і можуть керувати перериваннями або розгалуженнями без залежності від часу завершення. Графічні дисплеї та управління клавіатурою та мишкою - хороші приклади загальних систем.
  • Автономні вбудовані системи можуть виконувати завдання без хост-системи або зовнішніх ресурсів обробки. Вони можуть виводити або отримувати дані з підключених пристроїв, але не залежать від них для виконання свого завдання.
  • Автономні вбудовані системи можуть виконувати своє завдання без хост-системи або зовнішніх ресурсів обробки. Вони можуть виводити або отримувати дані з підключених пристроїв, але не залежать від них для виконання свого завдання.
  • Мережеві вбудовані системи залежать від підключеної мережі для виконання поставлених завдань.
  • Виходячи зі складності апаратної архітектури системи, існує три основні типи вбудованих систем: мережеві вбудовані системи залежать від підключеної мережі для виконання поставлених завдань.

Як кінцеві ринки впливають на вбудовані системи

Вимоги та компоненти вбудованої системи будуть відрізнятися залежно від вимог цільового ринку. Деякі приклади включають:

  • Споживачі - У таких додатках, як споживчі товари, такі як пральні машини, носячі пристрої та мобільні телефони, вбудовані системи підкреслюють зменшений розмір
  • Система на чіпі, низьке енергоспоживання або робота акумулятора та графічні інтерфейси. У цих додатках цінуються настроювані операційні системи і можливість відключення непрацюючих «доменів» конструкції.
  • Мережа — програми, що забезпечують підключення, зв'язок, операції та управління корпоративною мережею. Він забезпечує шлях зв'язку та послуги між користувачами, процесами, додатками, службами та зовнішніми мережами/Інтернетом. Вбудовані мережеві програми зосереджуються на швидкості відгуку, обробці пакетів та периферійних апаратних шляхах.
  • Промисловий - Для таких застосувань, як управління заводськими майданчиками, двигуни та вітряки, акцент має тенденцію до забезпечення хмарного підключення та детермінованої роботи в «режимі реального часу» та може зосередитися на проміжному програмному забезпеченні.
  • Медичні, автомобільні та аерокосмічні галузі потребують змішаних критичних систем безпеки, де частини конструкції ізольовані одна від одної, щоб забезпечити надходження або вихід із системи лише необхідних даних (безпека), гарантуючи при цьому відсутність шкоди кінцевому користувачеві (безпека). Прикладами є автономні системи водіння в автомобілі та медичних пристроях. Ці вбудовані системи можуть мати поєднання відкритого коду (Linux) та детермінованих операційних систем реального часу (RTOS) та широко використовують перевірене проміжне програмне забезпечення.

Чому автомобільне вбудоване програмне забезпечення відрізняється?

У автомобільній електроніці складні взаємодії в режимі реального часу відбуваються між кількома вбудованими системами, кожна з яких функціонує управління, такими як гальмування, рульове управління, підвіска, силовий агрегат тощо. Фізичний корпус, що містить кожну вбудовану систему, називається електронним блоком управління (ЕБУ). Кожен ЕБУ та його вбудоване програмне забезпечення є частиною складної електричної архітектури, відомої як розподілена система.

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

Поширені приклади функцій автомобільного програмного забезпечення на основі додатків включають:

  • Функції ADAS (Advanced Driver Assist Systems), такі як адаптивний круїз-контроль, автоматичне екстрене гальмування, допомога при утриманні смуги руху, помічник руху, попередження про виїзд на смугу руху
  • Управління акумулятором
  • Компенсація крутного моменту
  • Контроль швидкості вприскування палива

Стек програмного забезпечення ECU

Електронний блок управління або ЕБУ складається з основного обчислювального блоку з апаратним забезпеченням на рівні чіпа та стека вбудованого програмного забезпечення. Однак серед виробників автомобілів зростає тенденція розробляти ECU зі складними інтегральними схемами, які містять кілька обчислювальних ядер на одному чіпі - те, що називається системою на чіпі (SoC). Ці SoC можуть розміщувати безліч абстракцій ЕБУ для консолідації обладнання. Програмний стек для ЕБУ зазвичай включає цілий ряд рішень, від прошивки низького рівня до вбудованих програмних додатків високого рівня.

ЕБУ стек

Опис

Вбудований програмний додаток

Алгоритми управління, обробка, послуги

Фреймворк застосування

Структури безпеки та безпеки

Операційне середовище

AUTOSAR класичний, AUTOSAR адаптивний, канали входів/виводу

Вбудована віртуалізація

ОС в реальному часі, абстракції ECU

прошивка

Завантажувачі, безпечне зберігання, безпечне потокове

Апаратне забезпечення

Пристрої на основі кремнію, мікроконтролери, одно- або багатошарові плати

Вбудовані ресурси пов'язані з програмним забезпеченням

Дізнатися більше

Вбудоване програмне забезпечення та мережевий дизайн

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