19-Apr-2024 08:55 GMT.
UNDER CONSTRUCTION
Anonymous, there are 24 items in your selection
[Forum] AmigaOne's *software* DMAANN.lu
Posted on 05-Jul-2004 01:07 GMT by atmel24 comments
View flat
View list
I would like to know why the AmigaOne has a software-based DMA instead of having a northbridge that has hardware DMA built-in?
AmigaOne's *software* DMA : Comment 1 of 24ANN.lu
Posted by Anonymous on 04-Jul-2004 23:15 GMT
http://amigaworld.net/modules/newbb/viewtopic.php?forum=13&topic_id=5558&post_id=72264&viewmode=thread&order=0#72264
AmigaOne's *software* DMA : Comment 2 of 24ANN.lu
Posted by tinman on 04-Jul-2004 23:34 GMT
You can't have software based DMA. That goes against the meaning of DMA. It would appear there is a software workaround in order to be able to use DMA without corrupting data. From previous threads here, this sounds like the drivers force a MMU cache check after a DMA transfer has been completed.
AmigaOne's *software* DMA : Comment 3 of 24ANN.lu
Posted by Anonymous on 05-Jul-2004 02:48 GMT
In reply to Comment 2 (tinman):
I suppose you've never heard of CachePreDMA/CachePostDMA? hardware DMA cache coherency checking is the x86 way of doing things, the Amiga has always handled cache coherency in the OS. This allows for smoother multitasking, because that way the exact time the brief bus stall that happens when the caches are synchronized, is fully under the control of the OS. Why do you think that even Linux has problems playing video and audio, unless you use "mpeg accelerators" that buffer raw undecoded data and decode it on the video card itself? After all, a 2GHz P4 should be more than capable of decoding mpeg video, yet if you use a card that does not have "mpeg acceleration" (or the drivers don't enable it) still manages to stutter. Those brief stutters are caused by the NB syncing the caches without the knowledge of the OS.
AmigaOne's *software* DMA : Comment 4 of 24ANN.lu
Posted by Anonymous on 05-Jul-2004 02:55 GMT
In reply to Comment 3 (Anonymous):
... This is still not how a hardware DMA works ... if you would know what you are talking about - but you don't ...
AmigaOne's *software* DMA : Comment 5 of 24ANN.lu
Posted by the man in the shadows on 05-Jul-2004 03:12 GMT
Horse. Dead. Beat beat beat. Yet it still drinks water.

Hey I know... let's ask a question to a public web site when I could get the answer directly from the source if I really wanted to. In my opinion, you guys aren't asking the correct questions the way they should be asked to get the answers your looking for.

Here's what I think: They know about the problems and have found a solution to the hardware problems in software. So now they are catering to the people most interested in the hardware they purchased. Later, if there is enough demand for it, they will correct the issue with other operating systems using the same method. Think about it though, their bread and butter still sits around OS4, not Linux. I honestly don't see it happening any time soon. The A1 systems are not in any way abundant and the small handful (in comparison to windows boxes) has an even smaller Linux audience

When it comes to Linux/BSD hardware solutions, I'll stick with the dirt cheap x86 hackbox solution for almost everything but kiosks.
AmigaOne's *software* DMA : Comment 6 of 24ANN.lu
Posted by priest on 05-Jul-2004 05:33 GMT
"instead of having a northbridge that"
There really is/was not many/any AGP capable alternatives to choose from.
AmigaOne's *software* DMA : Comment 7 of 24ANN.lu
Posted by priest on 05-Jul-2004 05:40 GMT
In reply to Comment 3 (Anonymous):
"...the Amiga has always handled cache coherency in the OS."

Really? What is the source of that information? Could you provide link to the source?

"This allows for smoother multitasking, because that way the exact time the brief bus stall that happens when the caches are synchronized, is fully under the control of the OS."

Hmmm. It definitely opens some new niche possibilities....

"Why do you think that even Linux has problems playing video and audio, unless you use "mpeg accelerators" that buffer raw undecoded data and decode it on the video card itself? After all, a 2GHz P4 should be more than capable of decoding mpeg video, yet if you use a card that does not have "mpeg acceleration" (or the drivers don't enable it) still manages to stutter. Those brief stutters are caused by the NB syncing the caches without the knowledge of the OS."

Interesting theory indeed.

How does MOS handle cache coherency, I bet it's done by the HW (April chip).
How smooth is the multitaskin/multimedia on MOS?
AmigaOne's *software* DMA : Comment 8 of 24ANN.lu
Posted by Hagge on 05-Jul-2004 05:48 GMT
Please stfu, this issue has been discussed like 50 times already, what's the point. If you really want the amigaone or got one i suppose you have no choice, if you don't want it why bother.
AmigaOne's *software* DMA : Comment 9 of 24ANN.lu
Posted by Peter Gordon on 05-Jul-2004 06:25 GMT
Hahaha "Software DMA"... guess what? Theres no such thing!
AmigaOne's *software* DMA : Comment 10 of 24ANN.lu
Posted by bennymee on 05-Jul-2004 07:13 GMT
In reply to Comment 9 (Peter Gordon):
@9

If it does exists, it's name is PIO :)
AmigaOne's *software* DMA : Comment 11 of 24ANN.lu
Posted by goodone on 05-Jul-2004 07:30 GMT
In reply to Comment 3 (Anonymous):
"I suppose you've never heard of CachePreDMA/CachePostDMA? hardware DMA cache coherency checking is the x86 way of doing things, the Amiga has always handled cache coherency in the OS. This allows for smoother multitasking, because that way the exact time the brief bus stall that happens when the caches are synchronized, is fully under the control of the OS. "

That must be the silliest thing I've heard in years. You are kidding right? :-)

HINT: Poking MMU mapping is always slower than letting the HW bus snooping/cache coherency handle it.
AmigaOne's *software* DMA : Comment 12 of 24ANN.lu
Posted by Kjetil on 05-Jul-2004 11:31 GMT
In reply to Comment 11 (goodone):
I think your confused MMU maps have nothing to do whit cashes, MMU is used for isolated memory space and virtual memory,

The argument is as best pure ignorance.

DMA issue is solved whit the new drivers yet to be realised to AmigaOS40 beta users, CachePreDMA/CachePostDMA are no longer inn use inn the new drivers, so just stop trolling.
AmigaOne's *software* DMA : Comment 13 of 24ANN.lu
Posted by Amon_Re on 05-Jul-2004 12:11 GMT
Is this the twilight zone or something? Or have all the idiots from the past been released onto ann.lu?

First that 140+ flamefest two posts down, and now this? Something going on that needs deflecting or something? Or is it full moon again?
AmigaOne's *software* DMA : Comment 14 of 24ANN.lu
Posted by goodone on 05-Jul-2004 14:16 GMT
In reply to Comment 12 (Kjetil):
"MMU maps have nothing to do whit cashes,"

They have everything to do with caches. Get a clue.
AmigaOne's *software* DMA : Comment 15 of 24ANN.lu
Posted by Johan Rönnblom on 05-Jul-2004 15:11 GMT
In reply to Comment 3 (Anonymous):
That's one of the silliest claims I've heard in a long time. Yes,
there is something called CachePreDMA/CachePostDMA in AmigaOS (and
MorphOS) but just about everything else you're writing is totally
bogus.
AmigaOne's *software* DMA : Comment 16 of 24ANN.lu
Posted by Kjetil on 05-Jul-2004 19:09 GMT
In reply to Comment 14 (goodone):
If this is true then cashes can’t be used on AmigaOS3.x, your totally clue less.

A cashes is just a block of memory used to store data if that memory is your graphic card or ram module it just the same, your program or OS will need to deal whit it any form it can, after all your OS it not DMA.
AmigaOne's *software* DMA : Comment 17 of 24ANN.lu
Posted by goodone on 05-Jul-2004 20:37 GMT
In reply to Comment 16 (Kjetil):
So you continue to act as a ignorant fool?

Cachemodes are changed by poking MMU tables and flushing some ACT cache. This is what CachePreDMA / CachePostDMA does on 68040 and 68060.

To get a clue download http://www.aminet.net/dev/debug/enforcer.lha
Read Enforcer/Enforcer.guide, sections "COPYBACK mode and DMA" and "68040.library patches".
AmigaOne's *software* DMA : Comment 18 of 24ANN.lu
Posted by Anonymous on 05-Jul-2004 22:23 GMT
Software DMA, for Peter Gordon:
http://66.102.7.104/search?q=cache:aLqMOVgChiwJ:www.atmel.com/dyn/resources/prod_documents/DOC1169.PDF+definition+%22software+dma%22&hl=en
AmigaOne's *software* DMA : Comment 19 of 24ANN.lu
Posted by hammer on 06-Jul-2004 01:25 GMT
In reply to Comment 3 (Anonymous):
>After all, a 2GHz P4 should be more than capable of decoding mpeg video, yet if
>you use a card that does not have "mpeg acceleration" (or the drivers don't
>enable it) still manages to stutter.
Note that, users of Geforce 4 TI doesn't have "MPEG2 DxVA" acceleration. "MPEG2 DxVA" is use in VisiontekDTV(HDTV) products.
AmigaOne's *software* DMA : Comment 20 of 24ANN.lu
Posted by hammer on 06-Jul-2004 01:34 GMT
In reply to Comment 19 (hammer):
Edit..
"VisiontekDTV" should be "VisionDTV"(HDTV).
AmigaOne's *software* DMA : Comment 21 of 24ANN.lu
Posted by hammer on 06-Jul-2004 01:48 GMT
In reply to Comment 3 (Anonymous):
>Why do you think that even Linux has problems playing video and audio, unless you >use "mpeg accelerators" that buffer raw undecoded data and decode it on the video >card itself? After all, a 2GHz P4 should be more than capable of decoding mpeg >video, yet if you use a card that does not have "mpeg acceleration" (or the >drivers don't enable it) still manages to stutter. Those brief stutters are >caused by the NB syncing the caches without the knowledge of the OS.

Are you claiming Linux (e.g. Lindows 4.5) stutters on Athlon XP @1.5Ghz/Geforce 4 TI while playing a stored HDTV(1088) stream?
AmigaOne's *software* DMA : Comment 22 of 24ANN.lu
Posted by Peter Gordon on 06-Jul-2004 06:23 GMT
In reply to Comment 18 (Anonymous):
A clue for mr. anonymous:

Thats not DMA... if anything its a pseudo DMA. They're saying that they'll set up and interrupt server that will copy small packets of data upon receipt of an interrupt signal, using.... dun dun duuuun the ARM processor, or CPU. This means that the program running in userland doesn't have to do the copy himself, but it is STILL the processor doing the copy, and that copy is stealing cycles from the said userland program.

This technique could be used to make the ARM some kind of pseudo DMA controller if it wasn't the main processor in the system, IE the main processor tells the "DMA" ARM to start copying a file, and sets up a timer to interrupt it regularily from whatever other tasks it has to copy data around.

The AmigaOne, however, doesn't do any of that. So your amazing link has nothing to do with the point in hand and just proves you know how to use google, not that you have a clue what you're talking about.
AmigaOne's *software* DMA : Comment 23 of 24ANN.lu
Posted by Don Cox on 06-Jul-2004 07:27 GMT
In reply to Comment 22 (Peter Gordon):
"This technique could be used to make the ARM some kind of pseudo DMA controller if it wasn't the main processor in the system, IE the main processor tells the "DMA" ARM to start copying a file, and sets up a timer to interrupt it regularily from whatever other tasks it has to copy data around."

In other words, use an ARM as a bridge chip. One would expect chips specifically designed as Northbridge or Southbridge chips to work better.
AmigaOne's *software* DMA : Comment 24 of 24ANN.lu
Posted by Peter Gordon on 06-Jul-2004 09:54 GMT
In reply to Comment 23 (Don Cox):
Exactly.
Anonymous, there are 24 items in your selection
Back to Top