Microcontroller an RAM anschließen

Gast #5883532
Lesenswert?

Hallo zusammen,

ich arbeite mich gerade in die Welt der Digital- und Microrechentechnik 
ein und habe dabei eine Aufgabe, die ich leider nicht ganz verstehe. Das 
Ziel ist  es einen 256k x 8 Bit RAM-Baustein an einen Microcontroller 
(C167CR) anzuschließen.
Der Microcontroller besitzt 8 Pins für die Datenleitungen, der RAM 
ebenfalls 8 Pins um die Daten ein/auszulesen.

Der Text enthält jedoch die Zusatzinfo, dass der Microcontroller im 
"8-Bit-Demultiplex-Mode" arbeitet. Was ein Multiplexer und Demultiplexer 
ist, weiß ich, ich kann leider nur nichts mit der Informationen 
anfangen. Kann mir das möglicherweiße jemand kurz und schlüssig 
erklären?

Danke :)
#5883541
Lesenswert?

Lies mal den Abschnitt "3.2 External Bus Controller" im Datenblatt des 
MCU, da steht das beschrieben.

Im Multiplex-Modus werden Adresse und Daten über den gleichen Port 
übertragen, fürs Multiplexing gibt es dann pins (\HOLD, \HLDA).
Im Demultiplex-Modus werden Adresse und Daten über separate Ports 
kommuniziert.
#5883545
Lesenswert?

Sind die Schüler heute wirklich zu doof, bei Aufgaben mal nachzuschlagen 
?

Einfach ins Datenblatt des C167CR (von was auch sonst) gucken, und dort 
steht daß im demultiplexed mode das Port 0 die Datenleitungen 0..15 
(wovon man nur 0..7 braucht) und das Port 1 die Adressleitungen 0..15 
und Port 4 die Adressleitungen 16..19 zur Verfügung stellt (wovon man 
nur 16..17 braucht).

Und wenn man dann echt nicht nachdenken kann, gucket man in ein Beispiel 
wie 
https://www.frenzel-berg.de/fileadmin/FrenzelBerg/Datenblaetter/Micro/ds_m167_v100r102_en.pdf

Für diese primitiven Grundlagen muss man doch nicht die Forums- und 
Whatapps-Welt mit Hilferufen aufscheuchen.
#5883551
Lesenswert?

Siehe 
https://www.infineon.com/dgdl/Infineon-C167CR-DS-v03_03-en.pdf?fileId=db3a304412b407950112b4361fac649a

Port 0.7 bis 0.7 ist der Datenbus
Port 1.0 bis 1.15 ist der Adressbus. Für Dein RAM brauchst Du 1.5 nicht.
Dann hast Du noch !WR und !RD und einen von 5 Chip Selects auf Port 6.0 
bis 6.4

Hier hat also jedes Signal seinen eigenen Prozessorpin. Um Pins zu 
sparen, kann man auf Port 0.0 bis 0.7 sowohl den Datenbus D0..D7 als 
auch die unteren 8 Bit des Adressbusses A0..A7 legen. Damit wären die 
Ports 1.0 bis 1.7 für andere Sachen frei. Zwischen den beiden Funktionen 
wird mit dem Signal ALE umgeschaltet. Am RAM braucht mann dann einen 
74HC573, um beide Funktionen wieder zu trennen. Der speichert dann die 
unteren Adressbits fürs RAM.

Dieses (zwei Funktionen auf einen Pin legen und dann umschalten) wird 
multiplexen genannt.

fchk
Gast #5883581
Lesenswert?

Herzlichen Dank für die vielen und hilfreichen Rückmeldungen :-)

Ich schaue mir im Datenblatt dann genau an wie das ganze beschrieben 
ist, aus euren Rückmeldungen nehme ich jedoch mit das im 
Demultiplex-Mode jede Daten- und Adressleitung eine eigene Leitung hat.

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