On 2/18/2015 4:08 PM, Bit Pusher wrote:
> I'm planning on reading the PRU IO inputs a large number of consecutive 
> times and move them (eventually) to DDR space. As part of my code, I tried 
> one instruction like:
> MVIW *r0.w0++, r31.w0
> which from section 5.3.4.2.3 Move Register File Indirect (MVIx)
> of the PRU reference manual seems correct to me; however when trying to 
> compile using PASM_2, I get the error message:
> 
> PRU Assembler Version 0.86
> Copyright (C) 2005-2013 by Texas Instruments Inc.
> 
> logic_pru1.p(42) Error: This form of MVIx illegal with specified core 
> version
> 
> Pass 1 : 1 Error(s), 0 Warning(s)
> 
> I have searched the PRU and the AM335X manuals and I can't find any 
> sections stating the AM3358 does not support MVIx instructions.
> Does anyone have any experience here? Thanks.

Keep reading the PRU Reference Guide.  Specifically, section 5.3.4.2.3.1
"Standard PRU Core Support" which tells you this is implemented as a
pseudo-op and only register to register moves are supported.

If you're interested in moving data from the PRU to the ARM side
quickly, check out the BeagleLogic project (from last year's Google
Summer Of Code):

https://github.com/abhishek-kakkar/BeagleLogic/wiki

...this is about as optimized as you can get for moving data from the
PRU to the Linux ARM side, and everything's already written for you
(including the kernel mode driver necessary to get the highest speeds).

-- 
Charles Steinkuehler
char...@steinkuehler.net

-- 
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 beagleboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to