Login

Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

ARM websites use two types of cookie: (1) those that enable the site to function and perform as required; and (2) analytical cookies which anonymously track visitors only while using the site. If you are not happy with this use of these cookies please review our Privacy Policy to learn how they can be disabled. By disabling cookies some features of the site will not work.

ARM Community: Circular buffer NEON - ARM Community

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Circular buffer NEON Rate Topic: ****- 1 Votes

#1 User is offline   Abhishek1 

  • Member
  • Pip
  • Group: Members
  • Posts: 1
  • Joined: 02-February 12

Posted 02 February 2012 - 06:33 AM

Hi all,

Is there any way to load data from circular buffer using NEON assembly?

Regards,
abhishek
0

#2 User is offline   webshaker 

  • Regular Contributor
  • PipPipPip
  • Group: Members
  • Posts: 220
  • Joined: 07-October 10

Posted 02 February 2012 - 10:01 AM

View PostAbhishek1, on 02 February 2012 - 06:33 AM, said:

Is there any way to load data from circular buffer using NEON assembly?


Yes !
This is a good idea to use a circular buffer when you need temp memory zone.
There is no restriction to modify a ARM register used as a pointer into a NEON instruction.

Look at this instruction
vld1.32   	q0, [r4]!



When the Cortex decode this instruction what happened ?
First the instruction is put into the NEON queue, but the pushed instruction do not contained any reference to R4 it contained the value of R4.
If R4 = 0x0000ab00, the pushed instuction is
vld1.32 q0, [0x0000ab00]
the ARM can then add 8 to r4 immediatly (due to post increment)

So even if the load is pushed into the queue and will be executed few cycle later, you can modify R4 as soon as you want.


If your memory zone is 0x0000a000 to 0x0000afff
You can use
vld1.32   	q0, [r4]!
and   		r4, r4, r5          @ with r5 = 0xfffff000


This post has been edited by webshaker: 02 February 2012 - 10:02 AM

When you have eliminated the impossible, whatever remains, however improbable, must be the truth
1

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic