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 предлага и двете автомобилен вграден софтуер и вградено софтуерно инженерство решения. Siemens прекрати предлагането на самостоятелен вграден софтуер за SoC с пенсионирането през ноември 2023 г. на продуктите Nucleus, Nucleus Hypervisor, Nucleus ReadyStart, Sokol Flex Linux, Sokol Omni Linux и Sourcery CodeBench (включително свързаните с тях добавки). Съществуващите договори за поддръжка на тези продукти все още се спазват, моля, свържете се със Siemens Център за поддръжка за повече информация.

Какви са различните видове вграден софтуер и техните цели?

  • Операционна система (операционна система) в най-общия си смисъл е софтуер, който позволява на потребителя да стартира други приложения на компютърно устройство. Операционната система управлява хардуерните ресурси на процесора, включително входни устройства като клавиатура и мишка, изходни устройства като дисплеи или принтери, мрежови връзки и устройства за съхранение като твърди дискове и памет. Операционната система също така предоставя услуги за улесняване на ефективното изпълнение и управление на софтуерни приложения и разпределяне на памет за софтуерни приложения.
  • Фърмуер — Фърмуерът е вид софтуер, който е написан директно за част от хардуера. Той работи без да преминава през APIs, операционната система или драйверите на устройствата - предоставя необходимите инструкции и насоки за комуникация с други устройства или изпълнение на основни задачи и функции, както е предвидено.
  • Middleware — Middleware е софтуерен слой, разположен между приложения и операционни системи. Междинният софтуер често се използва в разпределени системи, където опростява разработването на софтуер, като предоставя следното:

    • Скриване на тънкостите на разпределените приложения
    • Маскиране на хетерогенността на хардуера, операционните системи и протоколите
    • Осигуряване на единни и висококачествени интерфейси, използвани за създаване на оперативно съвместими, многократно използваеми и преносими приложения.
    • Предоставяне на набор от общи услуги, които свеждат до минимум дублирането на усилията и подобряват сътрудничеството между приложенията
  • Приложение — Крайният потребител разработва окончателното софтуерно приложение, което работи на операционната система, използва или взаимодейства с междинния софтуер и фърмуера и е основният фокус на целевата функция на вградените системи. Всяко крайно приложение е уникално, докато операционните системи и фърмуерът могат да бъдат идентични от устройство на устройство.

Вграден софтуер срещу вградени системи

Хардуерните компоненти в устройство, работещо с вграден софтуер, се наричат „вградена система“. Някои примери за хардуерни компоненти, използвани във вградените системи, са вериги за захранване, централни процесорни устройства, устройства с флаш памет, таймери и серийни комуникационни портове. По време на ранните фази на проектиране на устройството се решава хардуерът, който ще съставлява вградената система - и неговата конфигурация в устройството. След това вграденият софтуер се разработва от нулата, за да работи изключително на този хардуер в тази точна конфигурация. Това прави дизайна на вградения софтуер специализирана област, изискваща задълбочени познания за хардуерните възможности и компютърното програмиране.

Примери за вградени софтуерно базирани функции

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

Често срещани примери за вградени софтуерно базирани функции включват:

  • Системи за обработка на изображения, открити в медицинско оборудване за изображения
  • Системи за управление „fly-by-wire“, открити в самолети
  • Системи за откриване на движение в охранителни камери
  • Системи за контрол на движението, открити в светофарите
  • Системи за синхронизация и автоматизация, открити в интелигентните домашни устройства

Какви са различните видове вградени системи?

Когато се основават на производителността и функционалните изисквания, има пет основни класа вградени системи:

  • Вградените системи в реално време изпълняват задачите по детерминистичен и повтаряем начин, което се влияе от основната архитектура и график на операционните системи, както и от работата на нишките, разклоняването и прекъсването на латентността. Вградените системи с общо предназначение не съдържат изисквания в реално време и могат да управляват прекъсвания или разклоняване без зависимост от времето за завършване. Графичните дисплеи и управлението на клавиатурата и мишката са добри примери за общи системи.
  • Самостоятелните вградени системи могат да изпълняват задачи без хост система или външни ресурси за обработка. Те могат да извеждат или получават данни от свързани устройства, но не разчитат на тях, за да изпълнят задачата си.
  • Самостоятелните вградени системи могат да изпълняват задачата си без хост система или външни ресурси за обработка. Те могат да извеждат или получават данни от свързани устройства, но не разчитат на тях, за да изпълнят задачата си.
  • Мрежовите вградени системи зависят от свързана мрежа за изпълнение на зададени задачи.
  • Въз основа на сложността на хардуерната архитектура на системата, съществуват три основни типа вградени системи: Мрежовите вградени системи зависят от свързана мрежа за изпълнение на зададени задачи.

Как крайните пазари влияят на вградените системи

Вградените системни изисквания и компоненти ще се различават в зависимост от изискванията на целевия пазар. Някои примери включват:

  • Потребителски - В приложения като потребителски стоки като перални машини, носими устройства и мобилни телефони вградените системи подчертават намаления размер на
  • Система на чип, ниска консумация на енергия или работа на батерията и графични интерфейси. В тези приложения се оценяват конфигурируемите операционни системи и възможността за изключване на неработещи „домейни“ на дизайна.
  • Мрежи — Приложения, които позволяват свързаност, комуникация, операции и управление на корпоративна мрежа. Той осигурява комуникационния път и услугите между потребители, процеси, приложения, услуги и външни мрежи/интернет. Вградените мрежови приложения се фокусират върху скоростта на реакция, обработката на пакети и периферните хардуерни пътища.
  • Индустриален — За приложения като управление на фабричните етажи, двигатели и вятърни мелници, акцентът е насочен към осигуряване на облачна свързаност и детерминирана работа в реално време и може да се фокусира силно върху междинния софтуер.
  • Медицина, автомобилна и аерокосмическа промишленост — Тези отрасли се нуждаят от критични системи за смесена безопасност, където части от дизайна са изолирани една от друга, за да се гарантира, че само необходимите данни влизат или излизат от системата (сигурност), като същевременно не се гарантира вреда за крайния потребител (безопасност). Примери за това са автономните системи за шофиране в автомобили и медицински изделия. Тези вградени системи могат да включват комбинация от отворен код (Linux) и детерминистични операционни системи в реално време (RTOS) и силно използват доказан посреден софтуер.

Защо автомобилният вграден софтуер е различен?

В автомобилната електроника се случват сложни взаимодействия в реално време в множество вградени системи, които всяка от тях управлява като спиране, управление, окачване, задвижване и т.н. Физическият корпус, съдържащ всяка вградена система, се нарича електронен контролен блок (ECU). Всеки ECU и неговият вграден софтуер са част от сложна електрическа архитектура, известна като разпределена система.

Чрез комуникация помежду си, ECU, които съставляват разпределената система на автомобила, могат да изпълняват различни функции, като автоматично аварийно спиране, адаптивен круиз контрол, контрол на стабилността, адаптивни фарове и много други. Една функция може да се нуждае от взаимодействия между 20 или повече вградени софтуерни приложения, разпределени в множество ECU, свързани чрез множество мрежови протоколи. Комплексните алгоритми за управление, внедрени с вградения софтуер, осигуряват правилното време на функциите, необходимите входове и изходи и сигурност на данните.

Често срещани примери за функции, базирани на приложения за автомобилен софтуер, включват:

  • ADAS (Advanced Driver Assist Systems) функции като адаптивен круиз контрол, автоматично аварийно спиране, асистент за поддържане на лентата, подпомагане на трафика, предупреждения за напускане на лентата
  • Управление на батерията
  • Компенсация на въртя
  • Контрол на скоростта на инжектиране на гориво

ECU софтуерен стек

Електронният контролен блок или ECU се състои от основен изчислителен блок с хардуер на ниво чип и куп вграден софтуер. Въпреки това, има нарастваща тенденция сред автомобилните производители да проектират ECU със сложни интегрални схеми, които съдържат множество изчислителни ядра на един чип - това, което се нарича Система на чип (SoC). Тези SoC могат да хостват множество абстракции на ECU, за да консолидират хардуера. Софтуерният стек за ECU обикновено включва редица решения, от фърмуер на ниско ниво до вградени софтуерни приложения на високо ниво.

ECU стек

Описание

Вградено софтуерно приложение

Контролни алгоритми, обработка, услуги

Рамка за приложение

Рамки за сигурност и безопасност

Работна среда

AUTOSAR класически, Адаптивен AUTOSAR, Входни/изходни канали

Вградени виртуализации

Операционна система в реално време, ECU абстракции

фърмуер

Бутовъчни товарачи, безопасно съхранение, сигурно резбоване

Хардуер

Устройства на основата на силиций, микроконтролери, еднослойни или многопластови платки

Ресурси, свързани с вграден софтуер

Научете повече

Вграден софтуер и мрежов дизайн

Разберете как можете бързо и ефективно да разработвате иновативен, безопасен софтуер, който да предоставя жизненоважни функции на продукта.