Hallo, ich habe eine kleine Frage zur Adressierung des ROM und RAMs z. B. bei 8051-Derivaten. Müssen ROM und RAM zwingend unterschiedliche Adresse haben oder kann ich auch gleiche Adressen vergeben und die Unterscheidung durch Steuerbussignale regeln? Besten Dank.
Hängt davon ab, ob der Prozessor mit getrennten Adressbereichen für Code und Daten arbeitet (8051) oder mit einem einzigen Adressbereich.
:
Bearbeitet durch User
Bei ARM Cortex M liegt alles in einem einzigen Addressraum. Bei 8051 gibt es getrennte Addressräume, d.h. im Code liegen andere Daten bei 0x0000 als im DATA oder XDATA.
Mit einem 8051 kann ich ja sowohl eine Harvard-Architektur, als auch eine Von-Neumann-Architektur, richtig? (Quelle: Mikrocomputertechnik mit der 8051-Controller-Familie) Das bedeutet, dass sich bei der Neumann-Architektur (Realisierbar über Verknüpfung PSEN und RD über ein AND-Gatter) keine Adresse doppelt vorkommen darf. Andernfalls habe ich eine Harvard-Architektur. Dort können Adresse doppelt vorkommen. Ich muss allerdings durch Steuerbussignale sicherstellen, dass die entsprechende Adresse immer an dem richtigen Speichertyp ankommt. Habe ich das richtig verstanden, oder bringe ich hier was durcheinander? Vielen Dank
P. S. schrieb: > Habe ich das richtig verstanden, oder bringe ich hier was durcheinander? Richtig. Wenn Du beim 8051 durch die Logikverknüpfung eine von-Neumann-Architektur aufbaust, kannst Du auch Programme im RAM ausführen.
Route 66 schrieb: > Wenn Du beim 8051 durch die Logikverknüpfung eine > von-Neumann-Architektur aufbaust, kannst Du auch Programme im RAM > ausführen. Die 8051 sind nur dann von-Neumann Architektur, wenn man die integrierten DATA und IDATA Speicherbereiche nicht beachtet. Die sind aber immer vorhanden.
Route_66 schrieb: > @turboj > Erzähl mir nichts vom 8051. Da kenne ich seit über 20 Jahren jedes Bit > persönlich! Jim Meba schrieb: > integrierten DATA und IDATA Die werden ganz anders adressiert und da kann man in der Tat keine Programme ablaufen lassen.
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.