sdram timing von samsung

Gast #635606
Lesenswert?

Hallo,

wie liest man dieses timing diagramm von samsung.

http://www.samsung.com/global/business/semiconductor/productList.do?fmly_id=122
und dann rechts auf timing diagramm.

auf seite 3:

zuerst muss die Adresse angelegt werden - gleichzeitig mit der Auswahl 
der Speicherbank. Eine halbe clk-time später muss RAS - die Zeile im 
Speicher aktiviert werden, damit man sachen rauslesen kann. Trcd dauert 
dann drei clk-zyklen an. Anschließend kann man die DAten lesen.

wie liest man diese diagramm eigentlich, wenn sowohl der high als auch 
der low status gleichzeitig vorhanden ist, wie z.B. das stets der Fall 
bei ADDR, CAS, RAS, A10 etc. der Fall ist? Bei dQM seh ich genau wann 
DQM low und wann high ist.

Newbie
#635645
Lesenswert?

Ich will beispielsweise eine VGA-Grafik ausgeben, 1024*768 Pixel mit 60 
Hz, das sind 65 MHz CLOCK. Im Diagramm auf Seite 10 ist zu sehen, wie 
man ununterbrochen Daten aus dem RAM lesen kann. Eine Bank ist zum 
Beispiel 512 Pixel groß, dann muß ich rechtzeitig auf die zweite Bank 
umschalten. Im Full Page-Modus können alle 512 Pixel mit einem 
Lesebefehl angefordert werden, hier in der Grafik wären es nur 4 Pixel 
auf einmal, wobei das sogar noch abgebrochen wird.
Gast #635659
Lesenswert?

oh mein monitor ist nicht so groß, so dass ich das "don`t care" nicht 
gesehen habe...

d.h. gleichzeitig muss die addresse und die entsprechende Bank über BA[0 
1] ausgewählt werden. Währenddessen ist RAW low und CAS high.

Was bedeutet in diesem Zusammenhang noch mal A10/AP?

Anschließend ist die Adresse wieder low und BA[0 1] auch low und RAS 
wird high (die über die Adresse und BA ausgewählte Zeile wird aktiv) - 
das dauert 3 clk-Zyklen. anschließend wird die CA-Addresse angelegt und 
BA[0 1] angelegt, so dass die Spalte ausgewählt wird. Jetzt wird 
anscheinend AP nicht benötigt.

Dann wird RAS low (inaktiv) und CAS wird aktiv für 4 clk-zyklen - in 
dieser Zeit wird die Spalte aktiviert. Derweilen sind ADDR und BA wieder 
low.

Wie wird genau Trac gekennzeichnet? In meinem Datenblatt von Samsung 
wird diese Zeit nicht aufgeführt. Abhängig von der Taktrate ist Tsac 
entsprechend lang zu wählen. Bis die Daten Qa an den µC übertragen 
werden können.

Solange gelesen wird, ist WE high. Dann wird CAS wieder high und WE low 
für schreiben. eine neue Adresse liegt an und BA wurde gewählt. 
gleichzeitig werden schon die Daten übertragen Db.

Dann wird WE wieder high - lesen. Die Adresse und BA sind low - liegen 
nicht mehr an und CAS wird High und RAS wird low. --> d.h. die Daten 
werden an die entsprechende Stelle im  Speicher geschrieben?

CS markiert stets, wann auf den SDRAM zugegriffern werden kann - nämlich 
wenn CS high ist. wenn die Adressen und BA anliegen kann demnach nicht 
auf SDRAM zugegriffen werden. Wie werden dann die Sachen gespeichert? 
Auch bei Db (Daten) ist CE low.

Newbie
Gast #635700
Lesenswert?

aber wie kann man jetzt aus so einem Diagramm das genaue Timing für 
einen SDRAM rauslesen? Die Diagramme zeigen ja nur was nach einander 
passieren muss, damit man sachen rauslesen kann oder reinschreiben kann.

Klar die clk-time ergibt sich durch den Takt mit dem der SDRAM gespeist 
wird - aber heißt das dann auch, dass die Addresse im gleichen Moment 
anliegen muss wie BA[0 1]? Wieviel spielraum hat man hier? sind 1 - 2ns 
unterschied ok? Aus welchen Daten kann man das lesen?

Olaf

Welche Bedeutung kommt gleich nochmal DQM zu?
#635749
Lesenswert?

@Olaf:
Das Timing ist im Grunde implizit - es handelt sich um _S_DRAM, 
synchrones DRAM, alles passiert synchron zur Taktflanke. Der Spielraum 
ergibt sich aus den Setup- und Hold-Zeiten - Alle Signale (Adresse, 
Kommando) müssen rechtzeitig vor der Taktflanke anliegen, und müssen 
ausreichend lange nach der Taktflanke stabil bleiben. Zu den Setup- und 
Hold-Zeiten des SDRAMs kommt dann noch Board Delay, Output vom SDRAM 
Controller etc.

@Newbie:
Du solltest die einzelnen Signale komplett ignorieren - Micron hat da 
IMHO eine deutlich bessere Dokumentation. Die Kombinationen der Signale 
entsprechen bestimmten Kommandos, die der Reihe nach angelegt werden.

Eine Row (auch Page genannt) wird mit ACTIVE geöffnet (BA + Row 
Address), nach tRCD kann diese Row dann gelesen oder geschrieben werden.

Zum Lesen wird READ angelegt (BA + Column Address), nach den CAS Latency 
Zyklen liegen dann die Daten an DQ an, bei einem Burst können weitere 
Daten gelesen etc.

Zum Schreiben wird WRITE angelegt (BA + Column Address), die Daten die 
an DQ anliegen werden dann direkt geschrieben.

Spätestens nach tRAS (Active to Precharge) muss die Row dann mit 
PRECHARGE (BA) geschlossen werden.

Des weiteren muss natürlich in regelmässigen Abständen ein AUTO REFRESH 
ausgelöst werden.

Gruß,

Dominic
Gast #635759
Lesenswert?

die minimalen Setup- und Hold-Zeiten stehen ja im Datenblatt drinnen. 
z.B. Setup-Zeit 3ns und Hold-Time 1ns (Input-Zeiten). Dies müssen 
eingehalten werden laut Datenblatt.

bei einer bestimmten Frequenz von z.B. 66MHz = 15ns pro Taktzyklus. 
Wielange muss jetzt z.B. eine Adresse ADDR anliegen (laut Diagramm genau 
ein Taktzyklus)? Spielraum = 15ns - 3ns - 2ns - Zeit(in der Signal hier 
Adresse anliegen muss - wie nennt sich diese Zeit?).

Olaf
Gast #635773
Lesenswert?

ok und mit der Taktflanke ist natürlich CLK-Taktflanke gemeint...

noch eine zweite Frage die vielleicht auch aus diesem Diagramm 
resultiert;

Den übergang zwischen Addresse liegt an Ba ist gewählt und RAS-Flanke 
wird aktiviert, verstehe ich noch nicht ganz - zeitlich gesehen.

der abstand bei 66MHz zwischen zwei Taktflanken sind 15ns. Die Adresse 
wird bis 1ns (hold-time) nach der taktflanke gehalten und dann ist die 
adresse wieder weg. RAS wird jedoch erst 4ns vor der nächsten Taktflanke 
aktiviert --> wie kommt dann die angelegte Adresse über die 
Adressleitungen auch in den SDRAM rein, so dass die richtige Reihe 
ausgewählt werden kann?


Olaf
#635781
Lesenswert?

Olaf wrote:
> ok und mit der Taktflanke ist natürlich CLK-Taktflanke gemeint...

Genau darauf wollte ich hinaus - es ist ein synchrones Design, und 
Signale werden erstmal nur relativ zur Taktflanke (CLK Takt* ist ein 
bisschen redundant) betrachtet.

> Den übergang zwischen Addresse liegt an Ba ist gewählt und RAS-Flanke
> wird aktiviert, verstehe ich noch nicht ganz - zeitlich gesehen.
>
> der abstand bei 66MHz zwischen zwei Taktflanken sind 15ns. Die Adresse
> wird bis 1ns (hold-time) nach der taktflanke gehalten und dann ist die
> adresse wieder weg. RAS wird jedoch erst 4ns vor der nächsten Taktflanke
> aktiviert --> wie kommt dann die angelegte Adresse über die
> Adressleitungen auch in den SDRAM rein, so dass die richtige Reihe
> ausgewählt werden kann?

Mir ist nicht ganz klar was du meinst. In dem Diagramm auf Seite 3 des 
Samsung Datasheets wird die Row an der zweiten steigenden Flanke von CLK 
ausgewählt (ist ganz unten mit "Row Active" gekennzeichnet"). nRAS ist 
ein active-low Signal - in dem Diagramm wird gezeigt wie es tSS vor der 
Flanke low gehen muss (zuvor: don't care) und tSH danach wieder don't 
care sein kann.

Gruß,

Dominic
Gast #635795
Lesenswert?

>Mir ist nicht ganz klar was du meinst. In dem Diagramm auf Seite 3 des
>Samsung Datasheets wird die Row an der zweiten steigenden Flanke von CLK
>ausgewählt (ist ganz unten mit "Row Active" gekennzeichnet"). nRAS ist
>ein active-low Signal - in dem Diagramm wird gezeigt wie es tSS vor der
>Flanke low gehen muss (zuvor: don't care) und tSH danach wieder don't
>care sein kann.

ah ok - das hab ich übersehen, dass RAS ein aktive-low signal ist. Dann 
ist CAS auch ein aktiv low signal... ok, dann war das mein denkfehler...

Welche Bedeutung hat gleich nochmal DQM? Ich dachte DQM gibt an welche 
Datenleitungen aktiv sind LDQM z.B. die ersten 8 Datenleitugnen und DQM 
die zweiten acht Datenleitungen.

CS ist dann auch ein low-aktiv signal?

WAs gibt die Burst Länge eigentlich an? Nur die Anzahl, wie oft 
hintereinander aus dem Speicher gelesen werden kann? Also bei Burstlänge 
= 1 kann nur 1x * Anzahl der Datenleitungen Bits rausgelesen werden?

Olaf
#635805
Lesenswert?

Olaf wrote:
> Welche Bedeutung hat gleich nochmal DQM? Ich dachte DQM gibt an welche
> Datenleitungen aktiv sind LDQM z.B. die ersten 8 Datenleitugnen und DQM
> die zweiten acht Datenleitungen.
Beim Lesen sind die Datenleitungen CAS-Latency-Takte nachdem DQM high 
war High-Z.
Beim Schreiben wird der Teil, für den DQM high war, nicht geschrieben, 
sondern behält seinen vorherigen Wert.
DQM muss auch benutzt werden wenn ein READ Burst mit einem WRITE 
abgebrochen werden soll - DQM muss dann CAS-Latency-Takte vor dem Write 
HIGH sein, um Bus-Contention zu vermeiden.

> CS ist dann auch ein low-aktiv signal?
Ja - das wird üblicherweise durch einen waagerechten Strich über dem 
Signalnamen deutlich gemacht, so auch im Samsung Timing Diagramm.

> WAs gibt die Burst Länge eigentlich an? Nur die Anzahl, wie oft
> hintereinander aus dem Speicher gelesen werden kann? Also bei Burstlänge
> = 1 kann nur 1x * Anzahl der Datenleitungen Bits rausgelesen werden?
Die Burstlänge gibt an wie viele Worte hintereinander gelesen oder 
geschrieben werden sofern kein neues Kommando angelegt wurde.

Gruß,

Dominic
Gast #635810
Lesenswert?

wie berechnet man die zeitliche Verzögerung der Leiterbahn mit hinein.

also Tclk = Tsetup + Thold + Tleiterbahn

Jeder IC hat ja eine gewisse Kapazität die zusammen mit dem 
Eingangswiderstand ein RC-Glied darstellt - rechnet man darüber die 
Verzögerung auf der Leiterbahn auch aus? Welches R wird dafür verwendet? 
R = V(output low) / I (output low) - kann nur diese wertebezeichnungen 
im datenblatt nicht immer finden.

Hans
Gast #635867
Lesenswert?

die output-to-clock time ist hier doch der minimalen hold time 
entsprechend, oder? also der stabil bleibende teil nach der aktiven 
taktflanke?

Jeder IC hat ja eine gewisse Kapazität die zusammen mit dem
Eingangswiderstand ein RC-Glied darstellt - rechnet man darüber die
Verzögerung auf der Leiterbahn auch aus? Welches R wird dafür verwendet?
R = V(output low) / I (output low) - kann nur diese wertebezeichnungen
im datenblatt nicht immer finden.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren