Forum: FPGA, VHDL & Co. Paralleles interface zu seriellen flash speicher


von Marius S. (lupin) Benutzerseite


Lesenswert?

Könnte man mit einem cpld ein paralleles interface zu einen seriellen
flash speicher machen und den speicher dann mit 4 mhz ansprechen? oder
haut das mit den timing nicht hin? Ich hab bei atmel gesehen das die
speicher mit maximal 20 mhz angesprochen werden oder so, aber das
bezieht sich ja auf das serielle interface des speichers denke ich.

von Ralf (Gast)


Lesenswert?

Und wenn du das serielle mit dem parallelen nachbildest? Also einfach
die nicht benötigten Leitungen des parallelen Interfaces offen lässt?
Musst halt ein bisschen aufwendigeren Code schreiben.
Ich habe das mal so gelöst, hab nur eine zusätzliche Portleitung
gebraucht, um den seriellen Speicher zu (de)aktivieren, weil ich am
Datenbus noch RAM usw. hatte.

Ist nur so ne Idee, weiss nicht, ob das für dich brauchbar ist...

Gruß Ralf

von Hagen (Gast)


Lesenswert?

Die Frage ist mit was steuerst du das parallele Interface an. Ich
vermute mal eine langsamme MCU, zb. 1Mhz maximaler Takt für das
parallele Interface. Der CPLD mit zb. 40Mhz getaktet der dann das Flash
mit 20Mhz ansrechen soll.  Also um die effektive Zugriffszeit der MCU
auf den Flash 20x zu beschleunigen.

Ansonsten sehe ich keinen realen Sinn in einer solchen Ansteuerung.

Zur Frage an sich: ja es würde gehen, aber unterschätze nicht den
Aufwand und die nötigen Resourcen im CPLD. Es hängt davon ab was der
CPLD alles an Modis unterstützen muß, also Schreiben, Lesen, Random
Zugriff oder sequientieller Zugriff etc. pp.

Du benötigtst auf alle Fälle:
- 8 Pins, InOut High-Z paralleles Interfaces
- 1 Pin, Input Synchronisation bzw. Signal das jetzt das parallele
Interface gültige Daten enthält, sozusagen Schreib Startsignal,
- 1 Pin, Input Synchronisation bzw. Signal das jetzt das parallele
Interface gülte Daten holen soll.
- 1 Pin, Clock Input des CPLD
- 1 Pin, Clock Output für Flash
- 1 Pin, MOSI Output für Daten CPLD->Flash
- 1 Pin, MISO Input für Daten Flash->CPLD
- 1 Pin, Output ChipSelect für Flash = RESET

= ca. 15 Pins wenn ich nich was vergessen habe.

Es handelt sich im Grunde um einen "Parallel zu SPI" Umsetzer.

Gruß Hagen

von Marius Schmidt (Gast)


Lesenswert?

Es geht mir vor allem darum den speicher programmieren zu können, ich
habe mir gedacht die seriellen leitungen des speichers aus zu führen um
den speicher dann irgendwie zu programmieren. ich denke anders rum ist
es vielleicht logischer, indem ich ein serielles Protokoll im cpld
implementiere das dann SPI zu Parallel übersetzt um den speicher an zu
sprechen.

Wo finde ich ein Beispiel projekt bei dem ein einfaches serielles
protokoll implementiert ist? Ich will den speicher schreiben und
auslesen können (in einen stück oder in blöcken) - vielleicht geht das
dann über ein parallel port kabel? aber das wäre dann sicherlich
ziemlich langsam (es geht um 1MB).

Ich brauche im grunde einen in-system-programmierbaren flash speicher
im bereich 512Kb-2Mb mit paralleler ansteuerung.

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
Noch kein Account? Hier anmelden.