Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.arch > #4080

Re: Q: bit shifting

From Kai Harrekilde-Petersen <khp@harrekilde.dk>
Newsgroups comp.arch
Subject Re: Q: bit shifting
References (1 earlier) <j6mn43$2ma$1@gosset.csi.cam.ac.uk> <4ui3m8-aa91.ln1@ntp6.tmsw.no> <ujcu875u229visrassliqa7ro2os537t5a@4ax.com> <848vowr9tr.fsf@harrekilde.dk> <42f5m8-00g1.ln1@ntp6.tmsw.no>
Date 2011-10-08 11:28 +0200
Message-ID <84ipnzx267.fsf@harrekilde.dk> (permalink)
Organization SunSITE.dk - Supporting Open source

Show all headers | View raw


Terje Mathisen <"terje.mathisen at tmsw.no"> writes:

> Kai Harrekilde-Petersen wrote:
>> Robert Wessel<robertwessel2@yahoo.com>  writes:
>>
>>> On Fri, 07 Oct 2011 17:35:42 +0200, Terje Mathisen<"terje.mathisen at
>>>> If you absolutely have to limit N, then make the limit no less than
>>>> twice the register width. Masking the shift count is a really bad idea...
>>>
>>>
>>> Next you guys are going to want negative shift counts to be meaningful
>>> too!  *sheesh*
>>
>> Of course - you can't a priori know the sign of a computed value, so
>> negative shift amounts must be a shift in the opposite direction.
>>
>> We do this on our DSP.
>>
>> Oh, and shifting with>=wordsize returns 0/-1 too :-)
>
> So basically your shifter would have simplified quite a few bit
> twiddling algorithms I have implemented over the years.

I can imagine.  But our choices have come out of necessity - to
paraphrase Monty Python: "Every Clock Cycle Is Sacred" in our hearing
aid application.

For power and performance reasons, the DSP is a VLIW/"brainiac" typish
processor, so cramming as much processing into each cycle is important.
Since the complexity of detecting shift direction etc isn't that big, we
chose to add this directly into the instructions instead of having the
programmer to use 10-ish instructions to do the same (memory is tight
too).

Personally, I'd question whether you'd actually *liked* programming the
DSP.  The instruction set isn't exactly orthogonal, but then again you
can do 1-cycle/tap in a FIR filter.  Try that on an x86 or ARM ;-)

Kai
-- 
Kai Harrekilde-Petersen <khp(at)harrekilde(dot)dk>

Back to comp.arch | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Q: bit shifting Mok-Kong Shen <mok-kong.shen@t-online.de> - 2011-10-07 13:31 +0200
  Re: Q: bit shifting nmm1@cam.ac.uk - 2011-10-07 12:17 +0100
    Re: Q: bit shifting Terje Mathisen <"terje.mathisen at tmsw.no"> - 2011-10-07 17:35 +0200
      Re: Q: bit shifting Stephen Fuld <SFuld@alumni.cmu.edu.invalid> - 2011-10-07 09:31 -0700
        Re: Q: bit shifting nmm1@cam.ac.uk - 2011-10-07 17:16 +0100
          Re: Q: bit shifting Stephen Fuld <SFuld@alumni.cmu.edu.invalid> - 2011-10-07 23:13 -0700
            Re: Q: bit shifting nmm1@cam.ac.uk - 2011-10-08 09:56 +0100
              Re: Q: bit shifting Andrew Reilly <areilly---@bigpond.net.au> - 2011-10-08 21:28 +0000
              Re: Q: bit shifting timcaffrey@aol.com (Tim McCaffrey) - 2011-10-11 15:05 +0000
                Re: Q: bit shifting Sean Case <seancase@tpg.com.au> - 2011-10-16 23:15 +1000
                Re: Q: bit shifting timcaffrey@aol.com (Tim McCaffrey) - 2011-10-19 20:12 +0000
      Re: Q: bit shifting Robert Wessel <robertwessel2@yahoo.com> - 2011-10-07 12:24 -0500
        Re: Q: bit shifting Kai Harrekilde-Petersen <khp@harrekilde.dk> - 2011-10-07 19:27 +0200
          Re: Q: bit shifting Terje Mathisen <"terje.mathisen at tmsw.no"> - 2011-10-08 10:41 +0200
            Re: Q: bit shifting Kai Harrekilde-Petersen <khp@harrekilde.dk> - 2011-10-08 11:28 +0200
              Re: Q: bit shifting Andrew Reilly <areilly---@bigpond.net.au> - 2011-10-08 21:38 +0000
            Re: Q: bit shifting Robert Wessel <robertwessel2@yahoo.com> - 2011-10-08 22:57 -0500
              Re: Q: bit shifting Terje Mathisen <"terje.mathisen at tmsw.no"> - 2011-10-09 08:18 +0200
              Re: Q: bit shifting Mok-Kong Shen <mok-kong.shen@t-online.de> - 2011-10-19 15:08 +0200
            Re: Q: bit shifting Michael S <already5chosen@yahoo.com> - 2011-10-11 16:41 -0700
              Re: Q: bit shifting Terje Mathisen <"terje.mathisen at tmsw.no"> - 2011-10-12 07:55 +0200
                Re: Q: bit shifting MitchAlsup <MitchAlsup@aol.com> - 2011-10-12 10:21 -0700
                Re: Q: bit shifting Terje Mathisen <"terje.mathisen at tmsw.no"> - 2011-10-12 21:22 +0200
                Re: Q: bit shifting kenney@cix.compulink.co.uk - 2011-10-13 11:00 -0500
                Re: Q: bit shifting Terje Mathisen <"terje.mathisen at tmsw.no"> - 2011-10-13 20:32 +0200
      Re: Q: bit shifting Mike Hore <mike_horeREM@OVE.invalid.aapt.net.au> - 2011-10-11 17:08 +1100
  Re: Q: bit shifting MitchAlsup <MitchAlsup@aol.com> - 2011-10-07 12:49 -0700
    Re: Q: bit shifting nmm1@cam.ac.uk - 2011-10-07 21:20 +0100
    The word is devolving into 3 architectures (NOT?) "Andy \"Krazy\" Glew" <andy@SPAM.comp-arch.net> - 2011-10-07 19:48 -0700
      Re: The word is devolving into 3 architectures (NOT?) Mark Thorson <nospam@sonic.net> - 2011-10-07 19:56 -0800
      Re: The word is devolving into 3 architectures (NOT?) "Skybuck Flying" <Windows7IsOK@DreamPC2006.com> - 2011-10-08 04:53 +0200
      Re: The word is devolving into 3 architectures (NOT?) anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2011-10-08 17:26 +0000
    Re: Q: bit shifting Terje Mathisen <"terje.mathisen at tmsw.no"> - 2011-10-08 10:47 +0200
      Re: Q: bit shifting MitchAlsup <MitchAlsup@aol.com> - 2011-10-08 12:27 -0700
        Re: Q: bit shifting Terje Mathisen <"terje.mathisen at tmsw.no"> - 2011-10-09 08:07 +0200
          Re: Q: bit shifting MitchAlsup <MitchAlsup@aol.com> - 2011-10-09 12:36 -0700
            Re: Q: bit shifting Terje Mathisen <"terje.mathisen at tmsw.no"> - 2011-10-10 09:06 +0200
              Re: Q: bit shifting timcaffrey@aol.com (Tim McCaffrey) - 2011-10-10 15:31 +0000
                Re: Q: bit shifting Terje Mathisen <"terje.mathisen at tmsw.no"> - 2011-10-10 18:13 +0200
                Re: Q: bit shifting timcaffrey@aol.com (Tim McCaffrey) - 2011-10-10 20:27 +0000
                Re: Q: bit shifting Terje Mathisen <"terje.mathisen at tmsw.no"> - 2011-10-10 23:45 +0200
                Re: Q: bit shifting Robert Wessel <robertwessel2@yahoo.com> - 2011-10-10 17:32 -0500
                Re: Q: bit shifting timcaffrey@aol.com (Tim McCaffrey) - 2011-10-11 14:58 +0000
                Re: Q: bit shifting Robert Wessel <robertwessel2@yahoo.com> - 2011-10-11 11:30 -0500
                Re: Q: bit shifting "Andy \"Krazy\" Glew" <andy@SPAM.comp-arch.net> - 2011-10-11 10:05 -0700
                Re: Q: bit shifting timcaffrey@aol.com (Tim McCaffrey) - 2011-10-11 17:59 +0000
                Re: Q: bit shifting timcaffrey@aol.com (Tim McCaffrey) - 2011-10-11 18:00 +0000
                Re: Q: bit shifting Al Grant <algrant@myrealbox.com> - 2011-10-11 13:49 -0700
                Re: Q: bit shifting Al Grant <algrant@myrealbox.com> - 2011-10-11 14:18 -0700
                Re: Q: bit shifting Robert Wessel <robertwessel2@yahoo.com> - 2011-10-11 16:03 -0500
                Re: Q: bit shifting MitchAlsup <MitchAlsup@aol.com> - 2011-10-10 09:52 -0700
        Re: Q: bit shifting anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2011-10-09 12:24 +0000
          Re: Q: bit shifting nmm1@cam.ac.uk - 2011-10-09 13:13 +0100
  Re: Q: bit shifting Quadibloc <jsavard@ecn.ab.ca> - 2011-10-09 10:11 -0700

csiph-web