Guten Tag,
da ich an meinem Arbeitsplatz mehrere Monitore und Rechner verwende und
häufig zwischen diesen wechsele, habe ich die Verbindung der Bildschirme
und der Rechner bislang über analoge KVMs realisiert. Mittlerweile ist
mir diese Lösung nicht mehr flexibel und zuverlässig genug.
Daher habe ich mich nach DVI-Kreuzschienen umgesehen und war über die
Preisgestaltung im Bereich von einigen k€ in diesem Segment erschrocken.
Ich suche nach einer Lösung, bei der ich z.B. 8 DVI-Eingänge frei auf 8
DVI-Ausgänge durchschalten kann. Gleichzeitig sollen die Tastatur- und
Maussignale an einen gewählten Rechner weiterleiten werden.
Wäre so etwas komplett in einem FPGA realisierbar? Oder müssten hierfür
gesonderte Leitungstreiber verwendet werden, welche eine hinreichende
Bandbreite aufweisen?
Es gibt von Xilinx eine Appnote, in der eine
Schnittstellenimplementation vorgeschlagen wird. Das geht jedoch aus
meiner Sicht zu weit, da ich nur eine Kreuzschiene implementieren und
keinen Einfluss auf den Dateninhalt nehmen möchte. Oder denke ich hier
zu kurz?
Ist so etwas schon einemal von einem von euch umgesetzt worden? Kennt
einer hierfür ein Beispiel im Netz?
Mit freundlichem Gruß
M.Freber
Auf Lattice ECP3 geht das schon, aber auch die Entwicklungskits um mit
sowas nur zu "spielen" gehen in die 1000er.
Die pragmatische, günstige Lösung ist in Software (x2x/x2win-Derivate)
oder notfalls mit einer kleinen GigE/HDMI-fähigen Videoplayer-Box aus
China.
Hallo,
vielen Dank für deine Antwort. Was genau meinst du mit
"Die pragmatische, günstige Lösung ist in Software
(x2x/x2win-Derivate)"?
Mit freundlichem Gruß
M.Freber
M.Freber schrieb:> Daher habe ich mich nach DVI-Kreuzschienen umgesehen und war über die> Preisgestaltung im Bereich von einigen k€ in diesem Segment erschrocken.
Bei einer Eigenentwicklung von sowas kommst Du aber auch locker in den
Bereich - ohne die Arbeitszeit mitzurechnen. Wenn ich mir so die ersten
paar Google Ergebnisse anschaue ist damit 1 - 3 k€ gemeint was für sowas
spezielles sogar noch recht günstig ist.
Für Maus und Tastatur könntest Du einfach sowas wie "Synergy" verwenden
- dann musste nichtmal umschalten (öhm, wo ist gerade der Mauscursor?
Ach da auf Monitor 7... ;-) ). Ist aber bei 8 Rechnern evtl. nicht ganz
unproblematisch.
Es müsste mit entsprechenden DVI- oder HDMI-Rx/Tx-ICs gehen. Ein ADV7611
ist so ein Kandidat. Die setzen z. B. von oder auf 24 Bit parallel um.
Bei HD entspricht das einer Taktfrequenz = Pixelfrequenz = 125 MHz. Das
sollte kein Problem sein. Es ist nur keine Komplettlösung im FPGA.
Wissenslücke: Beherrschen FPGAs die TDMA-Signale von HDMI überhaupt,
bzw. welche würden das können? Oder können mit den seriellen
Transceivern der größeren FPGAs auch HDMI/DVI Schnittstellenstandards
und Geschwindigkeiten erfüllt werden? Da wird doch immer mit mehreren
GBit/s geworben. Das könnte doch sogar mein mich so gerne umfangreich
ausforschender "Freund" Google wissen.
DZDZ
Hi,
unabhängig davon welche FPGAs diese Timings unterstützen (da stecke ich
nicht drin) fällt mir gerade ein Ansatz ein, der ggf. die notwendige
Größenordnung des FPGA drastisch reduziert: Statt die Signale "zur
Laufzeit" in der FPGA Logik umzuschalten, könntest du für jedes
Signalrouting (Permutation der Eingänge auf die Ausgänge) ein eigenes
FPGA-Image bauen und dieses dann auf Knopfdruck z.B. durch einen
Mikrocontroller aus einem billigen Flash-Speicher laden lassen. Dann
dürften fast keine Logik-, sondern nur Routing-Resourcen genutzt werden.
Das hört sich doch zunächst nach einer interessanten Bastellösung an.
Jetzt sehe ich allerdings gerade, dass sich da ja eine stolze Zahl von
8!=40320 Images ergibt, was die Angelegenheit zugegebenermaßen etwas
unhandlich macht. Allein die Zeit für PAR wär interessant ;-) Vielleicht
brauchst du ja aber für deine Anwendung nicht die vollständige
Permutation und dann wär es ggf. ein interessanter Ansatz. Einige
hundert Kombinationen sollten locker mit einem Script machbar sein.
Der Zahn der Zeit schrieb:> Wissenslücke: Beherrschen FPGAs die TDMA-Signale von HDMI überhaupt,> bzw. welche würden das können? Oder können mit den seriellen> Transceivern der größeren FPGAs auch HDMI/DVI Schnittstellenstandards> und Geschwindigkeiten erfüllt werden?
Können sie, mit mehr oder weniger Gefrickel. Beim schon genannten
Lattice ECP3 geht das recht ordentlich ohne Treiber und beim neueren
ECP5 wurde offenbar noch einiges verbessert, aber da habe ich HDMI noch
nicht angeschmissen.
Der Spartan6 schafft DVI und TMDS auch, aber mit deutlich mehr manuellem
Herumgezwiebel, weiss nicht wie's bei den neueren Familien aussieht. Es
gibt ne XAPP dazu...
alibaba schrieb:> ein eigenes> FPGA-Image bauen und dieses dann auf Knopfdruck z.B. durch einen> Mikrocontroller aus einem billigen Flash-Speicher laden lassen. Dann> dürften fast keine Logik-, sondern nur Routing-Resourcen genutzt werden.
Du brauchst auf jeden Fall Logik, wegen Lane-Deskewing, usw.
Und vom "Knopfdruck" weg bis zum Umschalten dauerts u.U. 10 Sekunden...
Synergy scheint da ein würdiger Nachfolger von x2* zu sein.
@M.Freber (Gast)
>da ich an meinem Arbeitsplatz mehrere Monitore und Rechner verwende und>häufig zwischen diesen wechsele, habe ich die Verbindung der Bildschirme>und der Rechner bislang über analoge KVMs realisiert. Mittlerweile ist>mir diese Lösung nicht mehr flexibel und zuverlässig genug.
Vielleicht liegt dort aber auch das Grundproblem? Wozu braucht man
MEHRERE Monitore? Reicht nicht 1-2 Monitore und eine Maus + Tastatur,
mit der man ggf. mehrere Rechner umschaltet? Oder wechselst du dauernd
den Arbeitsplatz?
>Daher habe ich mich nach DVI-Kreuzschienen umgesehen und war über die>Preisgestaltung im Bereich von einigen k€ in diesem Segment erschrocken.
Versuchs mal als Prototyp billiger aufzubauen ;-)
>Ich suche nach einer Lösung, bei der ich z.B. 8 DVI-Eingänge frei auf 8>DVI-Ausgänge durchschalten kann. Gleichzeitig sollen die Tastatur- und>Maussignale an einen gewählten Rechner weiterleiten werden.
HF-Relais können das auch. Ist zwar etwas russisch, geht aber.
Strubi schrieb:> Der Spartan6 schafft DVI und TMDS auch
aber nicht die höheren Raten. 1920 z.B. nur mit 30fps.
M.Freber schrieb:> Ich suche nach einer Lösung, bei der ich z.B. 8 DVI-Eingänge frei auf 8> DVI-Ausgänge durchschalten kann. Gleichzeitig sollen die Tastatur- und> Maussignale an einen gewählten Rechner weiterleiten werden.
Schon mal über das timing nachgedacht? Da kommen 3GBPS, die man per
Kombinatorik durchs FPGA ziehen will, die also am Ausgang auf vielleicht
0,1 ns genau sein müssen. Viel Spass.
DVI braucht 10 Leitungen + einen Takt, macht bei der Matrix 88x88
Leitungen. Das wird mit mit der Konsistenz der Busse schwierig.
Professionelle Systeme lösen das mit analogen Videobuffern.
>HDMI
Schon mal gezählt?
Solche HMDI-Wandler haben bis zu 36 Ausgänge. Da kriegst Du vielleicht
4x4 hin.