ARM DMA

Bali Zoltan eltexto at freemail.hu
Thu May 25 17:11:16 CEST 2006


Igen, valami megoldásnak csak kell lennie,
hogy DMA müveletek alatt ne lazsáljon a
200 MHz-es processzor. Különben minek
tennék az UART-ot, IrDa-t a DMA- eszközök
közé. Elképzelhetetlen, hogy egy pl. 115Kbaud-os
UART   8KB-os stream.-jét megvárná a CPU mig,
ki DMA-za az UART-ra amiben 16 byte-os FIFO
van. Valami sávszélesség megosztásnak vagy órajel
lopásnak lennie kéne. Bár lehet, hogy ma már más
technikával oldják meg és más a neve is.

Köszi

Üdv  Zoli


----- Original Message -----
From: "Moczik Gabor" <pm at progzmaster.hu>
To: <elektro at tesla.hu>
Sent: Thursday, May 25, 2006 14:31
Subject: Re: ARM DMA


HWSW Famulus wrote:
> Emlekeim szerint ugy van ahogy gondolod
> A DMA-zo eszkoz par keresere a DMA controller onallaon vezerli a BUS-t
> A proci fele? na abban nem vagyok biztos, hogy
> a proci fele teljesen foglalt a BUS ilyenkor.
> Attol, hogy ket eszkoz DMA-zik, meg a DMA controller
> beszurhatja a proci mmeori kereseit is...

Szerintem nem szurja be, mivel a klasszikus megoldas az, hogy van egy BUS
REQUEST lab, erre a proci amint befejezte az aktualis utasitast vagy gepi
ciklust, elengedi a buszt, es valaszol egy BUSREQ ACK jellel. Ekkor
elkezdodik a DMA ciklus, ha keszen van, a DMA Ctrl elengedi a BUS REQ labat,
es minden megy tovabb.

A rendszer kialakitastol is fugg a dolog, ugy tudom letezik olyan megoldas,
hogy a proci pl. a felfuto orajeleknel vegez erdemi muveletet, ilyenkor a
DMA leszall a buszrol, a DMA ctrl pedig a lefuto eleknel dolgozik. Nem tudom
hirtelen, hol van igy kialakitva, talan a PC-kben van igy, vagy Z80-nal...
Az is lehet, hogy C=64-ben (ha volt DMA controller benne, most erre se
emlexem hirtelen, regen volt mar...)

--
((( Móczik Gábor  )))--((( pm -> @ -> progzmaster -> . -> hu  )))
((( Skype: moczik )))--((( Website: http://www.progzmaster.hu )))






More information about the Elektro mailing list