Forum: FPGA, VHDL & Co. Datenübertragung per Glasfaser


von Johann (Gast)


Lesenswert?

Hallo @all

Ich such einen Transmitter und Receiver, mit dem ich Daten über 
Glasfaser übertragen kann.

Ich habe mr gedacht das ich auf der einen Seite einen FPGA habe. Der 
übergiebt die Daten Parallel an ein Transmitter IC. Dieses IC wandelt 
die Daten in ein optisches Signal und diese werden dann per Glasfaser 
übertragen. Auf der anderen Seite der Glasfaser soll dann ein Receiver 
sein, der die optischen Signale wieder in ein paralleles elektrisches 
Signal wandelt. Kenn vielleicht jemand solche Transmitter oder Receiver

von Justus S. (jussa)


Lesenswert?

zB Farnell Optoelektronik -> Faseroptik -> Transmitter oder Empfänger

von Johann (Gast)


Lesenswert?

Die sind leider etwas langsam. Ich suche etwas zwischen 4 und 8 GBits. 
Und am besten etwas was gut zu beherschen ist. z.B. 32 Bit Interface mit 
125MHz wären so 4GBits.

Ich möchte die Daten parralel anlegen und einfach einen Clock mit den 
Daten übertragen. Der Transmitter soll aus den parallelen Daten das 
optischen Signal erzeugen.

von Christian R. (supachris)


Lesenswert?

Naja, das ist ja nicht alles. Du brauchst entweder einen im FPGA 
integrierten Serdes oder einen externen. Außerdem musst du eine 8B/10B 
Kodierung/Dekodierung machen, damit du ein gleichspannungsfreies Signal 
bekommst, um auf der Empfängerseite den Takt zurückzugewinnen. Am 
einfachsten geht das zwischen 2 FPGAs, die gleich integrierte 
Transceiver haben, wie zum Beispiel Virtex 4 FX oder solche Boliden. 
Oder aber externe SERDES Bausteine benutzen, wie beispielsweise den 
SN65LV1224 als Deserializer und den SN65LV1023 als Serializer dazu. Als 
optischen Empfänger eignet sich da beispielsweise der HFBR2119T oder 
ähnliches.

Edit: Achso, während ich alles rausgesucht hab, kam die Sache mit dem 
Speed. Naja, da hilft nur noch ein schneller FPGA mit Transceivern. 
Extern hab ich sowas noch nicht gesehen, schon gar nich, wo es gleich 
optisch raus kommt. Du brauchst dann einen FPGA mit RocketIO (oder 
vergleichbares, ich sprech hier mal von Xilinx) sowie passende optische 
Transceiver-Module, wie sie zum Beispiel für 10 GBit Ethernet verwendet 
werden. Such mal nach SFP Modulen.

von Johann (Gast)


Lesenswert?

Das sind doch schon mal super Anhaltspunkte. Ich werde mal danach im 
Internet suchen. Ich werde sicherlich noch Fragen haben und mich morgen 
noch mal melden.

von Johann (Gast)


Lesenswert?

Gibt es nicht ein SERDES IP Core für einen Xilinx FPGA. Diese haben doch 
sicherlich einen 64Bit oder sogar 128Bit breiten Datenbus. Kann ich dann 
das serielle Signal über so einen Rocket I/O Port ausgeben?

von Christian R. (supachris)


Lesenswert?

Der Serdes ist bei den Modellen mit RocketIO schon in Hardware drin. 
Beim Virtex 5 FXT hab ich mal schnell mal geschaut, der kann 6,5GBit/s 
und macht auch 8B/10B, 64B/66B... Kodierung gleich....der serielle 
Datenstrom kommt dann direkt aus dem FPGA. Allerdings sind solche 
Datenraten nicht ganz trivial, da spielt viel HF 
rein....Leiterplattendesign ist da ganz wichtig.

von Johann (Gast)


Lesenswert?

Wieder etwas dazu gelernt. Ich werde mir mal die Rocket I/Os 
Beschreibung durchlesen. Da der Virtex 5 zu teuer ist muß ich mal beim 
Spartan 6 nachschauen. Mal sehn wie viel der kann.

Das PCB muß zum Glück nicht ich machen ^^

Bis jetzt sammel ich ja auch nur Ideen um abzuschätzen was machbar ist.

von Christian R. (supachris)


Lesenswert?

Der S6 kann nur 3,125 Gb/s und ist eh noch lange nicht verfügbar. 
Höchstens Engineering Samples.

von berndg (Gast)


Lesenswert?

Oder wenn du die Nerven hast, vier LWL-Kabel zu benutzen und nur 6 
Gbit/s brauchst, kannst du die Sache auch mit einen Spartan 3 erledigen.
Hier musst du noch was aus der HOTLink-II-Serie von Cypress nehmen, z.B.
den CYP15C0403DXB. Das ist ein Vierfach-Transceiver mit 8b/10b-Wandlung 
inklusive. Damit die vier Kanäle am Ende wieder zusammenpassen, hat 
dieser Stein die Möglichkeit des Channel-Bonding.
Ähem.

von Mathi (Gast)


Lesenswert?

Die Lattice ECP3 haben bis zu 16 Serdes mit 3,2GBit/s.

von Horst (Gast)


Lesenswert?

>>Ich suche etwas zwischen 4 und 8 GBits.

>Die Lattice ECP3 haben bis zu 16 Serdes mit 3,2GBit/s.

Und dann ? Fehlt ja dann nur noch das "Multi channel alignment". Nicht 
so
trivial. ("Clock Compensation" und "Elastizitätspuffer" könnten im 
SerDes enthalten sein).

Horst

von Johann (Gast)


Lesenswert?

Momentan arbeite ich mit einem Spartan3. Preislich ist die Virtex5 oder 
Virtex6 Reihe zu teuer. Deshalb habe ich auf den Spartan 6 gehoft. Ich 
muß erst mal weiter Ideen sammeln. Jedoch schon mal vielen Dank für die 
Informationen.

von Andreas (Gast)


Lesenswert?

Serdes im FPGA ist nicht ganz trivial.
>3Gbit/sec. noch viel weniger.

Relativ gesehen, kann man bei Xilinx mit Aurora noch mit beherschbaren 
Aufwand loslegen ( Hier gibts auch Channelbonging Feature ).

Ein anderer Gedankenanstoss:
Schau mal bei Cypress vorbei. Stichwort Hotlink II.
Dort gibt es Bausteine mit bis zu 4Lanes, welche auch Channelgebondet 
werden können. Weiteres Feature sind eingebaute BIST Generator und 
Checkeinheit, welche als externe Beschaltung lediglich das Setzen 
einiger externer Pins sowie Clock benötigen...

Gruß

Andreas

von LUT (Gast)


Lesenswert?

Vielleicht kommen Altera Arria II noch in Frage 
(http://www.altera.com/products/devices/arria-fpgas/arria-ii-gx/aiigx-index.jsp), 
die können bis zu 3,75Gbps und liegen preislich zwischen Spartan/Cyclon 
und Virtex/STratix.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.