Forum: Mikrocontroller und Digitale Elektronik max / min länge des Datenbusses


von Jörg (Gast)


Lesenswert?

Hallo,

durch welche angaben bekomm ich heraus, ab wann ich die Länge des 
Datenbusses, Addressbusses und CS-Leitung etc. längenmäßig anpassen 
muss? Wie groß darf der Unterschied zwischen längester Leiterbahn vom 
Datenbus und kürzeste Leiterbahn vom Datenbus sein, damit ein SDRAM IC 
richtig angesprochen wird?

http://download.intel.com/design/flcomp/datashts/31474902.pdf

Jörg

von Falk B. (falk)


Lesenswert?

@ Jörg (Gast)

>durch welche angaben bekomm ich heraus, ab wann ich die Länge des
>Datenbusses, Addressbusses und CS-Leitung etc. längenmäßig anpassen
>muss? Wie groß darf der Unterschied zwischen längester Leiterbahn vom

Durch Abschätzung bzw. Standards. AFAIK gibt es für diese ICs bei diesen 
relativ langsamen Taktfrequenzen keine Standards.

Pi mal Daumen

Auf FR4 beträgt die Ausbreitungsgeschwindigkeit ca. 15cm/ns.

Die Daten-und CS LEitungen können sich im allgemeinen ne realtiv grosse 
Laufzeit bzw. Laufzeitdifferenz erlauben, 1ns (sprich 15cm) und mehr 
würde ich da als problemlos ansehen. Anders beim Takt. Der sollte 
möglichst kurz gehalten werden bzw. bei sternförmiger Taktverteilung von 
einer Quelle auf alle Teilnehmer am Bus (uC, SD-RAM, FLASH) sollten die 
Laufzeitdifferenzen 500ps nicht überschreiten, besser weniger.

MfG
Falk

von Jörg (Gast)


Lesenswert?

danke für die antwort;

hab mir hier mal eine Platine von einer Festplatte angeschaut, auf der 
sich ein ähnlicher SDRAM IC befindet

http://www.samsung.com/global/system/business/semiconductor/product/2007/7/7/595936ds_k4s51xx32d_rev10.pdf

dort wurde viel gemacht in punkto längenausgleichung - `nachdem es viele 
Leitungen betrifft nehm ich mal an dass es der Daten- oder / und 
Addressbus sein muss.

Jörg

von Falk B. (falk)


Lesenswert?

@  Jörg (Gast)

>dort wurde viel gemacht in punkto längenausgleichung - `nachdem es viele
>Leitungen betrifft nehm ich mal an dass es der Daten- oder / und
>Addressbus sein muss.

Naja, das Thema driftet aber schnell ins Esotherische ab. Hatte ich auch 
mal :-(
Es ging um 155 MHZ DDR-RAM. Sprich, ein Bit ist ca. 3ns "lang". Laut 
Spezifikation von Motorola kann man sich zwischen Byte-Lanes bis zu 1 
Inch Längendifferrenz erlauben, macht ca. 170 ps Laufzeitdifferenz. 
Wahrscheinlich geht praktisch auch mehr. Allerding wollte Kunde König 
max. 0,1 Inch, weil er das gross Nervenflattern hatte. Haben wir dann 
auch so machen müssen, weil sämtliche rationale Argumente vollkommen 
ignoriert wurden. Naja.

Andererseits war auf dem selben Board ein PowerPC mit SDRAM drauf, 
Taktverteilung über PLL-Treiber. Der Bus lief sogar (38 MHz, 26ns ) mit 
6ns!!!! Phasenverschiebung der Takte (testhalber, ohne PLL).

Praxis           : Alles funktioniert und keiner weiss warum.
Theorie          : Nichts funktioniert und jeder weiss warum.
Theorie + Praxis : Nicht funktioniert und keiner weiss warum.

;-)

MfG
Falk

von Jörg (Gast)


Lesenswert?

hast du einen direkten link zu den spezifikationen der byte-lanes von 
motorola?

die operating AC Parameter auf Seite 12 besagen nur wie schnell hinter 
einander die Befehle im µC an den SDRAM-IC gesendet werden dürfen, aber 
nichts über die Länge der Zuleitung aus - richtig?

Ergibt sich dann nicht die minimale Zeit, die ein Befehl über die 
leitung zum SDRAM benötigen darf, aus diesen Zeiten - also höchstens 2ns 
-> 28cm und für die CLK ist es die Hälfte 1ns?


bei der festplatte handelt es sich um eine Iomega...

von Falk B. (falk)


Lesenswert?

@  Jörg (Gast)

>hast du einen direkten link zu den spezifikationen der byte-lanes von
>motorola?

Im Moment leider nein.

>die operating AC Parameter auf Seite 12 besagen nur wie schnell hinter
>einander die Befehle im µC an den SDRAM-IC gesendet werden dürfen, aber
>nichts über die Länge der Zuleitung aus - richtig?

Ja.

>Ergibt sich dann nicht die minimale Zeit, die ein Befehl über die
>leitung zum SDRAM benötigen darf, aus diesen Zeiten - also höchstens 2ns
>-> 28cm und für die CLK ist es die Hälfte 1ns?

In gewisser weise schon. Der Ablauf ist wie folgt.

Taktflanke kommt am Sender und Empfänger nahezu gleichzeitig an.
Nach der Clock-to-output Time (scheiss Denglisch) erscheinen neue Daten 
an den Ausgängen des Senders
Nach der Laufzeit auf de Leitungen liegen die Daten am Empfängereingang 
an
Die Daten müssen min. die Setup-Time lang am Eingang anliegen, bevor 
eine neue Taktflanke kommt.

Clock-to_output sowie Setup-zeiten sind in den Datenblättern angegeben, 
der Rest kann theoretisch mit Laufzeit auf den Leitungen verbraten 
werden.

>bei der festplatte handelt es sich um eine Iomega...

Aber wie gesagt, bei 133 MHz SDRAM ist der Längenausgleich noch kein 
wirkliches Thema. Schon gar nicht auf ner Festplatte, die ist 
prinzipbedingt her kompakt. Wenn dort 5cm Längendifferenz zusammenkommen 
ist das viel und damit vernachlässigbar. Isch tippe da eher auf Paranoia 
oder künstlerischen Anspruch des Layouters. ;-)

MfG
Falk

von Matthias L. (Gast)


Lesenswert?

>Haben wir dann
>auch so machen müssen, weil sämtliche rationale Argumente vollkommen
>ignoriert wurden. Naja.

Klingt nach einer Layer 10 Entscheidung..

von Falk B. (falk)


Lesenswert?

@ Matthias L. (lippy)

>>Haben wir dann
>>auch so machen müssen, weil sämtliche rationale Argumente vollkommen
>>ignoriert wurden. Naja.

>Klingt nach einer Layer 10 Entscheidung..

???

von Matthias L. (Gast)


Lesenswert?

>>Klingt nach einer Layer 10 Entscheidung..

>???


Hast recht, könnte auch Layer 9 sein..
Layer 10:  Religious Layer
Layer  9:  Political Layer
Layer  8:  Financial Layer

siehe
http://de.wikipedia.org/wiki/OSI-Modell

ziemlich weit unten.

;-)

von Falk B. (falk)


Lesenswert?

@ Matthias L. (lippy)

;-)

Hast Recht, Layer 10.

MFG
Falk

von Andreas (Gast)


Lesenswert?

und die Clock-Signalleitungen OE,  CS etc. müssen länger sein als die 
Leiterbahnen von Address- und Datenbus?

Beitrag "Highspeed Layout"

Andreas

von Falk B. (falk)


Lesenswert?

@ Andreas (Gast)

>und die Clock-Signalleitungen OE,  CS etc. müssen länger sein als die
>Leiterbahnen von Address- und Datenbus?

Es gibt nur eine Taktleitung, das ist CLK. OE und CS sind normale 
Steuersignale für die die ganz normalen Setup -und Holdzeiten gelten.
Und die müssen nicht länger als Adress- und Datenbuss sein.

MFG
Falk

von Martin (Gast)


Lesenswert?

aber die CLK-Leitung muss die kürzeste von allen Leitungen darstellen - 
nicht die längste.

MArtin

von Falk B. (falk)


Lesenswert?

@ Martin (Gast)

>aber die CLK-Leitung muss die kürzeste von allen Leitungen darstellen -
>nicht die längste.

Kann man allgemein nicht so sagen. Spätestens wenn PLLs im Spiel sind 
ist das wieder hinfällig.

Mfg
Falk

von Jörg (Gast)


Lesenswert?

hab ein paar application notes gelesen - jedoch sind sich die firmen 
nicht ganz einige bezüglich der länge für clk...

zarlink schreibt höchstens 1000mil (also 25.4mm) Leiterbahnlänge und bei 
Freescale wird 500mil - also die Hälfte aufgeführt...
- beides ganz schön kurz

Jörg

von Falk B. (falk)


Lesenswert?

@ Jörg (Gast)

>zarlink schreibt höchstens 1000mil (also 25.4mm) Leiterbahnlänge und bei
>Freescale wird 500mil - also die Hälfte aufgeführt...
>- beides ganz schön kurz

Wofür? Einen 133 MHz SDRAM? Naja, die sollen sich mal nicht so haben ;-)
Und wenn du wirklich lange Takteleitungen hast (ich sag mal 10 cm++), 
dann musst du halt nen PLL-Clockbuffer nehmen. Damit spielt die Länge 
der Taktleitung keine Rolle mehr, weil die PLL die Phasenverschiebung 
ausgleicht.

MfG
Falk

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.