Forum: Mikrocontroller und Digitale Elektronik LPC24xx Timing Diagramm für Memory Controller?


von Tobias P. (hubertus)


Lesenswert?

Hallo,
ich versuch' grade was am externen Bus Controller eines LPC24xx 
anzuschliessen. RAM und so weiter ging gut; da habe ich mich nicht gross 
ums timing gekümmert. Diesmal solls aber ein selber gebastelter 
Peripherie-Baustein sein. Dabei muss ich bestimmte Adressen decodieren 
(z.B. mit einem 74x138) und bei Schreib- oder Lesezyklen auf 
unterschiedliche Bausteine zugreifen. Naja, ist nicht so einfach zum 
Erklären.
Was ich grundsätzlich wissen will:

Wenn \CSx aktiviert ist - wie viele ns vorher sind die Adressen gültig? 
Oder werden die überhaupt erst mit der fallenden Flanke von \CSx gültig?
Dann: Wenn \WE bzw. BLSx aktiviert ist - wann sind die Daten gültig? 
Fallende Flanke von \WE, BLSx oder mit der steigenden Flanke?
Und wann werden die Daten bei einem Lesezyklus vom Bus übernommen?
Ich blick da nicht ganz durch. Das Manual habe ich wirklich (!) ganz 
gelesen, aber ich hab' nirgends ein Timing-Diagramm gefunden. Auch auf 
der NXP-Website scheint es nichts derartiges zu geben. Google führt 
einzig zu irgend einer Seite mit der Domain .br, wo ein paar spärliche 
Angaben zu finden sind, aber nichts was einem was bringt.
Wo sind denn nun diese Diagramme? Gibts überhaupt welche?

Wenn mir da einer weiterhelfen könnt' wäre das super.
Gruss

von Tobias P. (hubertus)


Lesenswert?

Bin ich der Einzige, der diese Sachen nicht weiss oder bin ich einfach 
zu blöd die Diagramme zu finden? Oder gibts gar keine?

von Peter (Gast)


Lesenswert?

Auch wenns steinalt ist, ich habe da auch ein paar Fragen zu den WE und 
BLS timing, hat einer Ahnung wo man Timing Diagramme findet? Hab auch 
ewig gesucht.
Genaue Frage ist: Im SRAM mode ist ein CPLD dran mit 32 bit Busbreite, 
um da Daten reinzuschreiben, brauche ich nur WE oder auch irgendwie die 
BLS Signale.
Mir fehlt irgendwie der Bezug zwischen WE und BLS.

von Tobias P. (hubertus)


Lesenswert?

Hallo Peter,
hab mal schnell in meinem Schema nachgeschaut. Ich habe einen kleinen 
FPGA am Bus hängen und das funktioniert. Ich verwende CS1 als 
Chipselect, und dann BLS0 als Schreib-Freigabe, da mein FPGA nur mit 8 
Bits angebunden ist.
Wenn du immer nur 32 bit breite Zugriffe auf deinen CPLD machst, kannst 
du aber meines Erachtens WE als Schreibsignal benutzen; sollten jedoch 
die individuellen Bytes schreibbar sein, dann müsstest du BLS0..3 
benutzen anstatt WE. In den entsprechenden Config-Registern des EMC 
kannst du dann einstellen, dass nur bei Schreibzugriffen die BLS-Signale 
aktiviert werden. Lesefreigabe erfolgt dann mit OE. Klar soweit, oder 
hab ich jetzt völlige Verwirrung gestiftet? ;-)

von Tobias P. (hubertus)


Angehängte Dateien:

Lesenswert?

Dieses PDF dürfte übrigens von Nutzen sein bei solchen Fragen. Ich weiss 
leider nicht mehr, woher es stammt, habs mal über Google gefunden und in 
meinem Fundus archiviert. Jetzt nützts endlich mal jemandem was, dass 
ich nie was lösche ;-)

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.