Skip to main content
Deze pagina wordt weergegeven met behulp van automatische vertaling. In plaats daarvan in het Engels bekijken?

Geïntegreerde software

Geïntegreerde software is een gespecialiseerde toepassing of firmware die draait op een verwerkingscluster dat is ingebed in een SoC of IC. Bijna elk elektronisch product kan een of meerdere ingebouwde processors bevatten, zoals gebruikelijk in auto's, factorvloerautomatisering, vliegtuigelektronica, medische apparatuur en meer.

Wat zijn de verschillende soorten geïntegreerde software?

Geïntegreerde softwaretoepassingen zijn gespecialiseerde programmering binnen niet-PC-apparaten — als onderdeel van een microchip of als onderdeel van een andere toepassing die bovenop de chip zit — om specifieke functies van het apparaat te bedienen. In tegenstelling tot pc-toepassingen, die op verschillende computersystemen kunnen worden geïnstalleerd en aangepast om verschillende functionaliteitsniveaus te bieden, heeft geïntegreerde software vaste hardwarevereisten en -mogelijkheden. Het is exclusief gemaakt voor het specifieke apparaat waarop het draait, waarbij de verwerkings- en geheugenbeperkingen rechtstreeks verband houden met de specificaties. In het kader van deze discussie omvat geïntegreerde software toepassingen, firmware, middleware en besturingssystemen die worden uitgevoerd op een enkele microprocessor of een cluster van microprocessors die „ingebed” zijn in aanvullende logica.

Gerelateerde producten: 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.

Kenmerken en kenmerken van ingebedde systemen

Hoewel er veel soorten geïntegreerde systemen zijn, hebben ze allemaal dezelfde gunstige eigenschappen en ontwerpkenmerken.

Alle geïntegreerde systemen zijn taakspecifiek

Ze voeren gedurende hun hele gebruiksduur dezelfde voorgeprogrammeerde functie uit en kunnen niet worden gewijzigd.

Alle geïntegreerde systemen zijn zeer efficiënt

De bronvereisten van geïntegreerde software mogen nooit hoger zijn dan de capaciteit van de hardware waarop deze is geïnstalleerd, en de specificaties van de hardware mogen nooit hoger zijn dan de absolute minimumvereisten van de geïntegreerde software.

Ontworpen voor stabiliteit

Alle geïntegreerde systemen zijn ontworpen om uiterst betrouwbaar en stabiel te zijn. Ze moeten hun taak uitvoeren met consistente responstijden en functioneren gedurende de hele levensduur van het apparaat waarin ze zijn ondergebracht.

Welke soorten geïntegreerde software biedt Siemens aan?

Siemens biedt beide geïntegreerde software voor de automobielsector en geïntegreerde software-engineering oplossingen. Siemens is gestopt met het aanbieden van stand-alone geïntegreerde software voor SoC's nu in november 2023 de producten Nucleus, Nucleus Hypervisor, Nucleus ReadyStart, Sokol Flex Linux, Sokol Omni Linux en Sourcery CodeBench (inclusief bijbehorende add-ons) zijn stopgezet. Bestaande ondersteuningscontracten voor deze producten worden nog steeds gehonoreerd. Neem contact op met Siemens Ondersteuningscentrum voor meer informatie.

Wat zijn de verschillende soorten geïntegreerde software en wat zijn de doeleinden ervan?

  • Besturingssysteem — Een besturingssysteem (OS), in de meest algemene zin, is software waarmee een gebruiker andere toepassingen op een computerapparaat kan uitvoeren. Het besturingssysteem beheert de hardwarebronnen van een processor, waaronder invoerapparaten zoals een toetsenbord en muis, uitvoerapparaten zoals beeldschermen of printers, netwerkverbindingen en opslagapparaten zoals harde schijven en geheugen. Het besturingssysteem levert ook diensten om de efficiënte uitvoering en het beheer van, en de toewijzing van geheugen voor, softwaretoepassingen te vergemakkelijken.
  • Firmware — Firmware is een soort software die rechtstreeks voor een stuk hardware is geschreven. Het werkt zonder gebruik te maken van API's, het besturingssysteem of apparaatdrivers. Het biedt de nodige instructies en begeleiding om met andere apparaten te communiceren of basistaken en -functies uit te voeren zoals bedoeld.
  • Middleware — Middleware is een softwarelaag die zich tussen toepassingen en besturingssystemen bevindt. Middleware wordt vaak gebruikt in gedistribueerde systemen waar het de ontwikkeling van software vereenvoudigt door het volgende te bieden:

    • De fijne kneepjes van gedistribueerde toepassingen verbergen
    • De heterogeniteit van hardware, besturingssystemen en protocollen maskeren
    • Biedt uniforme interfaces van hoog niveau die worden gebruikt om interoperabele, herbruikbare en draagbare toepassingen te maken.
    • Het leveren van een reeks algemene diensten die dubbel werk tot een minimum beperken en de samenwerking tussen toepassingen verbeteren
  • Toepassing — De eindgebruiker ontwikkelt de uiteindelijke softwaretoepassing die op het besturingssysteem draait, de middleware en firmware gebruikt of ermee interageert, en die de primaire focus is van de doelfunctie van de embedded systemen. Elke eindtoepassing is uniek, terwijl besturingssystemen en firmware van apparaat tot apparaat identiek kunnen zijn.

Geïntegreerde software versus geïntegreerde systemen

De hardwarecomponenten in een apparaat waarop geïntegreerde software draait, worden een „ingebed systeem” genoemd. Enkele voorbeelden van hardwarecomponenten die in geïntegreerde systemen worden gebruikt, zijn voedingscircuits, centrale verwerkingseenheden, flashgeheugenapparaten, timers en seriële communicatiepoorten. Tijdens de vroege ontwerpfasen van een apparaat wordt bepaald welke hardware het geïntegreerde systeem zal vormen — en de configuratie ervan binnen het apparaat —. Vervolgens wordt geïntegreerde software helemaal opnieuw ontwikkeld om uitsluitend op die hardware te draaien in die precieze configuratie. Dit maakt van het ontwerpen van geïntegreerde software een gespecialiseerd vakgebied waarvoor diepgaande kennis van hardwaremogelijkheden en computerprogrammering vereist is.

Voorbeelden van geïntegreerde, op software gebaseerde functies

Op bijna elk apparaat met printplaten en computerchips zijn deze componenten ondergebracht in een geïntegreerd softwaresysteem. Als gevolg hiervan zijn geïntegreerde softwaresystemen alomtegenwoordig in het dagelijks leven en worden ze gebruikt in de consumenten-, industriële, automobiel-, lucht- en ruimtevaart-, medische, commerciële, telecom- en militaire technologie.

Veelvoorkomende voorbeelden van geïntegreerde, op software gebaseerde functies zijn onder andere:

  • Beeldverwerkingssystemen die worden aangetroffen in apparatuur voor medische beeldvorming
  • Fly-by-wire controlesystemen gevonden in vliegtuigen
  • Bewegingsdetectiesystemen in beveiligingscamera's
  • Verkeersregelsystemen gevonden in verkeerslichten
  • Timing- en automatiseringssystemen die te vinden zijn in slimme apparaten voor thuisgebruik

Wat zijn de verschillende soorten ingebedde systemen?

Op basis van prestatie- en functionele vereisten zijn er vijf hoofdklassen van ingebedde systemen:

  • Geïntegreerde systemen in realtime voeren taken uit op een deterministische en herhaalbare manier, wat wordt beïnvloed door de onderliggende architectuur en planning van het besturingssysteem, maar ook door de prestaties van threads, vertakking en onderbrekende latentie. Geïntegreerde systemen voor algemeen gebruik bevatten geen realtime vereisten en kunnen onderbrekingen of vertakkingen beheren zonder afhankelijk te zijn van een voltooiingstijd. Grafische beeldschermen en toetsenbord- en muisbeheer zijn goede voorbeelden van algemene systemen.
  • Op zichzelf staande geïntegreerde systemen kunnen taken uitvoeren zonder een hostsysteem of externe verwerkingsbronnen. Ze kunnen gegevens van aangesloten apparaten uitvoeren of ontvangen, maar zijn daar niet afhankelijk van om hun taak te voltooien.
  • Op zichzelf staande geïntegreerde systemen kunnen hun taak uitvoeren zonder een hostsysteem of externe verwerkingsbronnen. Ze kunnen gegevens van aangesloten apparaten uitvoeren of ontvangen, maar zijn daar niet afhankelijk van om hun taak te voltooien.
  • Geïntegreerde systemen in een netwerk zijn afhankelijk van een verbonden netwerk om toegewezen taken uit te voeren.
  • Op basis van de complexiteit van de hardware-architectuur van het systeem zijn er drie hoofdtypen ingebedde systemen: geïntegreerde netwerksystemen zijn afhankelijk van een verbonden netwerk om toegewezen taken uit te voeren.

Hoe de eindmarkten van invloed zijn op ingebedde systemen

De vereisten voor geïntegreerde systemen en componenten zullen verschillen, afhankelijk van de eisen van de doelmarkt. Enkele voorbeelden zijn:

  • Consument — In toepassingen zoals consumptiegoederen zoals wasmachines, draagbare apparaten en mobiele telefoons wordt de nadruk gelegd op de kleinere omvang van de
  • System-on-chip, laag stroomverbruik of batterijvoeding en grafische interfaces. In deze toepassingen worden configureerbare besturingssystemen en de mogelijkheid om niet-operationele „domeinen” van het ontwerp uit te schakelen gewaardeerd.
  • Netwerken — toepassingen die connectiviteit, communicatie, exploitatie en beheer van een bedrijfsnetwerk mogelijk maken. Het biedt het communicatiepad en de diensten tussen gebruikers, processen, toepassingen, diensten en externe netwerken/het internet. Geïntegreerde netwerktoepassingen zijn gericht op reactiesnelheid, pakketverwerking en hardwarepaden voor randapparatuur.
  • Industrieel — Voor toepassingen zoals fabrieksvloerbeheer, motoren en windmolens ligt de nadruk vooral op veilige cloudconnectiviteit en deterministische „realtime” werking, waarbij de nadruk sterk ligt op middleware.
  • De medische sector, de automobielsector en de lucht- en ruimtevaart — Deze sectoren hebben kritieke systemen met gemengde veiligheid nodig, waarbij delen van het ontwerp van elkaar geïsoleerd zijn om ervoor te zorgen dat alleen noodzakelijke gegevens het systeem binnenkomen of verlaten (beveiliging), terwijl de eindgebruiker geen schade wordt berokkend (veiligheid). Voorbeelden zijn autonome rijsystemen in auto's en medische apparatuur. Deze geïntegreerde systemen kunnen een combinatie van open source (Linux) en deterministische realtime besturingssystemen (RTOS) bevatten en veel gebruik maken van beproefde middleware.

Waarom is geïntegreerde software voor auto's anders?

In de auto-elektronica vinden complexe realtime interacties plaats tussen meerdere geïntegreerde systemen die elk bedienen, zoals remmen, sturen, ophanging, aandrijflijn, enz. De fysieke behuizing waarin elk ingebouwd systeem zit, wordt een elektronische besturingseenheid (ECU) genoemd. Elke ECU en de bijbehorende software maken deel uit van een complexe elektrische architectuur die bekend staat als een gedistribueerd systeem.

Door met elkaar te communiceren, kunnen de ECU's die deel uitmaken van het gedistribueerde systeem van een voertuig verschillende functies uitvoeren, zoals automatische noodrem, adaptieve cruisecontrol, stabiliteitscontrole, adaptieve koplampen en nog veel meer. Voor een enkele functie is mogelijk interactie nodig tussen 20 of meer geïntegreerde softwaretoepassingen, verspreid over meerdere ECU's die via meerdere netwerkprotocollen met elkaar zijn verbonden. Complexe besturingsalgoritmen die in combinatie met de geïntegreerde software worden gebruikt, zorgen voor de juiste timing van functies, benodigde in- en uitgangen en gegevensbeveiliging.

Veelvoorkomende voorbeelden van functies op basis van softwaretoepassingen voor de automobielindustrie zijn onder meer:

  • ADAS-functies (Advanced Driver Assist Systems), zoals adaptieve cruisecontrol, automatische noodrem, rijstrookassistent, verkeersassistent, waarschuwingen voor het verlaten van de rijstrook
  • Batterijbeheer
  • Compensatie van het koppel
  • Regeling van de brandstofinjectiesnelheid

ECU-softwarestack

De elektronische besturingseenheid of ECU bestaat uit een hoofdcomputer met hardware op chipniveau en een stapel geïntegreerde software. Er is echter een toenemende trend onder autofabrikanten om ECU's te ontwerpen met complexe geïntegreerde schakelingen die meerdere rekenkernen op één chip bevatten — een zogenaamd System on a Chip (SoC). Deze SoC's kunnen een groot aantal ECU-abstracties bevatten om hardware te consolideren. De softwarestack voor een ECU omvat doorgaans een reeks oplossingen, van firmware op laag niveau tot geïntegreerde softwaretoepassingen op hoog niveau.

ECU-stapel

Beschrijving

Geïntegreerde softwaretoepassing

Besturingsalgoritmen, verwerking, diensten

Toepassingskader

Security- en veiligheidskaders

Besturingsomgeving

AUTOSAR classic, AUTOSAR Adaptive, Ingangs-/uitvoerkanalen

Geïntegreerde virtualisaties

Besturingssysteem in realtime, ECU-abstracties

Firmware

Laarzenladers, veilige opslag, veilig inrijgen

Hardware

Apparaten op basis van silicium, microcontrollers, kaarten met één of meerdere lagen

Hulpbronnen met betrekking tot geïntegreerde software

Meer informatie

Geïntegreerde software en netwerkontwerp

Ontdek hoe u snel en efficiënt innovatieve, veilige software kunt ontwikkelen om essentiële productfuncties te leveren.