Bildsensoren sind dafür berüchtigt, dass sie nicht standardisiert sind. Sie tendieren dazu, sich in ihren angewandten Schemata zu unterscheiden. Beispielsweise gibt es Unterschiede in der Art und Weise, wie sie sichtbares oder infrarotes Licht in elektrische Signale umwandeln – und zwar besonders in dem genutzten Codierverfahren, bei dem das Signal manchmal noch komprimiert wird, bevor es den Chip verlässt. Auch gibt es verschiedene Vorgehensweisen wie Register innerhalb des Sensors programmiert werden müssen, um Parameter wie Verstärkung, Belichtungszeit, Sensor-Modi (zum Beispiel linear, HDR) oder Sensorbild-Koordinaten und so weiter einzustellen. Außerdem ist zu beachten, wie sie spezielle Funktionen wie beispielsweise HDR/WDR (High/Wide Dynamic Range, hoher/breiter Dynamikbereich) implementieren – zum Beispiel über mehrere Sensoren im gleichen Gehäuse, mehrere Belichtungen desselben Einzelbilds. Unterschiede gibt es auch in den von den Sensor-Herstellern festgelegten Schnittstellen, über die jeweils die Signale aus dem Sensor heraus und weiter (Downstream) an die Verarbeitungslogik gelangen.

FPGAs fungieren dabei als kostengünstiger Mechanismus zur Anpassung an eine Vielzahl von Signal-Codierverfahren, Register-Management-Schemen, HDR-Mechanismus-Adaptionen und Sensor-Schnittstellen; sie stellen dabei programmierbare Unterstützung für unterschiedliche Sensortypen zur Verfügung.

Bildsensor-Technologien

Bild 1: Typische Bildsensor-Applikation im Rahmen einer Video-Bildverarbeitungskette.

Bild 1: Typische Bildsensor-Applikation im Rahmen einer Video-Bildverarbeitungskette.Lattice Semiconductor

Bildsensoren lassen sich in zwei unterschiedliche Klassen unterteilen, die sich jeweils in der Basistechnologie unterscheiden, die zur Umwandlung des sichtbaren Lichts in elektrische Signale zum Einsatz kommen. Es gibt CCD-Sensoren und CMOS-Sensoren. Die große Mehrheit der heutzutage ausgelieferten Bildsensoren sind CMOS-Sensoren.

Bild 1 zeigt eine typische Bildsensor-Applikation im Rahmen einer Video-Bildverarbeitungskette. Es gibt heutzutage einige bedeutende Hersteller von Bildsensoren, zu denen unter anderem Aptina, Omni Vision Technologies, Sony, Samsung, Panasonic, Toshiba und Altasens gehören.

Wie bereits zuvor erwähnt statten die Sensor-Hersteller ihre Chips mit vielen verschiedenen Schnittstellen aus, mit denen sie die Bildsignale aus ihren Chips an die nachfolgende (Downstream-) Logik zur weiteren Verarbeitung übergeben. Es ist vollkommen üblich, dass ein Sensorhersteller unterschiedliche Interfaces verwendet – je nachdem, wie viele Daten aus dem Chip heraus gelangen müssen. Moderne Sensoren mit Megapixel-Auflösung müssen beispielsweise viel mehr Daten innerhalb einer vorgegebenen Zeitspanne aus dem Chip heraus transportieren als ein Sensor, der zum Beispiel nur eine Auflösung der VGA-Klasse bietet. Anforderungen wie HDR (High Dynamic Range) erhöhen ebenfalls den Datenumfang, der aus dem Sensorchip für jedes einzelne Bild herausgelesen werden muss. Gleichzeitig beeinflusst die Anzahl der Einzelbilder, die innerhalb einer vorgegebenen Zeitspanne aus dem Sensorchip ausgelesen werden müssen, die Auswahl der Sensor-Schnittstelle, um so ein qualitativ hochwertiges ruckelfreies Video mit geringer Verzögerungszeit zu erhalten.

Die Evolution der Bildsensor-Schnittstellen

Bisher waren alle Sensoren mit einer parallelen LVCMOS-Schnittstelle verbunden (Bild 2). Jetzt sind Auflösungen der Sensoren sowie die Bildwechselfrequenzen derart stark angestiegen, dass ein Punkt erreicht ist, an dem die zuvor dominierende parallele CMOS-Schnittstelle nicht mehr in der Lage ist, die Anforderungen an die Bandbreite zu erfüllen.

Bild 2: Parallele LVCMOS-Schnittstelle für Bildsensoren.

Bild 2: Parallele LVCMOS-Schnittstelle für Bildsensoren.Lattice Semiconductor

Weil der Bedarf an höheren Geschwindigkeiten durch das Aufkommen der Megapixel-Sensoren, HDR und die erforderliche Unterstützung höherer Bildwechselfrequenzen förmlich explodiert ist, nutzen neue schnellere Sensoren unterschiedliche Schnittstellen, um so die Grenzen der parallelen LVCMOS-Schnittstelle zu umgehen. So verwenden Sony und Panasonic beispielsweise parallele Sub-LVDS-Interfaces, während Omni Vision entweder MIPI oder Serial-LVDS einsetzt. Ein weiteres Beispiel ist Aptina Imaging, das zur Unterstützung des höheren Bandbreiten-Bedarfs eine HiSPi (High-Speed Serial Pixel Interface) genannte, schnelle serielle Schnittstelle auf den Markt gebracht hat. Die HiSPi-Schnittstelle kann mit 1 bis 4 seriellen Datenkanälen (Data Lanes) sowie einem zusätzlichen Taktkanal (Clock Lane) arbeiten. Jedes einzelne Signal ist dabei sub-LVDS-differentiell, wobei der mittlere Gleichtaktwert der Spannung 0,9 V beträgt. Jede dieser Lanes kann mit bis zu 700 MBit/s laufen.

Brücke zwischen HiSPi und paralleler Sensor-Schnittstelle

Für die Hersteller standardisierter Logikbausteine zur Downstream-Videoverarbeitung stellen die vielen unterschiedlichen Sensor-Interfaces ein Problem dar; es ist nämlich schwierig, in einem ASSP viele unterschiedliche Sensor-Schnittstellen zu unterstützen.

Bild 3: Programmierbare Brücke zwischen schnellen seriellen Bildsensoren und ASSPs.

Bild 3: Programmierbare Brücke zwischen schnellen seriellen Bildsensoren und ASSPs.Lattice Semiconductor

Die Mehrheit der ISP-Bausteine (Image Signal Processing) unterstützt herkömmliche parallele CMOS-Sensor-Schnittstellen, verfügen aber in der Regel nicht über schnelle serielle Interfaces. Viele der parallelen ISP-Interfaces können viel schneller arbeiten als die Parallelschnittstelle eines Sensors. Weil sich die Sensoren jedoch hin zu zahlreichen seriellen Schnittstellen bewegt haben, benötigen die ISP-Bausteine entsprechende Logik, um so die Umsetzung auf eine parallele Schnittstelle durchzuführen. Daher ist ein FPGA als Brückenbaustein erforderlich, um so den schnellen seriellen Datenstrom in das parallele Format umzuwandeln. FPGAs lösen dieses Problem der Schnittstelle zu schnellen seriellen Sensoren für die Hersteller von ASSPs zur Video-Signalverarbeitung, die bereits über ein Produkt-Portfolio verfügen, das schnellere parallele CMOS-Sensor-Schnittstellen unterstützt. Hierbei stellen die FPGAs eine Brückenfunktion zwischen schnellen Sensoren und herkömmlichen ASSPs zur Bildsignalverarbeitung her, die einfach, kostengünstig und programmierbar ist. Das Grundprinzip ist in Bild 3 dargestellt.

Brücke zu einem seriellen Sensor

Ein Beispiel aus der realen Welt: Das nichtflüchtige FPGA LatticeXP2-5 stellt eine effiziente und kostengünstige Lösung für eine Brückenfunktionalität zwischen dem seriellen Interface HiSPi von Aptina Imaging und der parallelen DSP-Schnittstelle von Texas Instruments her (Bild 4).

Bild 4: Eine Seriell/Parallel-Schnittstellen-Brücke zwischen HiSPi von Aptina und  DM3X5 von TI.

Bild 4: Eine Seriell/Parallel-Schnittstellen-Brücke zwischen HiSPi von Aptina und DM3X5 von TI. Lattice Semiconductor

Dieses Referenzdesign verbindet auf seiner Eingangsseite einen Aptina-Sensor, der über eine serielle HiSPi-Schnittstelle verfügt, mit einem TMS320DM3X5 von TI auf der Ausgangsseite. Die Schnittstellen sind mit den  Aptina-A-1000-Sensoren MT9M034/MTM024 und MT9J003 auf einer Testplattform  getestet. Das Referenzdesign unterstützt Paket- und Streaming-Daten in HiSPi-Formaten  – und zwar für  1 bis 4 Lanes, die mit jeweils bis zu 700 MBit/s arbeiten. Das Design emuliert aber auch den parallelen Sensor-Ausgang mit Busbreiten von 8, 10, 12, 14 oder 16 Bit Breite am Ausgang. Die Parallelschnittstelle lässt sich für die LVCMOS-Pegel 1,8 V, 2,5 V oder 3,3 V konfigurieren. Bild 5 zeigt ein Blockschaltbild des Referenzdesigns.

Bild 5: Blockschaltbild der Schnittstellen-Brücke zwischen Aptina HiSPi und TI DM385.

Bild 5: Blockschaltbild der Schnittstellen-Brücke zwischen Aptina HiSPi und TI DM385.Lattice Semiconductor

Brückenfunktion für Sensor-Schnittstellen

In dreierlei Hinsicht stellen die Brückenfunktionen zwischen Bildsensoren und ASSP eine Herausforderung für die programmierbare Logik dar. Zum einen muss das FPGA die Schnittstellensignale in elektrischer Hinsicht unterstützen, und andererseits müssen die I/Os des FPGAs über ausreichend Umsetzungs-Logik verfügen, um die schnellen seriellen Sensor-Schnittstellen zu unterstützen. Der dritte Aspekt ist die Tatsache, dass das FPGA bei sehr geringem Platzbedarf auf der Leiterplatte eine kostengünstige Lösung bieten muss, um so in die beengten Bauräume moderner Videokameras zu passen.

Die nichtflüchtige FPGA-Familie Lattice XP2 ist mit ihrer bewährten und erprobten, gut dokumentierten Sub-LVDS-Unterstützung sehr gut auf die elektrischen Anforderungen für Brücken-Funktionalitäten bei Bildsensoren ausgerichtet. Die integrierten PLLs, spezielle Taktressourcen (Edge Clocks) und eine I/O-Gearing-Logik lösen die Probleme von schnellen seriellen Sensor-Schnittstellen. Zudem arbeitet das Lattice XP2 auf einem kostengünstigen Footprint, weil es lediglich 8 mm x 8 mm auf der Leiterplatte beansprucht. Zusätzlich benötigt die Produktfamilie Lattice XP2 auf Grund ihres nichtflüchtigen Aufbaus kein externes Boot-PROM, so dass zusätzlicher Platz auf der Leiterplatte eingespart wird, was die Bausteine zu einer attraktiven programmierbaren Logik-Plattform für Sensor-Schnittstellen macht. Da ISP-IP (Bildverarbeitungs-IP) verfügbar ist, sind größere Lattice XP2-Bausteine auch in der Lage, bestimmte Funktionalitäten zu übernehmen. Hierzu gehören beispielsweise die Linearisierung der Sensordaten, die Programmierung der Register im Sensor, das De-Bayering (Errechnen der korrekten Farbdaten aus einem Sensor mit Bayer-Farbsensor-Anordnung), Korrektur defekter Pixel, Gamma-Korrektur und einfache HDR-Operationen mit bis zu 24 Bit pro Farbkanal.