Adressdecoder?

2 Antworten

Du hast 10 Adressleitungen, 6 (A0..A5) sind der Offset im Modul, 4 weitere können das Modul selektieren.

Es sind also 2^4=16 Module in diesem Adressraum machbar.

BBBB : OOOOOO <- Adressaufbau.

Die Anfangsadresse vom Modul muß jeweils an vielfachen von 2^7 liegen, das wird Dir nicht so weiterhelfen, machen wir es also an der konkreten Frage:

BB BBOO OOOO - 4 Bits entsprechen einer HExzahl
 3    A    0
11 1010 0000

Bei einer gültigen Startadresse müßten sämtliche O-Bits 0 sein.

Zum letzten Teil:

 BB BBOO OOOO
  2    4    0
 10 0100 0000
A98 7654 3210

A7*A8*!A9*!A6

Müßte eigentlich hinhauen.


elektrotec323 
Beitragsersteller
 01.02.2025, 11:01

Müsste die Anfangsadresse nicht an Vielfachen von 2^6 = 64 liegen?

KarlRanseierIII  01.02.2025, 17:30
@elektrotec323

Schaun mer mal, die Uhrzeit war ja schon ein wenig kritisch:

BBBB OOOOOO
0000 000000
0001 000000 =64
0010        =128

Da habe ich in der Tat einen Fehler gemacht.

Tja, das ist so eine Globalfrage, wo man nie weiss, ob man bei Adam und Eva anfangen muss, weil du nicht genau sagst, wo du anstehst.

Das ist wohl so eine Schulaufgabe, die wenig Realitätsbezug hat.
Man weiss nicht, warum genau diese Architektur gewählt wird.
Und streng genommen fehlt dem Speichermodul noch eine read/write Leitung, es muss ja wissen, ob es die Daten auf dem Bus lesen (speichern) soll, oder ob es gespeicherte Daten auf den Bus schicken soll.

Zu 1

Bild zum Beitrag

Offenbar werden da mit 10 Bit Adressbus und Datenbus gleichzeitig gemacht.
6 Bit von A0 bis A5 sind der Datenbus
4 Bit von A6 bis A9 sind der Adressbus
Mit den 4 Adressbits kann man also max. 2^4=16 Module adressieren.

Zu 2 und 3
Hier wird es eben unklar, weil man die übrige Architektur nicht kennt.
Soll der angegebene Hex-Wert das Wort auf dem 10Bit-Bus sein?
Oder nur die Adresse?
Ein HexWert 3A0 oder auch 240 als 4-Bit-Adresse wäre viel zu gross. Bei 4 Bit ist 1111 oder hex-F der höchstmögliche Wert.

Gemeint ist wohl, dass der dreistellige Hex-Wert ein maximal 12stelliger Binärwert wäre, wobei die zwei höchsten Bits (10 und 11) nicht benötigt werden.
Der höchste sinnvolle 10-Bit-Wert wäre also
xx11'1111'1111bin=3FFhex

Somit 2:
3A0 = 11'1010'0000 (fett sind A9..A6)
1110 ist sicher eine gültige Adresse für ein Modul.
Aber was soll mit Anfangsadresse gemeint sein?
Keine Ahnung.
Vielleicht das nur eine 1 im restlichen 6-bit-Wert auftaucht?

Somit 3:
240=10'0100'000, also nur A6 und A9 auf High, Rest zwingend auf Low.
NOT(CS)= A6 AND A9 AND NOT A7 AND NOT A8

 - (cortex, Mikroprozessortechnik)