mikrocontroller.net

Forum: FPGA, VHDL & Co. Wortfindungsstörung: "Vermitlungsstelle" in CPLD


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Thomas M. (schwuuuuup)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich finde gerade meinen Einstieg in Verilog/VHDL, und bin noch recht 
grün hinter den Ohren was das angeht.

Meine Tool-Chain funktioniert und ich kann inzwischen meinen Altera MAX 
II programmieren - Auch wenn ich die Sprache noch lernen muss - darum 
geht's aber nicht, das bekomme ich schon hin.

Was ich eigentlich hinbekommen will, ist eine Schaltung, die X Eingänge 
und Y Ausgänge hat, die ich beliebig miteinander verbinden kann. Wie in 
einer alten, manuellen Vermittlungsstelle möchte ich es erreichen, dass 
ich gleichzeitig Jeden Input jedem Output zuweisen kann, und das ganze 
dynamisch.
Ich würde also von einem µC aus steuern, welcher Input auf welchen 
output geschaltet wird.

Wie heißt so eine Schaltung? Dafür gibt es doch sicher irgendeinen 
feststehenden Begriff - wonach soll ich googeln?
Ich weiß, dass manche µC so etwas eingebaut haben, um jede Funktion auf 
jeden beliebigen Pin zu mappen.

In meiner Vorstellung würde ich ein Shiftregister mit einem Mux pro Pin 
kombinieren. Gibt es sowas schon, so dass ich das Rad nicht neu erfinden 
muss?.
Geht das überhaupt auf einem CPLD, oder übersehe ich etwas und ich muss 
doch zu einem FPGA greifen?

Da ich den Gewünschten Effekt sehr leicht auch durch eine statische 
Schaltung hinbekäme, bei der ich den CPLD jedesmal umprogrammieren muss, 
wenn ich andere Input/Output-Verbindungen brauche, desilusioniert mich 
ruhig, wenn meine Vorstellung nirgends hinführt.
Idealerweise habe ich rund 16 Inputs und 32 Outputs. Das wären allein 
schon 4x32=128 Bit für's Shifregister, welches die Daten halten soll, 
welcher Input auf welchem Output ausgegeben werden soll. Kann also gut 
sein, dass da schnell die Logik-Einheiten knapp werden.

Schönen Gruß
TOM

Autor: bitwurschtler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
crossbar switch

Koordinatenschalter

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Matrix?

ich hatte das mal mit Analogmultiplexer gebaut
HEF oder CD 4051/52/53 oder 74HC

https://assets.nexperia.com/documents/data-sheet/HEF4051B.pdf
http://www.ti.com/diagrams/custom_diagram_1_CD4051B.gif

Autor: Thomas M. (schwuuuuup)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
bitwurschtler schrieb:
> crossbar switch
>
> Koordinatenschalter

Ergibt Sinn ... wäre ich nur im Leben nicht drauf gekommen. DANKE!

Autor: Thomas M. (schwuuuuup)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joachim B. schrieb:
> ich hatte das mal mit Analogmultiplexer gebaut
> HEF oder CD 4051/52/53 oder 74HC


... ja, nur eben 32 davon in einem Chip, gesteuert durch einen Seriellen 
Eingang

Autor: Ge. B. (georg2011) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thomas M. schrieb:
> as ich eigentlich hinbekommen will, ist eine Schaltung, die X Eingänge
> und Y Ausgänge hat, die ich beliebig miteinander verbinden kann.

Schaltmatrix ?

Autor: Bürovorsteher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Wie heißt so eine Schaltung?
Noch nicht genannt:
- Koppelfeld, nicht blockierend
- switch fabric

Autor: Lothar M. (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thomas M. schrieb:
> die X Eingänge und Y Ausgänge hat, die ich beliebig miteinander
> verbinden kann.
Soll der Signalfluss dann nur vom Eingang zum Ausgang gehen, oder soll 
das sogar bidirektional sein?

Autor: Vka (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Kreuzschiene?

Autor: Joachim B. (jar)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lothar M. schrieb:
> Soll der Signalfluss dann nur vom Eingang zum Ausgang gehen, oder soll
> das sogar bidirektional sein?

gute Frage um da flexibel zu bleiben wählte ich Analogmultiplexer
Richungsgebunden ist natürlich auch TTL Logik möglich.

für Video hat Maxim auch was
https://www.maximintegrated.com/en/datasheet/index.mvp/id/1931

: Bearbeitet durch User
Autor: Thomas M. (schwuuuuup)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lothar M. schrieb:

> Soll der Signalfluss dann nur vom Eingang zum Ausgang gehen, oder soll
> das sogar bidirektional sein?

Nur in eine Richtung wir wollen es ja nicht unnötig kompliziert machen

Autor: Bürovorsteher (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nocheinbegriff: crosspoint switch

Autor: Lothar M. (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thomas M. schrieb:
> Nur in eine Richtung wir wollen es ja nicht unnötig kompliziert machen
Dann wird das einfach ein Megamonstermultiplexer, der aus A Multiplexern 
mit der Breite E besteht...  ;-)

Bei 32 Ausgängen und 64 Eingängen sind das 32 einzelne 64:1 Mux. Und wie 
berechnet wird da einem CPLD recht schnell die Hose eng. Ich empfehle 
dagegen die schnuckeligen kleinen MachXO FPGA von Lattice.

Autor: Thomas M. (schwuuuuup)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wer hat was von 32x64 gesagt?... Ich meinte eher 16x32 und das ist sind 
nur ein Viertel davon... Was es um Faktor 16 weiniger Komplex macht, 
oder? (Das war rhetorisch, ihr braucht nicht nachrechnen ;)
Aber danke schon mal, ich weiß jetzt einfach ich suchen muss crossbar 
und crosspoint sind wohl die besten Schlagwörter.

Autor: Lothar M. (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thomas M. schrieb:
> Wer hat was von 32x64 gesagt?
Ich, in der Annahme, die 16E-32A irgendwann zu klein werden. Denn die 
eigentliche Frage dahinter war dann ja diese:
>>> Geht das überhaupt auf einem CPLD, oder übersehe ich etwas und ich muss
>>> doch zu einem FPGA greifen?
Und der Ratschlag war: setze auf das FPGA. Gleich jetzt. Denn "richtige" 
CPLD mit großen Produkttermen sind eh' tot. Aktuelle und zukünftige 
"CPLD" sind dann genauso wie FPGA letztlich LUT basiert.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.