Embedded Systems

Die Schnittstelle zwischen der digitalen und der physischen Welt

Embedded Systems

Die Embedded Welt ist eine Welt der Details. Genauigkeit und Echtzeit spielen in ihr eine sehr große Rolle. Sensoren und Aktoren bilden ihre Verbindung zur physischen Welt. Mikrocontroller, Mikroprozessoren und FPGAs bilden die Herzen der Embedded Systems. Der Entwurf und die Programmierung dieser Systeme sind unsere Leidenschaft.

Connectivity

Wir vernetzen Ihre GerΓ€te

Wenn die Aufgaben in einem System nicht mehr von nur einem GerΓ€t erledigt werden kΓΆnnen, kommen verteilte Systeme ins Spiel. Diese mΓΌssen ΓΌber geeignete Bussysteme oder KommunikationskanΓ€le verbunden werden. Ob drahtlose oder drahtgebundene Kommunikation, wir unterstΓΌtzen Sie bei der Integration von WLAN, Bluetooth, LoRaWAN, Ethernet und diversen Feldbussen in Ihren GerΓ€ten. Dabei kommen z.B. auch Protokolle wie MQTT fΓΌr die Machine-to-Machine-Kommunikation (M2M) zum Einsatz.

Mikrocontroller

Unsere Expert*innen unterstΓΌtzen Sie ΓΌber den gesamten Software Development Life Cycle Ihrer controllerbasierten GerΓ€te. Dabei verwenden wir State of the Art-Entwicklungstools und -methoden. Die QualitΓ€t der Software liegt uns dabei besonders am Herzen. Diese stellen wir durch entwicklungsbegleitende, automatisierte Tests sicher. Wir helfen Ihnen bei der Auswahl Ihrer Hardware, des Betriebssystems oder entwickeln fΓΌr Sie die gesamte Firmware.

System-on-Chip (SoC) und Field Programmable Gate Array (FPGA) Entwicklung und Beratung

Bei einem System-on-Chip (SoC) werden verschiedene FunktionsblΓΆcke wie Sensoren, Prozessoren, Mikrocontroller, FPGAs und Schnittstellen auf einem integrierten Chip vereint, womit sich platzsparend und energieeffizient Anwendungen realisieren lassen. Aufgrund der Vielzahl auf dem Markt verfΓΌgbarer SoCs muss zu Projektbeginn fΓΌr eine Chipauswahl eine sinnvolle Zuordnung der zu realisierenden FunktionalitΓ€t auf Systemkomponenten erfolgen. Dabei muss besonderes Augenmerk auf das Zusammenspiel der Recheneinheiten untereinander und mit den Schnittstellen gelegt werden, damit die geforderte Verarbeitungsgeschwindigkeit erreicht wird.

Weiterhin muss fΓΌr jeden Prozessor des SoCs ein passendes Betriebssystem, Boot- und UpdatefunktionalitΓ€t sowie Interkommunikationsschnittstellen gewΓ€hlt werden. Komplexe Systemkomponenten wie FPGA, Mikrocontroller, DSPs, usw. erfordern unterschiedliche Entwicklungsmethoden und Toolchains. Eine automatisierte Entwicklungspipeline und Tests stellen ein reproduzierbares Ergebnis sicher. Security muss ebenfalls bereits in der Systemarchitekturphase, sowie auch ΓΌber den gesamten Entwicklungsprozess betrachtet werden.

Wir von Ingenics Digital unterstΓΌtzen Sie ganzheitlich von der Auswahl der Komponenten, ΓΌber die Implementierung bis hin zur Integration und Test Ihrer Produkte.

Dabei greifen wir auf langjΓ€hrige Erfahrungen mit den gΓ€ngigen Chip-Herstellern, Tools und Betriebssystemen zurΓΌck. Ingenics Digital ist von AMD zertifiziert als β€žEmbedded Partnerβ€œ. Außerdem schulen und re-/zertifizieren wir unsere Mitarbeiter*innen jΓ€hrlich im β€žAMD Embedded Partner Programβ€œ sowie weiteren am Markt gΓ€ngigen Chip-Architekturen, um immer auf dem neuesten Stand zu sein. So kΓΆnnen wir Sie jederzeit mit geschulten Expert*innen kompetent beraten.

Wir unterstΓΌtzen unter anderem folgende Technologien und Hersteller:

  • RSoC-/FPGA-Hersteller: Altera, AMD, Lattice, Microchip, Efinix
  • R Mikrocontroller: ARM Cortex, RISC-V
  • RRTOS: FreeRTOS, Zephyr-OS, Embedded Linux/Yocto/PetaLinux
  • R Interprozessorkommunikation: D-Bus, OpenMP, OpenAMP
  • RLow-Speed-Interfaces: SPI, I2C, UART, CAN
  • RHigh-Speed-Interfaces: Gigabit-Ethernet, PCIe, USB
  • RWireless: Bluetooth LE, WLAN, RFID, LoRaWAN

Die Werkzeugkiste der Embedded Systems

Wir sind Ihre Schnittstelle zwischen der digitalen und der physischen Welt.

Automatisiertes Bauen

Wir richten automatisierte Build-Prozesse ein, die zuverlΓ€ssig und reproduzierbar Software aus dem Quellcode erzeugen. So sparen Sie Zeit und minimieren manuelle Fehler.

Automatisierte Unit-Tests

Wir entwickeln Unit-Tests, die automatisch ablaufen und die Korrektheit einzelner Softwarekomponenten sicherstellen. Das verbessert langfristig die CodequalitΓ€t.

Automatisiertes Deployment

Wir setzen automatisierte Deployments auf, damit neue Firmware-Versionen schnell, sicher und konsistent verteilt werden kΓΆnnen.

Hardware-Auswahl und Prototyping

Wir unterstΓΌtzen Sie bei der Auswahl geeigneter Hardware und erstellen frΓΌhe Prototypen fΓΌr Machbarkeitsstudien oder erste Tests.

Echtzeit-Betriebssysteme

Wir integrieren und konfigurieren Echtzeitbetriebssysteme (RTOS) fΓΌr zeitkritische Anwendungen mit garantiert deterministischem Verhalten.

Softwarearchitektur

Wir entwerfen skalierbare und wartbare Softwarearchitekturen, die zu Ihrer Hardware und zu Ihren Anforderungen passen.

Design und Implementierung von Firmware

Wir entwickeln maßgeschneiderte Firmware – vom Konzept bis zur fertigen LΓΆsung – effizient und robust.

Automatisierte Systemtests

Wir implementieren automatisierte Tests auf Systemebene, um FunktionalitΓ€t, StabilitΓ€t und Integration zuverlΓ€ssig zu prΓΌfen.

DurchfΓΌhrung von Reviews

Wir führen strukturierte Code- und Architekturreviews durch, um Schwachstellen frühzeitig zu erkennen und Verbesserungen anzustoßen.

Statische Codeanalyse

Wir setzen Tools zur statischen Analyse ein, um CodequalitΓ€t, Wartbarkeit und Sicherheitsaspekte automatisiert zu prΓΌfen.

Refactoring von Bestandscode

Wir ΓΌberarbeiten und modernisieren bestehenden Code, um die Lesbarkeit, Wartbarkeit und Performance zu verbessern – ohne das Verhalten zu verΓ€ndern.

Bootloader

Wir entwickeln und integrieren robuste Bootloader fΓΌr sichere und flexible Firmwarestarts sowie UpdatemΓΆglichkeiten.

Firmware Over-the-Air Update

Wir ermΓΆglichen sichere Firmware-Updates ΓΌber Funk, damit Ihre GerΓ€te auch im Feld auf dem aktuellen Stand bleiben.

Debugging

Wir unterstΓΌtzen bei der systematischen Fehlersuche auf allen Ebenen – vom Low-Level-Hardwarezugriff bis zum komplexen Timing- oder Kommunikationsproblem. Dabei setzen wir sowohl klassische Debug-Tools als auch spezialisierte Analysewerkzeuge ein.

Weitere Themen

Industry Applications

Business Applications

Cloud Applications

Artificial Intelligence

Embedded Linux

Embedded & Application Security

Software Test & Quality