Hallo, ich habe vor, 2 unterschiedliche Controller über GPIO zwecks Datenaustausch miteinander zu verbinden. Das Problem dabei ist, dass ich die Controller nicht synchronisieren kann und somit die Übertragung irgendwie geregelt werden muss. Ich bin jetzt auf der Suche nach einem schnellen (bis zu 100Mbit/s) IC, der die Daten puffert, d.h. er soll eine gewisse Anzahl an Bits aufnehmen und einen Interrupt auslösen, wenn der Buffer voll oder leer ist! Gibt es so einen IC? Ich kann nirgends so etwas finden! Oder gibt es eine andere Möglichkeit dieses Problem zu lösen? Danke und Grüße Thorsten
100MBit ist ja schonmal ne Menge. Vielleicht nen SRAM nehmen, beide Controller parallel ranpacken und der, der Schreibt zieht ne Leitung auf GND oder so wodurch der andere auf Tristate geht. Ist der Controller fertig mit Schreiben geht die Leitung auf high und er schaltet auf Tristate, dann kann der andere mit Auslesen beginnen. Is ja nur so ne spontane Idee, sowas hab ich auch noch nie gemacht.
Das ließe sich mit einem bidirektionalen FIFO erledigen. Sowas stellt in unterschiedlichen Busbreiten und Speichertiefen die Firma Cypress her. CY7C43644 wäre ein Beispiel mit 36 Bit Busbreite und 1 K Speichertiefe ... entspricht vermutlich der Verwendung von Bücherregalen als Fliegenklatsche.
Was für Controller sind das eigentlich? Eine effektive Datenrate von 100Mbps ist für einen 60MHz ARM7 vielleicht eben noch machbar, vor allem wenn's nicht über Datenbus sondern über GPIO laufen soll (aber auch nur mit ungebremster GPIO, also kein älterer LPC2000). Und die meisten I/O-Pins gehen dabei für's Interface drauf.
Was sind das denn für Monster-MCs, die 100MBit können ? Bei 8051, AVR & Co würde ich nur 50..500kBit als praktisch nutzbar einschätzen. GPIOs ist aber auch von wirklich ganz hinten durch die Brust ins Auge. Man sollte besser vorhandene Master-Slave Interfaces (UART, SPI, I2C) nehmen, wenn man neben dem Datenschaufeln auch noch ein kleines bischen CPU-Zeit fürs eigentliche Arbeiten übrig haben will. Peter
Wenn man das WIRKLICH braucht, kommen Dual-Port-Ram sowie FIFO-Ram in Frage. Dual-Port-Ram brauchen jeweils Speicherinterface beidseitig (Adressen + Daten + Steuersignale) während FIFOs lediglich Daten und Steuersignale haben weil hier der Zugriff in Reihenfolge der Daten erfolgt. Für ein bidir Interface braucht man entsprechend 2 Stück der FIFOs. Hersteller für solche Bauteile sind Cypress (wie schon genannt), dann IDT und für FIFOs auch Texas Instruments. Dual-Ram gibt's bis 15 ns, nur Spezialvarianten sind schneller. Ein FIFO wäre z.B. das 72V263 von IDT ; Baugleich zum SN74V263 von Texas. Erhältlich über DigiKey (suche: V263). Die Bauteile sind relativ teuer ( > 20 Euro / Stück ) und teils schwierig erhältlich. Grössere und neuere haben i.d.R. Smd Gehäuse (80, 100 polig usw.). Einfache in DIP wären das "7205" von IDT, allerdings "nur" 12 ns. Bauteile von Cypress haben abweichende Bezeichnungen, sind aber teils baugleich. Die Bauteile sind nix für simple Bastelprojekt, glaube ich.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.