Startseite Lösungen Einführung in MIPI-CSI-Spezifikationen und -Protokolle

Einführung in MIPI-CSI-Spezifikationen und -Protokolle

Sep 24, 2026

Einführung

Dieser Artikel gibt einen Überblick über die MIPI-CSI-2-Kameraschnittstelle und behandelt die Systemarchitektur, D-PHY-Übertragung, Paketmechanismen, Bildformate und Bandbreitenberechnung sowie die Integration und Fehlersuche innerhalb des Linux-media-controller-Frameworks. Der Inhalt richtet sich an die Hardware- und Softwareintegration von ARM-basierten SoCs, Bildsensoren, ISPs und V4L2-Videopipelines.

MIPI-CSI-2-Kameraschnittstelle zwischen Bildsensor und Prozessor

MIPI-CSI-Systemarchitektur

MIPI CSI-2 (Camera Serial Interface 2) ist ein serielles Hochgeschwindigkeitsprotokoll zur Übertragung von Bilddaten von einem Bildsensor an einen SoC, ISP oder FPGA. CSI-2 definiert Paketformate, Data Types, Virtual Channels und Fehlerschutzmechanismen, während D-PHY oder C-PHY die physikalische Signalübertragung übernehmen.

MIPI-CSI-2-Systemarchitektur mit Steuer- und Bilddatenpfaden

Ebene Hauptaufgabe Typische Linux- / SoC-Implementierung
Steuerungsebene Modus-, Belichtungs-, Verstärkungs- und Stream-Steuerung Sensortreiber und I²C/I³C
CSI-2-Protokollebene Paketierung, VC, DT, ECC und CRC CSI-2-TX/RX-Controller
PHY-Ebene LP/HS-Zustände, Taktung und differenzielle Signalübertragung D-PHY/C-PHY und PHY-Treiber
Bildverarbeitungspipeline Dekodierung, Verarbeitung, DMA und Erfassung ISP, DMA und V4L2-Knoten
 

D-PHY-Übertragung und Timing

Im Ruhezustand verbleibt eine D-PHY Data Lane im LP Stop State und wechselt über die LP-Zustandssequenz in den HS-Modus, bevor CSI-2-Pakete übertragen werden. Der Zugriff auf Sensorregister und die Stream-Steuerung erfolgen in der Regel über einen separaten I²C/I³C-Bus und sind von den LP-Zuständen der D-PHY Data Lane zu unterscheiden.

Übergang der D-PHY Data Lane vom LP Stop State zur HS-Übertragung

Zustand / Phase Funktion Hinweise zur Integration
LP-11 Stop State Ruhezustand und Basis für den LP-Betrieb Lane-Zustand und Unterstützung durch den TX/RX-PHY prüfen
LP-01, LP-00 Teil der Sequenz für den Eintritt in bzw. Austritt aus dem HS-Modus Diese Zustände nicht als I²C-Steuerdaten interpretieren
HS-Prepare, HS-Zero Vorbereitung und Stabilisierung vor der Hochgeschwindigkeitsübertragung Beeinflusst die RX-Erkennung und die HS-Settle-Abstimmung
SoT Kennzeichnet den Beginn der Hochgeschwindigkeits-Paketübertragung SoT-Fehler können auf Timing-, Lane- oder Konfigurationsprobleme hinweisen
HS data transmission Überträgt den CSI-2-Paketdatenstrom Link Frequency, Anzahl der Lanes und Signalintegrität prüfen
 
  • Im clocked mode unterstützt die Clock Lane die Abtastung auf der Empfängerseite während der HS-Übertragung. Der Betrieb mit continuous oder non-continuous clock sollte anhand des Bildsensors, des SoC-PHY und der Treiberkonfiguration überprüft werden.
  • HS-Settle sollte anhand der tatsächlichen Link Frequency, der Dokumentation des SoC-Empfängers und der Fehlerzähler abgestimmt werden; ein höherer Wert ist nicht zwangsläufig besser.
 

CSI-2-Pakete und Synchronisation

CSI-2 verwendet Short Packets zur Übertragung von Protokollereignissen oder Synchronisationsinformationen, während Long Packets RAW-, YUV-, RGB- oder Embedded-Daten übertragen. Ein Long Packet besteht aus einem 4-Byte-Header, der Payload und einem 2-Byte-CRC-Footer.

CSI-2-Frame und Abfolge der Long Packets mit Bilddaten

Feld Funktion Zu prüfende Punkte
Virtual Channel (VC) Unterscheidet logische Datenströme Der Virtual Channel des Sensors und der RX Virtual Channel müssen kompatibel sein
Data Type (DT) Kennzeichnet das Pixelformat oder den Pakettyp Muss mit dem Ausgabemodus des Sensors und den RX-Fähigkeiten übereinstimmen
Word Count (WC) Gibt die Länge der Long-Packet-Payload in Byte an Sollte mit der Zeilenbreite und dem Pixel Packing übereinstimmen
ECC Schützt den Paket-Header Synchronisation, Lane, Konfiguration und RX-Dekodierung prüfen
CRC Schützt die Long-Packet-Payload PHY, Datenrate, Lane Mapping und TX/RX-Implementierung prüfen
 

Frame Start (FS) und Frame End (FE) dienen der Synchronisation auf Frame-Ebene. Line Start (LS) und Line End (LE) ermöglichen optional eine Synchronisation auf Zeilenebene. Ob LS und LE tatsächlich übertragen werden, sollte anhand der Dokumentation des Bildsensors, der Traces des CSI-Empfängers oder der Treiberzähler überprüft werden.

Bildformate und Bandbreite

CSI-2 Data Types, V4L2 Media-Bus-Codes, V4L2-Capture-Speicherformate und die Format-Aushandlung des ISP müssen kompatible Bilddaten repräsentieren. Da sie jedoch unterschiedlichen Abstraktionsebenen angehören, müssen die Bezeichnungen und Positionen der jeweiligen Konfigurationen nicht eins zu eins übereinstimmen. Bei RAW-Daten sind sowohl die Bittiefe als auch die Bayer-Reihenfolge zu prüfen; bei YUV-Daten ist die Byte-Reihenfolge zu überprüfen.

Die minimale Nutzdatenmenge für aktive Pixel lässt sich wie folgt abschätzen:

Active-pixel payload = Width × Height × FPS × Bits per pixel

Diese Berechnung berücksichtigt lediglich die für aktive Pixeldaten erforderliche minimale Payload. Für den tatsächlichen CSI-2-Datendurchsatz und die D-PHY-Lane-Rate müssen zusätzlich Paket-Header, CRC, Synchronisationspakete, die Übertragungsstrategie während des Blankings, die Anzahl der Data Lanes, der Clock Mode, die verfügbaren Link-Frequency-Einstellungen des Sensors sowie die Einschränkungen des SoC-CSI-Empfängers berücksichtigt werden.

Per-lane rate ≳ Total CSI-2 throughput / Number of Data Lanes

Linux-Integration und Bring-up

Der Device Tree beschreibt in der Regel Graph-Endpoints, data-lanes, clock-lanes und remote-endpoint-Verbindungen. In den meisten media-controller-Architekturen werden Bildformate zur Laufzeit über die Pad-Formate der Sub-Devices, Media Links und Routing Negotiation ausgehandelt. Die tatsächlichen Bindings und unterstützten Formate hängen vom Kernel-Treiber des jeweiligen SoC ab.

# Entities, Pads und Links prüfen
media-ctl -p -d /dev/media0

# Beispiel: Pad-Format des vorgeschalteten Sensors konfigurieren
media-ctl -d /dev/media0 --set-v4l2 '"sensor 1-001a":0 [fmt:SRGGB10_1X10/1920x1080]'

# Beispiel: Link aktivieren
media-ctl -d /dev/media0 --links '"sensor 1-001a":0 -> "csi2rx":0 [1]'

# Speicherformat des Capture Nodes konfigurieren und Streaming starten
v4l2-ctl -d /dev/videoX \
  --set-fmt-video=width=1920,height=1080,pixelformat=RG10 \
  --stream-mmap=4 --stream-count=100

dmesg -w
 

Die in diesem Beispiel verwendeten Entity-Namen, Pad-Indizes, Media-Bus-Codes, FourCC-Werte und Video Nodes müssen an den tatsächlichen Media Graph angepasst werden und sind nicht plattformübergreifend fest vorgegeben.

CSI-2-Bring-up- und Debugging-Ablauf in der Linux-media-controller-Architektur

Kompatibilität und Fehleranalyse

Bereich Zu prüfende Punkte Typische Symptome
PHY Anzahl der Lanes, Mapping, Link Frequency, Clock Mode und HS-Settle SoT-Fehler, keine Daten oder sporadische Frame-Verluste
Protokoll VC, DT, Paketverhalten und ECC/CRC Header-Fehler, CRC-Fehler oder Probleme bei der Frame-Synchronisation
Format Bittiefe, Bayer-Reihenfolge, YUV-Reihenfolge und Packing Fehlerhafte Farben, grüne Frames oder beschädigte Bilder
Pipeline DT Graph, Media Links, Pad-Formate, ISP und DMA STREAMON-Fehler oder Buffer-Timeout
 
  • Wenn die I²C-Kommunikation funktioniert, aber keine Bilddaten empfangen werden, sind Power/Reset/MCLK, der Stream-on-Status des Sensors, data-lanes, Lane Mapping, Link Frequency, Media Graph und der CSI-RX-Status zu prüfen.
  • Wenn Frame-Aktivität erkannt wird, aber ECC/CRC-Fehler auftreten, sollten die RX-Fehlerzähler, das Lane Mapping, die Link Rate, HS-Settle, die Signalintegrität auf Board-Ebene und die TX/RX-Konfiguration geprüft werden.
  • Wenn Frames erfasst werden können, die Farben jedoch nicht korrekt sind, sollten RAW-Bittiefe, Bayer-Reihenfolge, Media-Bus-Code, Memory FourCC und ISP-Pipeline geprüft werden.
 

Häufig gestellte Fragen

1. Sind CSI-2 und D-PHY dasselbe?

Nein. CSI-2 ist ein paketbasiertes Protokoll für Bilddaten, während D-PHY eine häufig verwendete Übertragungsschnittstelle der physikalischen Schicht ist.

2. Warum werden keine Bilddaten empfangen, obwohl die I²C-Kommunikation funktioniert?

Eine funktionierende I²C-Kommunikation bestätigt lediglich den Steuerkanal. Im Bilddatenpfad können weiterhin Probleme mit MCLK, Lanes, PHY-Timing, Protokoll, Media Graph, ISP oder DMA auftreten.

3. Was ist der Unterschied zwischen ECC und CRC?

ECC schützt hauptsächlich den Packet Header und kann Einzelbitfehler korrigieren sowie Zweibitfehler erkennen. CRC überprüft die Integrität der Long-Packet-Payload. Bei dauerhaft auftretenden Fehlern sollten in der Regel sowohl die Protokollkonfiguration als auch die Signalintegrität auf der physikalischen Schicht überprüft werden.

4. Warum kann sich derselbe Bildsensor auf verschiedenen Boards unterschiedlich verhalten?

PCB-Impedanz, Leiterbahnlänge, FPC, Masse-Rückstrompfade und EMI-Bedingungen können die D-PHY-Signalintegrität und die Timing-Marge beeinflussen.

Referenzen

  • MIPI Alliance, "Camera Serial Interface 2 (MIPI CSI-2)", mipi.org/specifications/csi-2
  • MIPI Alliance, "MIPI D-PHY", mipi.org/specifications/d-phy
Haben Sie Fragen zu Displaylösungen für Ihr Unternehmen? Kontaktieren Sie uns!

Abonnieren

Erhalten Sie E-Mails mit den aktuellsten Neuigkeiten von Winstar

Kontaktieren Sie uns

Preis /Datenblatt/ Allgemeine Anfrage

Technischer Support

Kontaktieren Sie uns wegen technischer Informationen

go top
Kontakt
close

Wir schätzen Ihre Privatsphäre

Durch Klicken auf „Alle Cookies zulassen“ stimmen Sie der Speicherung von Cookies auf Ihrem Gerät zu, um die Navigation auf der Website zu verbessern, die Nutzung der Website zu analysieren und unsere Marketing- und Leistungsbemühungen zu unterstützen. Weitere Informationen zu diesem Thema finden Sie in unserer Richtlinie. Datenschutzrichtlinie

Wir schätzen Ihre Privatsphäre

Winstar und bestimmte Drittparteien verwenden Cookies auf www.winstar.com.tw. Die Einzelheiten zu den Arten von Cookies, ihrem Zweck und den beteiligten Drittparteien sind unten sowie in unserer Cookie-Richtlinie beschrieben. Klicken Sie auf „Alle zulassen“, um unserer Verwendung von Cookies zuzustimmen und die bestmögliche Erfahrung auf unseren Websites zu erzielen. Sie können auch Ihre Präferenzen festlegen oder Cookies ablehnen (mit Ausnahme der unbedingt erforderlichen Cookies).

Einwilligungspräferenzen verwalten

Immer aktiv
Notwendige Cookies

Diese Cookies sind unerlässlich, um Ihnen das Navigieren auf der Website zu ermöglichen und ihre Funktionen zu nutzen, wie z. B. das Festlegen Ihrer Datenschutzpräferenzen, das Einloggen oder das Ausfüllen von Formularen.

Analyse-Cookies

Diese Cookies, auch als „Statistik-Cookies“ bekannt, sammeln Informationen darüber, wie Sie eine Website nutzen, z. B. welche Seiten Sie besucht und auf welche Links Sie geklickt haben. Siehe Details.