Gibt es einen IC, der das On-the-Fly-Routing von Signalen ermöglicht?

Gibt es ICs mit N Eingangspins und N Ausgangspins, die es entweder über die EEPROM-Einstellung oder über die On-the-Fly-Steuerung durch einen Mikrocontroller ermöglichen, jeden der N Eingänge an einen der N Ausgänge zu leiten?

Mit anderen Worten, man könnte es zum Beispiel verwenden, um die eingehende Leitung an Input1 mit der ausgehenden Leitung an Output6 zu verbinden und Input2 mit Output3 und Input3 mit Output1 usw. zu verbinden (unabhängig davon, ob es sich bei den Signalen um SPI oder I2C handelt , oder digitale Standardleitungen usw.) ... Und später die Reihenfolge ändern.

Falls vorhanden, wie heißen solche ICs?

Ist ein bilateraler Switch sinnvoll? doctronics.co.uk/4016.htm Ein einzelner Quad-Bilateral-Schalter sorgt jedoch nur für N = 2, wenn er richtig verdrahtet ist. Oder wie wäre es mit einem dreifachen Zweikanal-Mux ti.com/lit/ds/symlink/cd4053b.pdf bilateralen Multiplexer?

Antworten (4)

Was Sie suchen, wird als "Crossbar-Chip" bezeichnet. Da dies ein ziemlich ineffizienter Weg ist, Siliziumressourcen zu nutzen, scheint der Schwerpunkt heutzutage auf der Verwendung solcher Chips zu liegen, um LVDS-Signale mit sehr hoher Geschwindigkeit zu routen.

Kreuzschienenschalter scheinen immer teuer und nicht vorrätig zu sein, wenn ich sie mir ansehe. Vielleicht werden sie nicht viel benutzt?
Und "Crosspoint" scheint ein gebräuchlicherer Name zu sein als "Crossbar".

Im Allgemeinen wird ein Gerät, das N Eingänge gleichzeitig mit N Ausgängen verbindet, als Kreuzschienenschalter bezeichnet .

Solange alle Signale digitale unidirektionale Signale sind, wie die Signale auf einigen SPI-Bussen,

  • Ein FPGA kann so konfiguriert werden, dass es jeden von N Eingängen dynamisch an jeden von N Ausgängen leitet.
  • Wenn N klein genug ist, können Sie dies möglicherweise auch mit einer anderen Art von programmierbarem Logikgerät oder Multiplexer tun.
  • Wenn eine Verzögerung von etwa einer Mikrosekunde zwischen einer Eingangsänderung und einer Ausgangsänderung tolerierbar ist, kann ein Mikrocontroller oder ein anderer Prozessor der kostengünstigste Ansatz sein.

Wenn die Signale bidirektional sind, wie z. B. die Signale auf einem I2C-Bus, wird es schwieriger, ein solches Routing durchzuführen - wenn der Crossbar-Schalter angewiesen wird, Pin A mit Pin B zu verbinden, muss er irgendwie erkennen und möglicherweise die Richtung von Millisekunde ändern auf Millisekunden, unabhängig davon, ob Pin A als Eingang gelesen und Pin B angesteuert oder B als Eingang gelesen und Pin A angesteuert werden muss. Die dafür erforderliche zusätzliche Logik passt problemlos auf ein FPGA.

Handelt es sich bei den Signalen um analoge Audio- oder analoge Videosignale,

  • Möglicherweise können Sie analoge Mux-ICs verwenden. Die meisten von ihnen sind von Natur aus bidirektional. Es ist ziemlich einfach, 4 "4: 1-Analog-Mux-Chips" zu verdrahten, um ein vollständiges beliebiges 4 x 4-Routing zwischen 4 analogen Eingängen und 4 analogen Ausgängen zu erhalten, mit 2 digitalen Steuerleitungen pro Ausgang (vermutlich von einem Prozessor), um den Eingang auszuwählen es ist verbunden.
  • Video-Koppelpunktschalter-ICs sind verfügbar. Beispielsweise ist der "Low-Cost-Video-Crosspoint-Switch Maxim MAX4360 8x8" für etwa 20 US-Dollar im Stück erhältlich. (Danke, Axtmann).
  • Eine beliebte Alternative zu rein analogen Kreuzschienenschaltern sind Systeme, die (1) alle analogen Eingänge digitalisieren, dann (2) diese Signale durch einen digitalen Kreuzschienenschalter leiten und dann (3) an den Ausgängen wieder in analoge Signale umwandeln.

Alle verfügbaren ICs haben Grenzen hinsichtlich der Menge an Leistung, die sie verarbeiten können, und der maximalen Frequenz, die sie verarbeiten können. Wenn Sie Signale schalten müssen, die diese Grenzen überschreiten (und vorausgesetzt, Sie möchten keinen eigenen benutzerdefinierten IC entwickeln), müssen Sie mechanische Relais verwenden.

Wenn es sich bei den Signalen um analoge Videosignale handelt, gibt es spezielle Teile, wie die Maxim-Crosspoint-Switch-Serie. Hier ist eine: maximintegrated.com/datasheet/index.mvp/id/1931

In den vergangenen Jahren hatte Lattice Semiconductor einige Familien konfigurierbarer Bauelemente in seiner GDX- und GDX2-Serie. Von ihrer Website :

Lattice ispGDX2 – 38 Gbit/s Bandbreite, 800 Mbit/s SERDES Die ispGDX2-Familie ist der im System programmierbare (ISP) Hochleistungs-Digital-Crosspoint-Switch der nächsten Generation von Lattice für Hochgeschwindigkeits-Bus-Switching und Schnittstellen mit einer Bandbreite von bis zu 38 Gbit/s. Diese Familie kombiniert eine flexible Switching-Architektur mit erweiterten seriellen Hochgeschwindigkeits-E/A (sysHSI-Blöcken), sysCLOCK-PLLs und sysIO-Schnittstellen, um die Anforderungen heutiger Hochgeschwindigkeitssysteme zu erfüllen. Eine Multiplexer-basierte Architektur und eine On-Chip-Steuerlogik erleichtern die Hochleistungsimplementierung gängiger Schaltfunktionen. Die Geräte der Familie können mit einer Kernspannung von 3,3, 2,5 und 1,8 V betrieben werden.

Die spätere GDX2-Familie wurde EOL mit einem letzten Kauf am 7. März 2011 und den letzten Lieferungen am 31. Dezember 2014 angekündigt.

Heutzutage können Sie eine verallgemeinerte Input-to-Output-Switching-Funktion mit einer beliebigen Anzahl verschiedener kostengünstiger FPGAs von Altera, Lattice, Xilinx und anderen implementieren. FPGA-Funktionen, die über die einfache Routing-Funktion hinausgehen, spielen oft eine Rolle, denn wenn man es genau nimmt, ist das wählbare Routing von Eingängen zu Ausgängen selten so einfach. Sehr oft besteht Bedarf an Taktsynchronisierung, Registrierung, Pufferung, Pegelumwandlung, bidirektionalen Signalen und spezialisierten Gating- oder Steuersignalen. All dies und mehr kann mit FPGAs implementiert werden.

Was Sie tatsächlich brauchen, ist ein ungepuffertes analoges Koppelpunkt-Array . Sie kommen in vielen Geschmacksrichtungen (I2C- oder GPIO-gesteuert) und Konfigurationen 12x8, 16x8 usw. Schauen Sie sich dieses andere Thema an, das ich geöffnet habe, da ich hier keine endgültige Antwort finden konnte.