Hallo liebe Forengemeinde, Für ein kleines Projekt will ich den Speicher eines ATMega 8515 mit einem 512 kByte SRAM aufstocken. Als SRAM kommt ein AS6C4008 von Alliance Memory in den Einsatz. Als Latch verwende ich ein 74HC377 dessen Enable Pin statisch auf 0 gezogen ist. Verdrahtet wurde alles wie im ATMega Datenblatt beschriebe. #WR des Atmegas and #WR des SRAM, #RD an #OE und ALE an den Clock des D Flip Flops. Die 3 übrigen Adressleitungen des SRAMs sind an PB0 bis PB2 angeschlossen. Die #CE Leitung des SRAMS liegt statisch auf 0. Das Problem ist, dass der Speicherzugriff einfach nicht funktioniert. Egal ob ich die Wait States verlängere und #CS vor dem Speicherzugriff erst 0 setzte. Hat Jemand eine Idee warum die Speicherzugriffe scheitern. Im Anhang füge ich noch das Testprogramm an. Datenblatt SRAM: http://www.alliancememory.com/pdf/AS6C4008%20feb%202007%20with%20tsop%2011.pdf Datenblatt Latch: http://www.nxp.com/documents/data_sheet/74HC_HCT377_CNV.pdf Mfg Exe
Ich kenne den Atmega zwar nicht... aber an einem 8051 funktioniert dieser Baustein nicht. Er ist kein Latch, sondern ein Register. D.h. die Polarität des Übernahmeimpulses ist genau verkehrt herum. Am 8051 tut nur ein 373 oder ein 573. Bitte mal in diese Richtung suchen.
@Exe (Gast) >Für ein kleines Projekt will ich den Speicher eines ATMega 8515 mit >einem 512 kByte SRAM aufstocken. Als SRAM kommt ein AS6C4008 von >Alliance Memory in den Einsatz. Als Latch verwende ich ein 74HC377 >dessen Enable Pin statisch auf 0 gezogen ist. Warum erfindest du ein ECKIGES Rad? DAS XMEM Interface funktioniert mit einem LATCH! Nicht mit einem FlipFlop! Nimm ein LATCH, dazu ein passend schnelles der AHC Serie, dann läuft das. > Verdrahtet wurde alles wie >im ATMega Datenblatt beschriebe. #WR des Atmegas and #WR des SRAM, #RD >an #OE und ALE an den Clock des D Flip Flops. ALE != CLK!!
Mach eine Skizze / Schaltplan. Ist so relativ schwirig so auswendig... Hast du Messmöglichkeiten? Oszilloskop, LogicAnalyzer oder ähnliches? [Edit: OK, falk sieht die Fehler auch ohne Schaltplan, bin halt nicht so geübt, verkable meine RAMs normalerweise nicht selbst;-)) mfg Andreas
Das Müsste gehen oder http://www.reichelt.de/ICs-74HCT-DIL/74HCT-573/3/index.html?;ACTION=3;LA=446;ARTICLE=3423;GROUPID=2932;artnr=74HCT+573
Geht, aber nicht mit maximaler Geschwindigkeit. Dafür braucht man AHC.
@ Exe (Gast) >Wie viel langsamer wär es mit 74HCT573? Steht im Datenblatt. Man braucht halt mehr Wait States bei 16 MHz. Bei 8 MHz ist er gleich schnell. > Und würde außer dem Latch so dann alles funktionieren? Wenn du es wie im Datenblatt aufbaust wird es funktionieren.
Falk Brunner schrieb: > ...DAS XMEM Interface funktioniert mit einem LATCH! Nicht mit einem > FlipFlop! Nimm ein LATCH.... > ALE != CLK!! Sieh an. Beim Atmega ist das ALE genauso wie beim 8051.
Exe schrieb: > Wie viel langsamer wär es mit 74HCT573? Und würde außer dem Latch so > dann alles funktionieren? Also wenn es folgendermaßen ist: Joerg L. schrieb: > Beim Atmega ist das ALE genauso wie beim 8051. Dann ginge evtl. auch noch 74AC oder 74ACT, hatte diese für den 8051 mal hier bereit liegen. 74AC573 und 74ACT573. Das sind aber Typen für 3-6V bzw. 5V Betriebsspannung, und eher gut für 5V-Systeme. Vielleicht hat Falk mit AHC Recht, wenn der µC mit 3V oder weniger betrieben wird. Die Typenreihen müßte ich aber auch erst mal selbst raus suchen. AHC arbeitet bis 2V runter, AHCT wiederum mit 5V, meine ollen AC mit 3-6V, ACT auch nur mit 5V. Im Detail muß man sich die Timing-Diagramme der Datenblätter von µC, Latch und RAM genau anschauen, diese sind sicherlich auch angegeben, und dann daraus den richtigen Baustein ermitteln. Und ja, das ist ein wenig Arbeit und genaues Hinschauen. Im Extremfall muß man noch Delays des Layouts mit einbeziehen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.