MachXO2

Die Bausteine des Typs MachXO2 können innerhalb des Automobils in Fahrerassistenzsystemen zum Einsatz kommen, um so das Display-Management sowie die Datenmanipulation (Skalieren, Rotieren etc.) der Kamerabilder zu übernehmen. Die MachXO2-Bausteine sind in der Lage, die Anzeige dynamisch zwischen zwei unterschiedlichen Kamerabildern hin- und herzuschalten, können aber auch eine Kombination beider Bilder anzeigen lassen.

Infotainment-Systeme helfen den Fahrern dabei, sicher zu ihrem Ziel zu navigieren. Gleichzeitig unterhalten diese Systeme die Mitfahrer, wobei Infotainment mittlerweile nicht mehr nur auf Premium-Fahrzeuge beschränkt ist. Vielmehr halten die aufkommenden Fahrerassistenz-Systeme im Automobil derzeit in den Mainstream-Fahrzeugen der (unteren) Mittelklasse Einzug.

So müssen die im Armaturenbrett verbauten LCD-Anzeigen dynamisch von der Anzeige GPS-basierter Inhalte auf eine der zahlreichen Kamera-Ansichten umschalten oder gar ein kombiniertes Bild anzeigen, das von mehreren Kameras erfasst wird, die sich rund um das Fahrzeug befinden. Die von den rückwärtigen Kameras gelieferten Bilder unterstützen den Fahrer beim parallelen Einparken, beim sicheren Herausfahren aus Parklücken und Ein/Ausfahrten sowie wenn es darum geht, Kollisionen mit herannahenden Fahrzeugen zu vermeiden.

Um an verkehrsreichen Kreuzungen mit eingeschränkter Sicht den Überblick des Fahrers auf den Querverkehr zu verbessern, könnte beispielsweise das von den beiden Frontkameras erfasste Bild angezeigt werden, wobei diese beiden Kameras am Chassis oberhalb der Vorderreifen angebracht sind. Einige Fahrzeuge liefern gar einen „Rundumblick“ auf dem Display. Hierbei handelt es sich im Prinzip um einen virtuellen 360-Grad-Blick rund um das Fahrzeug, dessen Bildinformation von den Bildern stammt, welche die Kameras an der Vorderseite (vordere Spitze der Motorhaube), am Heck und den beiden Seiten (an den Außenspiegeln) liefern. Diese Bilder müssen dann bei Bedarf für unterschiedlich große LCDs neu skaliert (in der Größe angepasst), feinjustiert und verbessert werden, um so eine höhere Bildqualität zu erzielen.

Für das Management und die Auswertung dieser Bilddaten sind neue ICs erforderlich, wobei ASICs dafür viel zu teuer und gleichzeitig aber auch mit viel zu hohen Risiken verbunden sind, während ASSPs nicht die notwendige Flexibilität aufweisen. PLDs (Programmable Logic Devices) weisen diese Unzulänglichkeiten nicht auf, aber beim Einsatz von PLDs stellen die für die Bilddaten verwendeten Schnittstellen eine gewisse Herausforderung dar, so dass oftmals Hochleistungs-PLDs erforderlich waren, die auf Grund ihrer hohen Verarbeitungsleistung im Hochpreis-Bereich liegen. Diese Situation verändert sich derzeit, denn jetzt ist eine Generation von Low-Cost-PLDs mit integrierten Hochleistungs-I/Os verfügbar. Diese Low-Cost-PLDs sorgen für eine effiziente Übertragung, Verarbeitung und Manipulation sowie für die Anzeige der digitalen Daten, während sie gleichzeitig eine Differenzierung des Produkts ermöglichen und dabei helfen, die angestrebten Ziele in punkto Time-to-Market sowie Gesamtkosten zu erreichen.

Der Transport der Bilddaten

In Fahrzeugen erfolgt der Transport der Bilddaten mit Hilfe einer Vielzahl unterschiedlicher Methoden. Ein gängiger Ansatz besteht darin, LVDS zu verwenden, um so quellensynchrone Schnittstellen zu realisieren.

Eine weit verbreitete Technik, um Video-Applikationen umzusetzen, ist ein 7:1-LVDS-Interface (LVDS: Low-Voltage Differential Signalling). Bei Channel Link, Camera Link, FPD-Link, und FlatLink handelt es sich um Varianten dieses Ansatzes. LVDS ist ein universeller Schnittstellen-Standard, der einerseits schnell ist, aber andererseits auch eine geringe Verlustleistungsaufnahme aufweist. Bei LVDS kommt eine differenzielle Signalübertragung zum Einsatz, die gleiche oder entgegengesetzte Ströme in einem Leiterpaar erzeugt, was auch dabei hilft, die Gesamtemissionen zu verringern. Darüber hinaus verwendet LVDS Stromschalt-Treiber (stromgesteuerte Treiber), welche die Verlustleistungsaufnahme begrenzen. Basierend auf LVDS entwickelte National Semiconductor die Channel-Link- sowie die FPD-Link-Technologie (FPD: Flat Panel Display, Flachbildschirm) als Lösung für Flachbildschirme zur Unterstützung der Datenübertragung vom Grafikcontroller zum LCD-Panel. Später wurde diese Technologie erweitert auf eine Methode zur universellen Datenübertragung. Camera Link ist ein Standard, der auf 7:1-LVDS basiert und einen Gesamt-Datendurchsatz von 2,38 Gbit/s bietet, was mit bis zu 28 Bit Daten und einer Taktfrequenz von bis zu 85 MHz möglich wird. Das von Texas Instruments angebotene FlatLink ist in den Konfigurationen 21:3 und 28:4 erhältlich – und zwar mit Unterstützung von 4-Bit-, 6-Bit- oder 8-Bit-RGB-Daten.

Implementation von 7:1-LVDS in Low-Cost-PLDs

Typischerweise nutzt die 7:1-LVDS-Schnittstelle drei bis fünfLVDS Datenleitungen sowie eine LVDS-Taktleitung Displays mit höherer Auflösung nutzen in der Regel vier oder fünf LVDS-Datenleitungen. Innerhalb einer Taktperiode (eines Taktzyklus‘) gibt es sieben serielle Bits auf jeder einzelnen Datenleitung (siehe Bild 1).

Das Timing bei einer 7:1-LVDS-Schnittstelle

Das Timing bei einer 7:1-LVDS-SchnittstelleLattice Semicoductor

Zu den Herausforderungen bei der Implementation einer 7:1-LVDS-Schnittstelle in einem Low-Cost-PLD zählt unter anderem die Verfügbarkeit schneller LVDS Ein-/Ausgänge und PLLs zur Erzeugung des De-Serialisierungs-Takts (Takt zur Umwandlung des seriellen Datenstroms in parallele Daten), die Fähigkeit zur Erfassung der Eingangsdaten, ein effizientes und akkurates Gearing (Parallelisieren) sowie die Formatierung der Daten.

Schnelle LVDS-I/Os

Die Daten sowie die Taktinformation müssen zum/vom PLD mit relativ hoher Geschwindigkeit übertragen/empfangen werden. Die exakten Geschwindigkeiten hängen dabei jeweils von der Auflösung, der Frame-Rate und der Farbtiefe ab, die bei dem Display zum Einsatz kommt. So erfordern beispielsweise Displays, die mit einer Auflösung von 800 x 600 bis 1024 x 768 arbeiten, dass die LVDS-Daten mit Frequenzen zwischen 40 MHz und 78,5 MHz übertragen werden, um so Refresh-Raten von 60 Hz bis 75 Hz zu erzielen. Hieraus ergeben sich LVDS-Datenraten von 280 MBit/s bis 549 MBit/s. Bei Displays mit höherer Auflösung wie beispielsweise 1280 x 1024, die mit 60 Hz arbeiten, ist eine Übertragung der Daten mit einer Taktfrequenz von 108 MHz erforderlich. In diesen Systemen geschieht die Datenübertragung dann mit 756 MBit/s.

Erzeugung des Takts

Bei der Takterzeugung besteht der allgemeine Ansatz darin, die ankommenden Taktsignale zu empfangen und dann mit Hilfe einer PLL zu versiebenfachen, um so ein Taktsignal für jedes einzelne Datenbit zu haben – ein Vorgang, der sich in der Realität nur ziemlich schwierig umsetzen lässt, weil der Taktgeber extrem schnell laufen muss. Da die typische Taktrate eines Display-Interfaces 60 bis 100 MHz oder mehr beträgt, ergibt sich bei einer Multiplikation mit dem Faktor Sieben eine Frequenz von 420 bis 700 MHz. Bei diesen Taktraten wäre in einem Low-Cost-PLD jegliche Art von Bildmanipulation und Bildverarbeitung unmöglich.

Datenerfassung, Gearing und Formatierung: Sämtliche Register, die unmittelbar hinter dem LVDS-Eingängen liegen, müssen die Daten exakt erfassen. Um dabei den ankommenden schnellen Datenstrom in vollem Umfang zu berücksichtigen, ist es wichtig, das Verhältnis von Takt zu Daten genau zu steuern. Darüber hinaus ist es notwendig, die Geschwindigkeit der Daten per Gearing zu verringern, bevor diese Daten an die PLD-Fabric weitergeleitet werden.

Wenn die Schaltung zur Erfassung der Eingangsdaten nur auf einer Taktflanke arbeitet, dann sollten sieben phasenverschobene Versionen des langsamen Taktes erzeugt und dazu genutzt werden, um die Eingangsdaten mit sieben unterschiedlichen Registern zu erfassen. Auf Grund der besonderen Herausforderungen, die bei der Takterzeugung und Taktverteilung bestehen, ist dieser Ansatz nicht für eine PLD-Implementation geeignet.

Der Takt muss einen relativ geringen Jitter aufweisen, weil dieser Jitter in das Gesamt-Timing-Budget mit einbezogen werden muss. Auf ähnliche Art und Weise muss der Skew des zur Taktverteilung genutzten Netzwerks, das dazu dient, diesen Takt an die Eingangs- oder Ausgangsregister zu verteilen, in die Timing-Analyse mit einbezogen werden.

Beispiel

Lattice stattete das PLD des Typs MachXO2 bereits bei der Konzeption der Architektur mit spezifischen Features aus, die das 7:1-LVDS-Interface unterstützen. Zu diesen Features zählen Hochleistungs-LVDS-I/Os, DDR-I/O-Register (DDR: Double Data Rate), Gearing-Logik sowie eine hochgenaue PLL mit dediziertem 3,5-Taktteiler. Diese Features und Fähigkeiten stellen eine umfassende Lösung zur Verfügung. Bausteine des Typs MachXO2 bieten bis zu 21 Datenkanäle. 

Empfänger und Sender in einem Baustein des Typs MachXO2.

Empfänger und Sender in einem Baustein des Typs MachXO2.Lattice Semicoductor

Bild 2 zeigt den Empfänger (Receiver) und den Sender (Transmitter) für vier Datenkanäle.

In dieser Abbildung empfängt das Receiver-Modul des MachXO2-Bausteins vier Datenkanäle sowie die Taktinformation über die LVDS-I/Os. Diese Eingänge arbeiten mit Taktfrequenzen von bis zu 303 MHz (606 MBit/s), so dass sie hohe Auflösungen sowie Display-Refresh-Raten mit bis zu 85 MHz Pixelrate (SXGA) unterstützen. Hierbei dient die PLL dazu, den Takt mit dem Faktor 3,5 zu multiplizieren. Dieser schnellere, phasenverschobene Takt (ECLK) wird dann über ein Edge-Taktnetzwerk mit geringem Skew an die DDR-Eingangsregister weiterverteilt. Die Inhalte der LVDS-Datensignale gelangen dann in die DDR-Register, die über eine 7:1-Gearing-Funktion verfügen. Das Gearing ermöglicht ein Demultiplexen der I/O-Daten, die mit dem schnellen Flankentakt (ECLK) getaktet sind, an die langsamere FPGA-Taktrate (SCLK).

Diese 7:1-LVDS-Lösung enthält Logik für das automatische Ausrichten des PLD-Ausgangstaktes an die Position, die für das Abtasten (Sampling) des LVDS-Eingangsdatenstroms optimal ist. Außerdem ist die Logik für das Auto-Aligning des PLD-Takts an das Eingangs-Datenwort vorhanden. Diese „Soft-Logik“-Elemente arbeiten in enger Zusammenarbeit mit den in der Hardware realisierten Ressourcen, um so die vollständige Display-Interface-Lösung zur Verfügung zu stellen.

Das Transmitter-Modul des MachXO2-PLDs empfängt 28 Bit parallele Daten sowie den schnellen DDR-Takt (ECLK). Die parallelen Daten gibt das System dann an die Display-I/O-Logikzelle mit 7:1-Gearing-Funktion weiter. Mit Hilfe des Gearings ist das Multiplexen der Eingangsdaten möglich, die mit dem langsamen Systemtakt (SCLK) getaktet sind, wobei das Multiplexen auf die schnellere DDR-Ausgangsflankentaktrate (ECLK) erfolgt.

Zusammenfassung

In zunehmendem Maße erhöht sich der Anteil digitaler Inhalte auch auf dem Mainstream-Markt; man denke in diesem Zusammenhang beispielsweise an die zahlreichen Bildsensoren (mehrere Kameras), die Displays für die Passagiere auf den Rücksitzen und die Navigationssysteme.

Aus diesem Grund erwarten Experten, dass 7:1-LVDS-Interfaces in Applikationen zur Bildverarbeitung wie beispielsweise Infotainment-Systemen in Fahrzeugen weiterhin gängiger Standard sein werden, weil sie Vorteile in punkto Kosten und Verlustleistungsaufnahme bieten.