recursive average calculation

Guest #4249224
Rate this post
• ▲ useful
▼ not useful
Hello,

I am trying to do linear regression (approximation) on current samples 
that I receive from a SINC filter. The SINC filter has a clock of 20MHz 
and the output(current sample) of the SINC filter block changes every 
1.25 MHz. Now I need to use this data (whenever there is new value) to 
do Linear regression which will have a clock of 160MHz. Can anyone give 
me an idea on how to do linear regression on the samples only when there 
is a new data(every 1.25MHz) from the SINC filter block??
To perform linear regression I need to find the average value of samples 
recursively for which I would need to increment a counter whenever there 
is new sample and reset to 0 after regression calculation, I also need 
an idea on how to realise this counter??

I have the VHDL code for recursive averaging, the count is not 
propererly implemented.
Attached files:
#4249370
Rate this post
• ▲ useful
▼ not useful
You will have to implement a simple 2-way-handshake to hand over data 
and guarantee their uniqueness between modules.

Further I'm not sure what you mean by "recursive average". I'm guessing 
moving average in which case the easiest way is to use a FWFT FIFO.
Say you want to average the latest 32 data points:
1
if in_valid = '1' then
2
    sum := sum + in_data;
3
    fifo_in <= in_data; fifo_we <= '1';
4

5
    if count = 31 then
6
        sum := sum - fifo_out;
7
        fifo_re <= '1';
8
    else
9
        count <= count + 1;
10
    end if;
11
    avg <= sum / 32;
12
end if;

Reply

Note: the original post is older than 6 months. Please don't ask any new questions in this thread, but start a new one.

Formatting
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]
  • [[Title]] – link to an article
  • Link to another post: right-click its post ID (#8078628), copy the address, paste it into the text

More about formatting

Post long source code as an attachment, not in the text.

Already registered? Log in

Not shown to anyone. We send you a link; your post appears once you confirm it there.

By submitting you create a free account and accept the terms of use.