News for hackers. Stuff that matters.
Re:Direct Memory Access computing machine RP2040 by jevinskie on Saturday January 21, 2023 @10:41AM (#34467140)
Also check out the weird machine for an ARM PL080 DMA engine.

https://github.com/jowinter/dmacu

Re:Direct Memory Access computing machine RP2040 by bullen on Saturday January 21, 2023 @12:11PM (#34467902)
Is this the same as the PIO or are those separate?
Re:Direct Memory Access computing machine RP2040 by argulane on Saturday January 21, 2023 @12:12PM (#34467916)
This is seperate from the PIO. It is using the DMA engine to do computation at similar speed to AVR Arduino.
Re:Direct Memory Access computing machine RP2040 by Dork1234 on Saturday January 21, 2023 @02:15PM (#34469312)
You can push the DMA access into the PIO for some real fun. Just wish the PIO had a bit more logic/registers.

https://gregchadwick.co.uk/blog/playing-with-the-pico-pt4/

Re:Direct Memory Access computing machine RP2040 by monocasa on Saturday January 21, 2023 @02:37PM (#34469537)
> Just wish the PIO had a bit more logic/registers.

Seriously. I'd kill for PIOv2 to be some RV32E subset. Hell, I'd take stripped of normal LD/ST instructions if that made it easier for them.

Re:Direct Memory Access computing machine RP2040 by mgsouth on Saturday January 21, 2023 @06:12PM (#34471792)
Ah, you want a Propeller [1]. Basically 64 really smart digital + A/D I/O pins driven by eight 32-bit I/O processors. Enough oomph to build an entire system out of. Quirky, loads of fun if you're into cycle-counting. Not cheap, though--$18 [edit: $13 Digikey] qty 1. :(

[1] https://www.parallax.com/propeller-2

Re:Direct Memory Access computing machine RP2040 by monocasa on Saturday January 21, 2023 @07:38PM (#34472684)
That's one good example. The TI Sitara and OMAP PRUs in the Beagle(Board|Bone|etc.) boards are another example.
Re:Direct Memory Access computing machine RP2040 by azinman2 on Saturday January 21, 2023 @12:36PM (#34468198)
Is this a class project? I’m very impressed!
Re:Direct Memory Access computing machine RP2040 by kamranjon on Saturday January 21, 2023 @12:37PM (#34468201)
Does this have any practical application or is it more intended to show that it is possible?
Re:Direct Memory Access computing machine RP2040 by convolvatron on Saturday January 21, 2023 @01:10PM (#34468603)
its super cute.

but it turns out to be really useful to allow remote devices to run limited code without interrupting the host. distributed reduction is the easiest application to think of.

Re:Direct Memory Access computing machine RP2040 by drfuchs on Saturday January 21, 2023 @01:10PM (#34468601)
Yeah! I/O Channel Processors are back, baby! Now, if only I could find my IBM 370/168 POP manual around somewhere…
Re:Direct Memory Access computing machine RP2040 by alexisread on Saturday January 21, 2023 @01:30PM (#34468815)
Funnily enough, Amiga and ST blitters did a similar thing a few years back. Notably they were not much faster than the CPU (the 68030 was faster) but the main advantage was the bit shifting as well as the byte transfer functions in parallel with the CPU, that gave them an edge
Re:Direct Memory Access computing machine RP2040 by londons_explore on Saturday January 21, 2023 @02:33PM (#34469489)
So this seems to only use 3 DMA channels... So by using all 12, you could have 4 additional "cores".
Re:Direct Memory Access computing machine RP2040 by londons_explore on Saturday January 21, 2023 @02:33PM (#34469503)
This is a rather nice route for malicious code to hide itself... A full trace of what the CPU is up to could never find this.
Re:Direct Memory Access computing machine RP2040 by RantyDave on Saturday January 21, 2023 @07:26PM (#34472598)
Huh, so DMA controllers do a lot more than I thought they did. A question though: don't we need a "jump if zero" or similar in order to be Turing complete? I see a loop instruction but nothing that could be considered an "if"... https://developer.arm.com/documentation/ddi0424/d/instructio...
Re:Direct Memory Access computing machine RP2040 by detaro on Saturday January 21, 2023 @07:30PM (#34472629)
The article has a clear paragraph explaining how they do conditional jumps?
Re:Direct Memory Access computing machine RP2040 by RantyDave on Saturday January 21, 2023 @07:34PM (#34472654)
Ah. Gotcha. Sorry, my brain cleared between reading the article and the arm documentation.