www.mikrocontroller.net

Forum: FPGA, VHDL & Co. 400MHz auf 200MHz Device speichern


Autor: Thorben (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, ich muss einen Datenbus mit 32Bit Breite und 400MHz 
Abtastfrequenz speichern. In meiner Schaltung wurde nur ein 100MHz SRAM 
und 50MHz Quarzossizaltor eingeplant und nun hänge ich an der Umsetzung 
fest.

Mein Lösungsvorschlag:

Die 50MHz Taktfrequenz wird mit einer DCM Stufe um den Faktor 4 erhöht. 
Die Samplestufe mit Multiplexer 32 to 64 Bit Multiplexer arbeitet dann 
mit 200 MHz und die ersten 32 Bit sind die älteren Daten. Das Verfahren 
wurde vom Sump LA abgeschaut. Wie bekomme ich nun meine Daten 64Bit 
breit in ein 32Bit breites SRAM ohne Waitstates? Muss in das HW Design 
ein zweites SRAM mit 32Bit eingeplant werden ?

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> 100MHz SRAM ... ein 32Bit breites SRAM
Passt nicht zu
> Datenbus mit 32Bit Breite und 400MHz
Das RAM ist um den Faktor 4 zu langsam oder zu klein...

Autor: Klaus Falser (kfalser)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thorben schrieb:
> Wie bekomme ich nun meine Daten 64Bit
> breit in ein 32Bit breites SRAM ohne Waitstates? Muss in das HW Design
> ein zweites SRAM mit 32Bit eingeplant werden ?

Zuallererst musst Du das SRAM wählen. Aus dem Datenblatt ersiehst Du, 
wie schnell Du die Daten schreiben kannst. Daraus ergibt sich die Anzahl 
der SRAMs, die Du parallel betreiben musst.

400 MHz x 4 Byte sind 1.6 GByte/s. Das ist schon anspruchsvoll.
Falls das nur ein Hobby-Projekt ist, würde ich Dir empfehlen, eine 
fertige FPGA Platine zu verwenden.

Autor: Iulius (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man muss nicht unnötig viel Hardware einplanen.

Was für ein Signal soll das denn sein das sich 400 Millionen Mal pro 
Sekunde ändert ?

Warscheinlicher ist doch, das du nur so oft abtastest, aber gar nicht so 
viele verschiedene Samples hast/brauchst. In dem Fall kannst du ja 
welche verwerfen und der 100mhz 32Bit SRAM reicht doch.


Letztendlich würde es mich auch wundern wenn der nicht reicht.
Selbst ein 32Mbyte großer SRAM (gibts die größer ? wenn dann wohl kaum 
wirtschaftlich) wäre da nach 20 ms voll.

Das bekommst du mit hoher warscheinlichkeit eh nicht weggeschrieben, 
wohin auch immer, also warum im SRAM puffern ?


Was soll das denn werden ?

Autor: Georgi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Liegt da ein Pulsbetrieb vor? Dann kann man es puffern und langsamer 
speichern.

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.