Re: [beagleboard] Re: PRU Multiply and accumulate - how many cycles?

2014-04-17 Thread Bas Laarhoven
Ah, you didn't mention you were synchronizing the PRUs in your first mail! Note that use of the MAC is not that obvious, and there is (was?) little documentation. Some issues I found had to do with the overflow/carry flag. It seems to lag one cycle and it cannot be cleared without clearing the

[beagleboard] Re: PRU Multiply and accumulate - how many cycles?

2014-04-16 Thread Lenny
Thanks for the help Bas! I guess i found the problem: In my code, I used PRU0 simply as a timer with the code LOOP: WAIT(250 cycles) XOUT 14,r5,4 //transfer register r5 from PRU0 to PRU1 JMP LOOP In the meantime, PRU1 did some tasks, including multiplication using XOUT/XIN 0,r25,1 and simila

Re: [beagleboard] Re: PRU Multiply and accumulate - how many cycles?

2014-04-16 Thread Peter Hahn
Hi, thanks for the reply. I also noticed something else which might be related: To synchronize both PRU's, one sends every 250 clock cycles some data with a command XOUT 10,r13,4 which the other receives via XIN 10,r13,4. This works well. If however i mismatch the registers, that is i combine XOU

Re: [beagleboard] Re: PRU Multiply and accumulate - how many cycles?

2014-04-16 Thread Bas Laarhoven
On 16-4-2014 18:31, Lenny wrote: Hi, I started using the Multiply-and-Accumulate module of the PRU of my Beaglebone Black to construct a real-time digital filter. But as soon as I insert an instruction of the type, with any data or any of the MAC registers (r25-r29) in the code, I induce some

[beagleboard] Re: PRU Multiply and accumulate - how many cycles?

2014-04-16 Thread Lenny
Hi, I started using the Multiply-and-Accumulate module of the PRU of my Beaglebone Black to construct a real-time digital filter. But as soon as I insert an instruction of the type, with any data or any of the MAC registers (r25-r29) in the code, I induce some non-negligeable latency. MOV