Hallo, hat jemand diese zwei Begriffe "Memory-Mapped angebundenen Flash-Baustein" und "seriell angebundenen Flashbaustein" gehört? Was sind die Unterschiede? MfG Senmeis
Memory-mapped bedeutet, dass der IC über den Daten-, Adress- und Steuerbus angesprochen wird. Dafür hat der Controller separate Befehle. Schnell, verbraucht aber viele Leitungen, evtl. Chip-Select-Dekodierung notwendig. Üblicherweise für Programm, kann aber auch Daten enthalten. Seriell bedeutet, dass der IC über I²C, SPI, MicroWire etc. angebunden ist. Sofern der Controller entsprechende Peripherie hat, geht auch das direkt, allerdings nicht über spezielle Befehle, sondern "nur" durch entsprechendes Beschreiben der SFR. Auch relativ schnell, aber weniger Leitungen. Die meisten Controller können nur Daten in seriellen Speichern ablegen, aber kein Programm. Das dritte wäre dann in Software angesteuert, also die Portpins werden durch Software entsprechend gesetzt/gelöscht/gelesen. Das macht man dann, wenn der Controller die entsprechende Funktion nicht in Hardware unterstützt. Nur für Daten. Peripherie wie ADC/DAC/usw. gibt es sowohl parallel als auch seriell. Ralf
vielen Dank für die Antwort. Arbeiten AVRs nach dem memory mapped Mechanismus? In meinem Lehrbuch steht ein Kapitel "Programmgesteuerte Ein-/Ausgabe": "...D.h. Die CUP operiert in 2 Adressräumen: dem Speicher-Adressraum (Memory Address Space) und dem E/A-Adressraum (I/O Address Space)." Beschreibt dieses Kapitel doch den seriell angebundenen Flashbaustein? Ist diese Technik nicht veraltert, da diese auf zwei Adressräume zugreifen muss? MfG Senmeis
Owen Senmeis wrote: > Arbeiten AVRs nach dem memory mapped Mechanismus? In meinem Lehrbuch > steht ein Kapitel "Programmgesteuerte Ein-/Ausgabe": "...D.h. Die CUP > operiert in 2 Adressräumen: dem Speicher-Adressraum (Memory Address > Space) und dem E/A-Adressraum (I/O Address Space)." Das hat mit Deiner ursprünglichen Frage nichts zu tun. Die Angaben beziehen sich allgemein auf den Datenspeicher des AVR, der kein Flash ist, sondern ein SRAM! ein Flash hat der AVR als Programmspeicher. Und auf diesen Programmspeicher wird bei der Harvard-Architektur über einen separaten Bus zugegriffen. Der Datenspeicher ist im AVR aufgeteilt in den I/O-Space und den allgemeinen Datenbereich. Bei den Standard-AVRs ist auch noch der Rechenregistersatz zu berücksichtigen, der ebenfalls ins SRAM gemappt ist, und zwar an die 32 niedrigsten Adressen. > Beschreibt dieses Kapitel doch den seriell angebundenen Flashbaustein? Wie oben schon gesagt: Es beschreibt gar keinen externen Flashbaustein, sondern das RAM. Flash ist beim AVR der Programmspeicher, und der ist architekturbedingt nicht durch externe Bausteine erweiterbar. Das einzige, was man bei manchen AVRs (ATMega8515, 162 und alle 128-Derivate) tatsächlich memory-mapped erweitern kann, ist das SRAM. Es steht Dir frei, einen seriellen Flash-Baustein an eine der seriellen Schnittstellen des µC anzuschließen, der dann aber nichts mit der o.a. Fragestellung zu tun hat. Auf diesem Flash-Baustein kannst Du dann per Software Daten ablegen, auf die die CPU aber keinen direkten Zugriff hat. > Ist diese Technik nicht veraltert, da diese auf zwei Adressräume > zugreifen muss? Auch die Harvard-Architektur hat ihre Vorteile.
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.