linux-assembly.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re Linux MIPS DSP-ASE Instructions usage
       [not found] <AANLkTin1JTDQF7CApgiykQEwKBbeL_E_O77AapbZX+q-@mail.gmail.com>
@ 2010-12-12 12:43 ` Satendra...
  0 siblings, 0 replies; only message in thread
From: Satendra... @ 2010-12-12 12:43 UTC (permalink / raw)
  To: linux-assembly; +Cc: das.asutosh

Hi ,

We are trying to use the MIPS-DSP-ASE instructions to extract bits
from a bit-stream.
The version is MIPS-32 rev 1. (Little Endian)
The problem is that, the extp and its variants extract the bits from
left-most i.e. MSB.
So each time we have to load to the accumulator, we have to reverse
the stream and then load,
and extract and then reverse. This in-turn is reducing the perfomance
rather than increasing it.

For instance,
Stream -> 111011011
extract 3-bits in C code => 011 (x = (unsigned) stream& ((1<<3 )-1) )
Load this stream to accumulator and extract 3 bits => 111

====
Now reverse the stream and load to accumulator => 110110111
extract 3 bits from accumulator => 110
Now reverse the extracted bits =>011

So we have to reverse the stream before loading to the accumulator and
reverse it again after extracting from
accumulator which reduces the performance drastically.
we guess the MIPS engineers would definitely have thought about it but
we are unable to figure out a way to use these
instructions without reversing the bit-streams.

Please can you let us know a way to use these instructions without reversing.

Here is the link to the patent:-
http://www.google.com/patents/about?id=RcGhAAAAEBAJ&dq=Microprocessor+instructions+for+efficient+bit+stream+extractions

Thanks,
Satendra

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2010-12-12 12:43 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <AANLkTin1JTDQF7CApgiykQEwKBbeL_E_O77AapbZX+q-@mail.gmail.com>
2010-12-12 12:43 ` Re Linux MIPS DSP-ASE Instructions usage Satendra...

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).