Reply by Rick Lyons February 16, 20122012-02-16
On Wed, 15 Feb 2012 11:30:45 -0500, robert bristow-johnson
<rbj@audioimagination.com> wrote:

>On 2/14/12 8:28 PM, Rick Lyons wrote: >> >> >> Roughly 30 minutes after I submitted my last post >> here I received an E-mail from Eugene Hogenauer. >> >> stan and I were correct. The 'B_max' variable in >> Hogenauer's famous paper represents the index >> number of the most significant bit in a binary word. >> > > >i think the " ... - 1 " in Eq 11 made that clear. > >just glossing over the paper, i haven't been able to differentiate the >meanings or R and M, but they were always multiplied together anyway and >their product represented something proportional to gain in a linear >sense. so, for bit growth, it's log2(R*M) (if it were dB growth it >would be a log of a different base) then if you cascade that N times, >it's N*log2(R*M). if you start out in B_in bits in the input word >width, then the output word width is gonna be > > B_out = N*log2(R*M) + B_in > >if you start out with the LSB index being 0, then the MSB index is B_out >- 1. > >i thought it was clear from the beginning.
Hi Robert, Well yes, you're right. There was no question about what was the index value of the MSB of a binary word. The question was, "What is the definition of the 'Bmax' variable in Hogenauer's Equation (11)?" Hogenaurer used the 'Bmax' variable to describe the number of bits needed to accommodate accumulator register bit growth due to the gain in a CIC filter. And I think the letters 'max' naturally misled some readers into thinking that 'Bmax' was the number of register bits needed to accommodate bit growth. I misunderstood the meaning of the 'Bmax' variable at first, as did other people. However, after re-reading parts of the text it occurred to me that 'Bmax' is actually the index value of a register's MSB, not the number of bits in the register. That realization was important enough to me that I made a red-ink note of it on my hardcopy of Hogenauer's paper. Too bad Hogenauer didn't use the variable name 'Bmsb' to represent the index number of an MSB, rather than the variable name 'Bmax'. I hope what I wrote made some sense. [-Rick-]
Reply by robert bristow-johnson February 15, 20122012-02-15
On 2/14/12 8:28 PM, Rick Lyons wrote:
> > > Roughly 30 minutes after I submitted my last post > here I received an E-mail from Eugene Hogenauer. > > stan and I were correct. The 'B_max' variable in > Hogenauer's famous paper represents the index > number of the most significant bit in a binary word. >
i think the " ... - 1 " in Eq 11 made that clear. just glossing over the paper, i haven't been able to differentiate the meanings or R and M, but they were always multiplied together anyway and their product represented something proportional to gain in a linear sense. so, for bit growth, it's log2(R*M) (if it were dB growth it would be a log of a different base) then if you cascade that N times, it's N*log2(R*M). if you start out in B_in bits in the input word width, then the output word width is gonna be B_out = N*log2(R*M) + B_in if you start out with the LSB index being 0, then the MSB index is B_out - 1. i thought it was clear from the beginning. -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."
Reply by Rick Lyons February 14, 20122012-02-14

Hi,
  Roughly 30 minutes after I submitted my last post 
here I received an E-mail from Eugene Hogenauer.

stan and I were correct.  The 'Bmax' variable in 
Hogenauer's famous paper represents the index 
number of the most significant bit in a binary word.

See Ya',
[-Rick-]
Reply by Rick Lyons February 14, 20122012-02-14

Hi,
  I surfed all over Hell-n-back on the 
Internet and finally found a residential phone 
number for Eugene Hogenauer.  After several days 
of calling that number no one ever answered the 
phone, and there was no answering machine.

Eric Jacobsen gave me the name of Hogenauer's 
employer in Silicon Valley.  Yesterday I called 
Hogenauer at his work and briefly described my 
'definition of Bmax' question.  Because he 
hadn't thought about CIC filters for years we 
agreed that I'd put my question in an E-mail 
that I'd send to him, which I did later yesterday 
morning.  I hope Hogenauer answers my E-mail.

See Ya',
[-Rick-]
Reply by Eric Jacobsen February 11, 20122012-02-11
On Fri, 10 Feb 2012 09:59:05 -0800, Rick Lyons
<R.Lyons@_BOGUS_ieee.org> wrote:

> >Hi Guys, > I have a question for any of you who have studied >Hogenauer's original paper on cascaded integrator-comb >(CIC) digital filters. > > E. Hogenauer, E. "An Economical Class of Digital > Filters For Decimation and Interpolation," IEEE > Trans. Acoust. Speech and Signal Proc., Vol. ASSP-29, > April 1981, pp. 155-162. > >I'm having a disagreement with the a signal processing >engineer. One of us thinks that Hogenauer's 'Bmax' >variable in Hogenauer's Equation (11) represents the >number of bits in a binary word. The other one of us >thinks that the 'Bmax' variable represents the index >of the most significant bit in a binary word. > >To illustrate our difference of opinions: in one >interpretation, for an 8-bit binary word, Bmax = 8. >In the other interpretation Bmax = 7. > >Do any of you have an opinion on what is the definition >of Hogenauer's 'Bmax' variable? > >This is not just a friendly disagreement. We'd like >to know the true definition of 'Bmax' in preparation >for an upcoming DSP publication. > >Thanks for your help. >[-Rick-]
Rick, Sent ya an email about this. Your answer may be closer than you think. ;) Eric Jacobsen Anchor Hill Communications www.anchorhill.com
Reply by stan February 11, 20122012-02-11
Rick Lyons wrote:
> On Fri, 10 Feb 2012 15:26:27 -0500, stan <smoore@exis.net> wrote:
> Thanks for going to the trouble to give me > your opinion. Your thoughts are duly noted.
No problem.
> The origin of my question is that Prentice Hall > Publishing has asked me to review a manuscript > for a potential DSP book. In that manuscript, > the author gives a definition of Bmax that differs > from my definition of Bmax. This uncertainty is > now like 'a burr under my saddle'. I'd sure > like to resolve this question.
A very quick internet scan turned up different equations last night. I still don't know if it's off by one error or 0 vs 1 based indexing. FWIW, I would typically go to your book to refresh myself before reading that paper. If I could suggest, this seems to scream out for a worked example (in the book) to mitigate the ambiguity no matter who is correct. The fact that at least two knowledgeable people see it different removes any doubt about the existence of ambiguity and the goal is clarity. Of course a good smackdown cage match every now and then is good for the soul.
Reply by stan February 11, 20122012-02-11
robert bristow-johnson wrote:

> i would agree. i think that the smoking pistol is the "- 1" term > that resides in Eq. 11. i believe that the word width of the output > is B_max + 1. but that's just my first impression.
I thought that was important too.
>> Sliderules at ten paces :) > > well, don't bring a sliderule to a gunfight. i've tried that a few > different times and have lost each and every time. (at least i have the > consolation of being "right". dead, but right.)
Kevlar case? With todays focus on teams, it seems but a short step to a Roman Phalanx kind of technique. Somehow brings to mind my favorite usenet argument: self deprecating engineer statment offended party makes speech about professionalism and need to stop self deprecating pack senses weakness and circles, someone uses "nerd" offended party reponds with OED definition of the word "nerd" someone points out that only a nerd would look up "nerd" in OED someone else mentions "anal retentive" someone asks if "anal retentive" needs a hyphen the crowd dispersed instantly
Reply by robert bristow-johnson February 11, 20122012-02-11
On 2/10/12 3:26 PM, stan wrote:
...
> My first impression based on quotes like these > > "If the number of bits in the input data stream is B_in, then > the register growth can be used to calculate B_max, the most > significant bit at the filter output." > > "Not only is B_max the MSB at the filter output, but it is also > the MSB for all stages of the filter." > > He also mentions just after equation 11 that the LSB is 0. >
i think they mean that the *index* of the LSB is 0. like this: B_max X = SUM{ x_n * 2^n } n=0 x_n = 0 or 1 and is the "nth bit" in the word.
> is that B_max refers to the MSB which I nearly always take as zero > based. My preliminary vote is B_max=7 in your hypothetical.
i would agree. i think that the smoking pistol is the "- 1" term that resides in Eq. 11. i believe that the word width of the output is B_max + 1. but that's just my first impression.
> >> This is not just a friendly disagreement. We'd like >> to know the true definition of 'B_max' in preparation >> for an upcoming DSP publication. > > Sliderules at ten paces :)
well, don't bring a sliderule to a gunfight. i've tried that a few different times and have lost each and every time. (at least i have the consolation of being "right". dead, but right.) -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."
Reply by Rick Lyons February 11, 20122012-02-11
On Fri, 10 Feb 2012 15:26:27 -0500, stan <smoore@exis.net> wrote:

>Rick Lyons wrote: >> >> Hi Guys, >> I have a question for any of you who have studied >> Hogenauer's original paper on cascaded integrator-comb >> (CIC) digital filters. >>
[Snipped by Lyons]
> >I haven't read the paper yet; I just printed it and I taking it with >me as I'm going out to eat. > >My first impression based on quotes like these > >"If the number of bits in the input data stream is Bin, then >the register growth can be used to calculate Bmax, the most >significant bit at the filter output." > >"Not only is Bmax the MSB at the filter output, but it is also >the MSB for all stages of the filter." > >He also mentions just after equation 11 that the LSB is 0. > >is that Bmax refers to the MSB which I nearly always take as zero >based. My preliminary vote is Bmax=7 in your hypothetical. > > >Sliderules at ten paces :)
Hi Stan, Thanks for going to the trouble to give me your opinion. Your thoughts are duly noted. The origin of my question is that Prentice Hall Publishing has asked me to review a manuscript for a potential DSP book. In that manuscript, the author gives a definition of Bmax that differs from my definition of Bmax. This uncertainty is now like 'a burr under my saddle'. I'd sure like to resolve this question. See Ya', [-Rick-]
Reply by Rick Lyons February 11, 20122012-02-11
On Fri, 10 Feb 2012 13:18:46 -0500, robert bristow-johnson
<rbj@audioimagination.com> wrote:

>On 2/10/12 12:59 PM, Rick Lyons wrote: >> >> I have a question for any of you who have studied >> Hogenauer's original paper on cascaded integrator-comb >> (CIC) digital filters. >> >> E. Hogenauer, E. "An Economical Class of Digital >> Filters For Decimation and Interpolation," IEEE >> Trans. Acoust. Speech and Signal Proc., Vol. ASSP-29, >> April 1981, pp. 155-162. >> > >i wouldn't mind being a Johnny-come-lately and read the paper, but i >don't have it and i am not even sure i can get it if i roll over to the >local university. if it's online-only, students and faculty with >accounts will be able to get it free, but i won't. if it's on paper >(doubtful 3 decades old) i can read it at the UVM library. but, being >IEEE Transaction, it might be too obtuse to read anyway. > >if you got it on pdf, would you mind sneaking me a copy?
Hi Robert, Your slightest wish is my most stern command. See Ya', [-Rick-]