DMA-Interface für Intel 8080-kompatiblen RAM

Gast
So wie ich das Thema DMA verstanden habe, ist es mit einem 
DMA-Controller möglich die CPU zu entlasten und zum Beispiel von Daten 
schnell vom internen RAM eines Mikrocontrollers auf einen externen 
(ebenfalls per DMA angeschlossenen) Baustein zu übertragen. Oder habe 
ich da etwas grundsätzlich falsch verstanden?

Falls nicht: Meine Idee war es mittels Anbindung eines SRAM-Bausteins an 
ein LPC2xxx ein Buffer für ein LCD zu haben. (Das LCD selber kann jedoch 
nicht direkt per DMA angesteuert werden, darum die obige Frage).
Gast
>So wie ich das Thema DMA verstanden habe, ist es mit einem
>DMA-Controller möglich die CPU zu entlasten

Hat deine CPU DMA und ein externes Speicherinterface?
Wenn nicht wird es kompliziert.
Wolkig ist deiner Worte Sinn. Aber vielleicht meinst du DMA als Methode 
zum Refresh jeder Art unintelligentem Display. Gibts. Nennt sich 
Display-Controller. Die arbeiten so, schieben zyklisch RAM-Inhalt aufs 
Display. Ob allerdings dann der Mikrocontroller noch direkt aufs RAM 
zugreifen kann, oder über den Display-Controller gehen muss, ist wohl 
unterschiedlich.
Gast
Entschuldigt die unklare Formulierung. Ich versuche mein Problem etwas 
ausführlicher zu beschreiben:

Ich plane an einem System welches aus einem LCD, einem LPC2xxx, einem 
externen Flash-Speicher und einem RAM-Baustein besteht. Per DMA sollen 
zuerst verschiedene Grafiken aus dem Flash-Speicher in den RAM geladen 
werden. Nach dem das Bild dort komplett zusammengesetzt wurde, soll es 
möglichst schnell in den LCD-RAM übertragen werden. Die dortigen Daten 
werden dann direkt auf dem LCD angezeigt.
Nun besitzt leider der LCD ein Intel-8080 kompatibles Interface und 
nicht wie von mir gewünscht ein DMA-Interface. Wie im Anhang gezeigt, 
bin ich nun auf der Suche nach einem Baustein (oder mehreren) welche die 
Aufgabe des "?" übernehmen.

Grüsse Oli
Angehängte Dateien:
Gast
>Nun besitzt leider der LCD ein Intel-8080 kompatibles Interface und
>nicht wie von mir gewünscht ein DMA-Interface.

Das braucht auch kein DMA Interface, genausowenig
wie dein RAM. Deine CPU muss DMA können. Sonst wird
das nix.
Was hat denn deiner Ansicht nach ein "8080-Interface" gegen DMA? Fast 
alle Devices im Ur-PC hatten ein solches Interface (ausgerechnet der 
Display-Controller kam aus 6800 Reihe ;-), trotzdem gab es DMA.

Was ist ein DMA-Interface?

Welches RAM hat ein 6800-Interface?
Gast
>So wie ich das Thema DMA verstanden habe, ist es mit einem
>DMA-Controller möglich die CPU zu entlasten
Damit das funkt., muss der DMA-Controller 'dicht' an CPU-Kern und 
Speicher sitzen (und ggfs Cyclen der CPU stehlen). Bei nem typ. 
MicroController ist daher, wegen der hohen Integration, ein von aussen 
angebauter DMA-Controller faktisch nicht machbar.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 15 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.