Die “All-in-One”-Lösung

Was ist ein System-on-a-Chip (SoC)?

| Autor / Redakteur: Otto Geißler / Ulrike Ostler

SoC werden in der Regel nicht völlig neu entwickelt und basieren daher auf vorhandenen Komponenten.
SoC werden in der Regel nicht völlig neu entwickelt und basieren daher auf vorhandenen Komponenten. (Bild: © djama - stock.adob.com)

Unter System-on-a-Chip (SoC) versteht man die Unterbringung von einem großen Teil oder meist sogar allen Funktionen eines Systems auf einem Chip. Solche Chips werden zum Beispiel in Handys, Bluray-Player und überall dort eingesetzt, wo auf kleinstem Raum eine sehr hohe Leistung gefordert ist.

System-on-a-Chip (SoC) werden in der Regel aus vorhandenen Komponenten zusammengefügt und selten komplett neu entwickelt. Ideale Komponenten sind zum Beispiel Prozessor und Grafikchips.

Da SoC-Chips in einem Baukastenprinzip zusammengesetzt werden, sind dem Konzept eigentlich keine Grenzen gesetzt. Ein System-on-a-Chip kann zum Beispiel folgende Komponenten integrieren: Zentraleinheiten (CPU), Prozessoren, Controller, Random Access Memories (RAM) und Read Only Memories (ROM) und Power-Management. Mit der Zentraleinheit (CPU) ist der Hauptprozessor gemeint.

Dieser umfasst einen oder mehrere Kerne und steuert alle wichtigen Funktionen. Darüber hinaus gibt es auch Mehrprozessorsysteme. Zur Entlastung der CPU, enthalten viele System-on-a-Chips zusätzliche Prozessoren, auf denen einzelne Befehle bzw. Rechenvorgänge ausgelagert werden. Der Grafikprozessor (GPU) ermöglicht es, komplexe 3D-Spiele auf dem Tablet oder Smartphone darzustellen. Wie bei den Zentraleinheiten gibt es auch hier unterschiedliche Architekturen.

Kompakte Endgeräte wie Smartphones und Tablets benötigen ebenso wie Computer ein Speichersystem, um die einzelnen Programme (Programmspeicher) auszuführen oder um Dateien (Datenspeicher) abzulegen und zu bearbeiten. Bestimmte SoC wie zum Beispiel der Snapdragon S4 von Qualcomm weisen ein Modem auf. Neben einem eingebauten LTE-Modem sind auch Komponenten für WiFi oder Bluetooth möglich.

System-on-a-Chip im Einsatz

Die kleinen System-on-a-Chips werden vor allem im Bereich der mobilen Gadgets, in Datenerfassungsgeräten und in der Steuerungs- und Automatisierungstechnik (Industrieautomation, Waschmaschinen, Automobilelektronik etc.) eingesetzt. In der Regel muss eine große Anzahl von Schnittstellen (Sensoren, Aktoren, Netzwerke, Tasten, Anzeigen etc.) bedient werden.

Die Integration der Funktionen auf einen Chip hat noch einen weiteren Vorteil: Es erhöht die Ausfallsicherheit beziehungsweise funktionale Sicherheit. Dies ist insbesondere der Fall, wenn zahlreiche Maßnahmen zur Fehleraufdeckung eingebaut werden, die mit so genannten diskreten Bauteilen nicht marktfähig wären. Zum Beispiel werden medizintechnische Geräte nicht unbedingt immer in großen Stückzahlen produziert. Dafür kommen dann eher keine speziell für diesen Zweck angefertigte SoC zum Einsatz, sondern einige der integrierten Komponenten bleiben dann ungenutzt.

Entwicklung der System-on-a-Chips

Da nun die SoC häufig nicht völlig neu entwickelt werden, basieren die Entwürfe teilweise auf vorhandenen Komponenten. Diese nennt man auch IP-Kerne. Dabei handelt es sich zum Beispiel um Makros für vollständige CPU-Kerne oder Koprozessoren für Hardwarebeschleuniger bei Verschlüsselungs- oder Grafikberechnungen. Viele Standardkomponenten sind bei den Chip-Herstellern für EDA-Werkzeuge proprietär und kostenlos enthalten.

Meist werden IP-Kerne über Parameter dem Verwendungszweck angepasst. Zum Beispiel als Pipelinelänge, Cachegröße oder Busbitbreite. Eine andere Variante wäre der Einsatz „freier Hardware“. So entstehen auch hierfür immer mehr Open-Source-Projekte, die sich oft noch im Stadium der Entwicklung befinden. Für spezielle Wünsche muss der Anwender es selbst entwickeln oder von einem Dienstleister entwickeln lassen. Die Trennung der Umsetzung in Soft- oder Hardware ist von der Anwendung abhängig und sehr fließend.

Abgrenzung zu System-in-Chip

Der Unterschied zwischen einem System-on-Chip (SoC) und einem System-in-Chip liegt darin, dass der SoC ein einzelner Chip ist, der alle Funktionen in sich versammelt. Der System-in-Chip besteht im Grunde aus einzelnen Chips, die quasi in einem Paket integriert sind.

SoC-Lösungen ermöglichen vergleichsweise völlig neue Anwendungsbereiche. Die Entwicklung eines kompletten elektronischen Systems in einem Chip ist jedoch relativ zeitaufwendig und teuer. Eine Weiterentwicklung des SoC zu einer Netzwerk-basierten Bus-Architektur nennt sich Network-on-Chip (NoC).

System-on-a-programmable-Chip

Die System-on-Chip (SoC) werden immer häufiger auf programmierbaren Chips realisiert. Diese nennen sich System-on-a-programmable-Chip und entsprechen so genannten FPGAs. Für solche Chips setzen die Hersteller dann als Prozessor so genannte HardCores oder SoftCores ein. HardCores sind als Makro in Silizium vorhandene CPU-Kerne und SoftCores bestehen aus Quellcode synthetisierbaren CPU-Kernen.

Zu den HardCores zählen zum Beispiel PowerPC- oder ARM-Kerne und zu den SoftCores gehören meist herstellerspezifische Prozessoren wie zum Beispiel MicroBlaze von Xilinx oder den NIOS II von Altera. Des Weiteren gibt es auch plattformunabhängige synthetisierbare Kerne von ARM beziehungsweise Lattice im Angebot. Davon sind Lösungen wie die PSoCs von Cypress oder anderen Firmen zu unterscheiden, bei denen nur klassische Mikrocontroller programmiert werden können.

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45179303 / Definitionen)