Forum: Mikrocontroller und Digitale Elektronik Hilfe Dekoder


von Marcus S. (marcus99)


Angehängte Dateien:

Lesenswert?

Hallo User,

ich brauche unbedingt eure Hilfe! Ich verstehe nicht bei meinem 
angehängten Bild wie man auf das anschließen der ROM´s und RAM´s für die 
geforderten Adressräume kommt, mit Hilfe der obrigen zusehenden 
Logiktabelle im bild?? Kann mir das vielleicht jemand erklären?:/

Vielen Danke im vorraus
marcus

von Klaus W. (mfgkw)


Lesenswert?

Was ist da eigentlich gegeben und was soll rauskommen?

Der Adreßraum (CODE soll wohl ROM sein und xdata das RAM?) passt
nicht zu dem Schaltplan.
0x0000 bis 0x07FF für das RAM passt, aber das ROM hat keinen
durchgehenden Adreßraum, das stimmt nicht.

(Zumal ich mir auch nicht sicher bin, ob es Sinn macht, daß
RAM und ROM sich überschneiden.)

von karadur (Gast)


Lesenswert?

Hallo

A14=0 A15=0 A13=0  A12=x A11=x A0-A10=Adresse für Ram. Enable durch OE.

A14=0 A15=0 A13=0 A0-A12 Adressen für linkes ROM. Enable durch OE.

A14=0 A15=0 A13=1 A0-A12 Adressen für rechtes ROM. Enable durch OE.

Somit 0- 0x7ff für Ram. 0-0x1fff für linkes ROM. 0x2000-0x3fff für 
rechtes ROM

von marcus99 (Gast)


Lesenswert?

Hallo,

okay ja das versteh ich einigermaßen doch woher weiß ich das ich nur Y0 
und Y1 verwenden darf und warum gehen von Y0 die Verbindungen an beide 
RAM's und an den einem ROM? Und warum verwende ich Y1 für den anderen 
ROM?

Grüße

von Karl H. (kbuchegg)


Lesenswert?

marcus99 schrieb:

> und warum gehen von Y0 die Verbindungen an beide
> RAM's

sieh dir mal deine RAMS genauer an.
Wieviele Datenleitungen gehen zu jedem RAM?

Auch wenn du physisch 2 Bausteine hast, logisch gesehen hast du nur 1 
RAM

von marcus99 (Gast)


Lesenswert?

Okay das hab ich jetzt verstanden aber warum geht dann noch eine YO 
leitung an das ROM? Kann man nicht Y1 dann einfach mit den beiden ROMs 
verbinden? Ich versteh iwie den zusammenhang nicht Logiktabelle und 
welche Y ausgänge ich zu meinen speicherbausteinen hinführen muss?:/

von Klaus W. (mfgkw)


Lesenswert?

Wenn die RAM jeweils nur 4 Bit auf den Bus liefern, müssen sie doch 
gleichzeitig arbeiten.
Deine ROM dagegen liefern jeweils 8 Bit, also dürfen die nicht
gleichzeitig aktiv werden, sondern der eine nur bei einem Teil
der Adressen und der andere bei anderen Adressen.
Welcher jetzt bei welchen Adressen aktiv wird, steuert man über
den Anschluß an die Y... gemäß Tabelle (bzw. kann man natürlich
auch die obersten Adreßleitungen am Decoder variieren).

von marcus99 (Gast)


Lesenswert?

Ah okay danke. Also dann unterteilen sich jetzt die adressen von der 
aufgabe über den Y-ausgängen YO= 0-0x1FFF, Y1= 0x2000-0x3FFF, Y2= 
0x4000-0x7FFF und so weiter und je nach gefordeten Adressräumen hier, 
schließ ich meine speicherbausteine an?!

von Karl H. (kbuchegg)


Lesenswert?

marcus99 schrieb:
> Ah okay danke. Also dann unterteilen sich jetzt die adressen von der
> aufgabe über den Y-ausgängen YO= 0-0x1FFF, Y1= 0x2000-0x3FFF, Y2=
> 0x4000-0x7FFF und so weiter und je nach gefordeten Adressräumen hier,
> schließ ich meine speicherbausteine an?!

Ganz genau.

Und da rechts oben in deinem Machwerk steht, dass sich die Adressräume 
von RAM und dem einen ROM überlappen sollen, hängen sie eben parallel am 
Y0

von marcus99 (Gast)


Lesenswert?

Okay also als verdeutlichung nochmal ein anderes beispiel: Wenn ich 
jetzt ein adressraum statt 0x0000-0x3FFF jetzt 0x0000-0x7FFF code bei 
der aufgabe habe (also jeweils 2 ROM's a 16k*8) müsste ich bei der 
aufgabe statt Y1 auf dem ROM das Y2 anschließen oder?!

von karadur (Gast)


Lesenswert?

Hallo

geht so nicht. Der Dekoder erzeugt aus den oberen Adressleitungen eine 
Unterteilung des Adressbereichs in 8k große Blöcke. Y0= erster Block, 
Y1= 2ter usw. Y7= oberster Block. Du musst also für 16k bei Y0 und Y1 
selektieren für das untere ROM mit 16k und mit Y2 und Y3 für das 2te 
ROM.

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.