C167 mit RAM/ROM

Gast #13060
Lesenswert?

Hi Leute!

Ich weiß, dass hier mehr AVR-Spezialisten sitzen, aber ich hoffe, dass 
sich der eine oder andere auch mit dem C167 auskennt... Ich hab ne 
Schaltung für den Anchluss eines RAMs/ROMs entworfen, bin nmir aber 
nicht wirklich sicher, ob diese auch stimmt. Es wär wirklich super, wenn 
das jemand überprüfen könnte!

http://213.147.162.83/rainer/c161.pdf

BTW, das RAM ist 64k*16Bit, das ROM 128k*8Bit - genau das ist das 
Problem, weil ich nicht sicher bin, wie da 16Bit-breiter Speicher 
angeschlossen wird..

Ist ja vielleicht ähnlich dem M16C oder so...

Danke.
Gast #13061
Lesenswert?

Hallo Rainer,

Wegen des Anschluss eines RAM/ROM an den C167, da schau mal in das
Skript der TU-Wien(http://mc.ict.tuwien.ac.at/skripten/mca.pdf, Seite 29 
ff.) hinein.Da wird an einem Beispiel recht ausführlich
beschrieben wie das geht.

Es gibt auch ein Forum, wo alle möglichen Fragen zum Thema C167 
abgehandelt werden,und zwar unter http://www.c166-forum.de/
Ich glaub da ist auch sicher ein Beitrag zu diesem Thema drinnen.

Viel Glück, bis dann
Jürgen
Gast #13066
Lesenswert?

Hi,

ich habe schon mit extern Speichern (8 und 16 bit) RAM und Flash 
gearbeitet. (C161,C164,C167)

Ich habe einige Anmerkungen:
Wieso hast Du CE vom Flash nicht auf RD# an Proz?

A0 wird bei einem 16bit Speicher eigentlich nicht angeschlossen, da ja 
immer 2 Bytes gelesen werden.
BHE habe ich bisher auch noch nie bei meinem RAM verwendet. Will das RAM 
das?

Bis dann,
Ingo.
Gast #13067
Lesenswert?

> A0 wird bei einem 16bit Speicher eigentlich nicht
> angeschlossen, da ja immer 2 Bytes gelesen werden.
>
> BHE habe ich bisher auch noch nie bei meinem RAM verwendet.
> Will das RAM das?

Die beiden Signale sind nicht beim Lesen, sonderm beim Schreiben 
wichtig. Wenn ein Byte-Wert geschrieben werden soll muss das RAM ja 
wissen ob es das untere Byte (=gerade Adresse, d.h. A0 = LOW) oder das 
obere Byte (BHE# (=Byte High Enable) = LOW) schreiben soll.


> Wieso hast Du CE vom Flash nicht auf RD# an Proz?

Das Flash kann ja immer aktiviert sein, die Daten werden ausgegeben, 
wenn CSx# vom Prozessor (=OE# vom Flash) low ist, sonst passiert nix. 
Sollte also eigentlich kein Problem sein, und damit kann ich weitere 
delays (da RD# möglicherweise später kommt als CSx#) verhindern - 
immerhin will ich einen 120ns-Flash ohne Waitstates betreiben :)

Sollte so passen, oder? Bin für alle weiteren Vorschläge/Kommentare 
offen :)

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