Modernen PCs einstellbaren DMA-Betriebsarten

New member
Hallo an alle,

ich mache zurzeit einen Online Fernkurs zum Servictechniker und habe einen Problem mit einem Unterschied von den DMA Betriebsarten. Ich verstehe den Unterschied leider nicht, vielleicht kann mir hier ein Fachmann weiterhelfen, da ich sonst leider nicht weiß wo ich sonst fragen soll.

Meine Frage lautet:

was sind die einstellbaren DMA-Betriebsarten in modernen PCs?

Ich habe zwei Anhaltspunkte:


Erstens:

Byteweise Übertragung (Byte Mode)
Die CPU gibt auf DMA-Request hin den Bus nach Beendigung des gerade laufenden Maschinenzyklus frei. Nach dem Transfer eines Datenwortes erhält die CPU die Kontrolle über den Bus zurück und sie setzt den laufenden Befehl weiter fort (bis zum nächsten DMA-Request) = Cycle Stealing.

*Burst-Modus
Auch hier wird die CPU mitten in der Bearbeitung eines Befehls kurz angehalten, jedoch für mehrere Zyklen = Transfer eines ganzen Datenblocks.

*Halt-Modus
Die CPU wird nach Beendigung der gerade laufenden Instruktion angehalten - solange, bis der DMA-Transfer eines ganzen Blocks abgewickelt ist.

*Transparent-Modus
DMA-Schnittstelle und CPU arbeiten zeitmultiplex während jedes Maschinenzyklus jeweils in einer halben Periode. Dazu ist ein sehr schneller Speicher erforderlich =keine Beeinträchtigung der CPU.

Oder zweitens:

Single Mode (Cycle Stealing)


Beim Single Mode überträgt der DMA-Controller bei jedem ,,Durchgang`` nur ein einziges Byte. Nach jedem Durchgang wird der Systembus wieder an den Prozessor freigegeben. Dieser Modus heißt deswegen auch Cycle Stealing, weil dem Prozessor bei jedem Übertragungsvorgang für einige Taktzyklen der Systembus kurz entzogen wird.

Anschließend löst der TC eine Autoinitialisierung aus. Nachteilig daran ist, daß nach jedem Transfer erneut die Erlaubnis über den Systembus erteilt werden muß. Wie wir am obigen Beispiel des FDC gesehen haben, wird dieser Modus bei Übertragungen von Diskettensektoren verwendet.

Burst Mode (Block Transfer Mode)

Im Burst Mode überträgt der Controller alle Daten im gewünschten Block, ohne dabei den Systembus zwischenzeitlich freizugeben. Der DMA-Controller gibt den Bus erst dann wieder frei, wenn das Zählregister von 0000h auf FFFFh umspringt oder ein externes erfolgt.

Demand Transfer Mode

Der Demand Transfer Mode (Transfer auf Anforderung) ist eher eine Art Mischung aus den ersten beiden Betriebsarten. Der DMA-Controller führt solange die Datenübertragung aus, bis entweder ein oder das Peripheriegerät DREQ deaktiviert. Beim Burst Mode hat das Deaktivieren des DREQ-Signals keinerlei Auswirkungen.


Ich bin leider verunsichert, da ich den Unterschied nicht erkenne. Vielleicht kann mir einer netterweise Helfen.

Was ist richtig Eins oder Zwei? und warum?
 
Hallo Jackie1,

mit DMA Betriebsarten habe ich mich noch nie beschäftigt. Meinst du damit? Möglicherweise kann die @bolef2k in einer freien Minute hier weiterhelfen.
 
Da bin ich leider überfragt, ISA ist ja auch nicht gerade state of the art :). Ich verstehe aber durchaus, dass die Grundlagen andere Themen behandeln.
 
Ich danke euch allen für eure Hilfe, ich gehe den Beitrag vom T-Ghost mal durch. Schönen Abend euch noch!
 

Online-Statistiken

Zurzeit aktive Mitglieder
11
Zurzeit aktive Gäste
335
Besucher gesamt
346

Neueste Themen

Beliebte Forum-Themen

X
Keine passende Antwort gefunden?