MMU

Aus
Wechseln zu: Navigation, Suche
OS9 Board


MMU - Memory Management Unit

Eine MMU verwaltet den Verfügbaren Arbeitsspeicher eines Computer System. Im Falle einer 8 Bit CPU, die einen sehr eingeschränkten Adressraum hat, wird durch den Einsatz einer MMU der Adressraum stark erweitert. Der Adressraum einer Motorola 6809 CPU ist auf 64K beschränkt, man spricht vom logischen Adressraum. Die MMU hingegen hat einen viel größeren Adressraum von mehreren MB, das bezeichnet man als physischen Adressraum.

Die Idee hinter der MMU ist es, den logischen Adressraum der CPU in kleine Blöcke zu teilen. Jeder Block kann dann irgendwo im physischen Adressraum verschoben werden. Damit steht der gesamte physikalische Adressraum im Zugriff der CPU, natürlich nur Stückweise.

Je kleiner die Größe eines Blocks gewählt wird, desto flexibler kann die Sicht auf den physikalische Adressraum gestaltet werden. Allerdings vergrößert sich der Verwaltungsaufwand, je kleiner die Blockgröße gewählt wird.


Jeder Speicherzugriff der CPU ist immer ein Zugriff in den logischen Adressraum (64K). Die MMU rechnet jeden Speicherzugriff um, von der logischen Adresse zur physikalischen Adresse. Die Umsetzung von logischer auf physikalischer Adresse erfolgt durch ein sehr schnelles RAM, das 'Mapping RAM' (MRAM). Das ist insbesondere bei einer 3MHz CPU eine ziemliche Herausforderung.



Motorola MMU 6829

Für die Motorola CPU 6809 gibt es einen passenden Chip, die Motorola MMU 6829 (näheres dazu siehe: MMU-6829).


Die MMU-6829 hat einen physikalischen Adressraum von 2MB (21 Bit). Der physikalische Adressraum ist in 1024 Seiten (Pages) zu je 2K (Page $000 bis $3FF) unterteilt.

Die CPU hat einen logischen Adressraum von 64KB (16 Bit). Der logische Adressraum ist unterteilt in 32 Blöcke von je 2K.

Die MMU-6829 kann 4 Memory MAPs abbilden (4 Tasks). Das Mapping RAM kann von der CPU lesend und schreibend zugegriffen werden.



Die MMU-16

Die MMU 6829 ist heutzutage sehr schwer zu bekommen. Deswegen wurde die MMU-16 entwickelt. Näheres dazu siehe: MMU-16.


Die MMU-16 ist weitgehend kompatibel zur Motorola 6829. Allerdings hat die MMU-16 ein größeres Mapping RAM (2x 8KB). Damit unterstützt die MMU-16 bis zu 256 Tasks.

Zudem hat das MRAM gleich 16 Bit (statt nur 10 Bit bei der 6829). Von den 16 Bit werden 13 Bit für die physikalische Adresse verwendet Damit kann die MMU-16 einen größeren physikalischen Adressraum verwalten (bis zu 16MB). Die restlichen 3 Bit steuern den Speicher Zugriff (lesen, schreiben, ausführen). Damit kann man zum Beispiel eine RAM Seite auf lesenden Zugriff beschränken, sodass es für die CPU wie ROM aussieht.



News

  • 09.06.2022 --


Downloads


Links