On Sat, Jul 30, 2016 at 1:54 PM, Charles Steinkuehler <
[email protected]> wrote:

> DMA is not really necessary, as the PRU can read/write to the ARM
> system DRAM and the ARM can read/write to the PRU memories.  There are
> some ways DMA could improve performance of a high-performance
> application using both the ARM and the PRU heavily, but it's not a
> clear win in all cases.
>
> However, any kernel-level physical memory access for talking to the
> PRU is going to have a lot in common with doing DMA.  You need to map
> physical addresses into logical memory space, issue fence instruction
> to guarantee memory coherency, etc.  Basically, the PRU can be
> considered a "custom" DMA controller, in that it is something other
> than the application processor that is accessing and changing main
> memory contents.  The usage semantics for talking to the PRU in kernel
> space are very similar to using DMA.  Just 's/DMA/PRU/g' and you won't
> go too far wrong!  ;-)
>
> --
> Charles Steinkuehler
> [email protected]


Well, what I was thinking, and perhaps this would have more of a home on
the Beagleboard X15. . .  Is that, you have a PRU reading data in some
fashion from an external peripheral, at high speeds. Then you want to get
that data out of the PRU shared memory as fast as possible to some external
storage.

With the Beaglebones, you're going to be limited by your fastest block
device, or interface. In the case of the Beaglebone, that would probably be
USB, which as it stands ( stock ) is not really much faster than ethernet.
Real world performance that is.

But on the X15 where you have dual GbE, PCIe, USB3.0, and SATA . . . you
have much faster external "storage". IN this case, you might want a DMA
buffer in kernel space that blasts this data directly onto the storage
peripheral. All the while keeping your CPU load as low as possible, for
other potential duties.

But as I said, I have no practical hands on here, but the theory seems
possible at first glance.

-- 
For more options, visit http://beagleboard.org/discuss
--- 
You received this message because you are subscribed to the Google Groups 
"BeagleBoard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/beagleboard/CALHSORr8%3DqTEHEKUVK_dD0djzU77WJsTBcS9AB%2BTXU8Qfr8g7A%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to