Awesome, thanks! But how can implement xcorrelate in RFNOC blocks?? It is very hard to implemented in Verilog
On Fri, Feb 25, 2022 at 5:43 PM Rob Kossler <rkoss...@nd.edu> wrote: > The MATLAB function xcorr() can be implemented in the time domain as a > convolution (or similarly an FIR filter) or in the frequency domain as a > multiplication. So, if the function is "z = xcorr(x,y)", then you can > implement this as "z = ifft(X.*conj(Y))" where X and Y are the FFTs of x > and y but with the FFT zero-padded to have length (Lx + Ly). You also need > to apply a circular shift. Here is MATLAB code that shows the equivalence. > For long sequences, it might consume less FPGA resources to implement in > the frequency domain using FFT/IFFT pairs. > > >> L = 500; > >> x = randn(L,1) + 1i*randn(L,1); > >> y = randn(L,1) + 1i*randn(L,1); > >> z = xcorr(x,y); > >> Lfft = 2^nextpow2(2*L-1); > >> z2 = circshift(ifft(fft(x,Lfft).*conj(fft(y,Lfft)),Lfft),L-1); > >> plot(abs(z-z2(1:2*L-1))) > > On Fri, Feb 25, 2022 at 2:30 AM sp h <stackprogra...@gmail.com> wrote: > >> Thanks, I know that I can use FFT but I want to implement Xcorrelate like >> xcorr Matlab directly...as an independent RFNOC blocks >> >> >> On Wed, Feb 23, 2022 at 10:56 AM sp h <stackprogra...@gmail.com> wrote: >> >>> Thanks, I know that I can use FFT but I want to implement Xcorrelate >>> like xcorr matlab directly...as a independent RFNOC blocks >>> >>> >>> On Mon, Feb 21, 2022 at 7:40 PM Rob Kossler <rkoss...@nd.edu> wrote: >>> >>>> is there a specific function (such as MATLAB 'xcorr') you want to >>>> implement? You can implement 'cconv' with a pair of FFT/IFFT and complex >>>> multiplication. If you zero-pad and use 2x length FFTs, you can >>>> alternatively obtain linear convolution using an overlap-and-add >>>> configuration. I haven't looked at 'xcorr' specifically, but my guess is >>>> that you could do what you want with an FFT/IFFT pair. >>>> Rob >>>> >>>> On Mon, Feb 21, 2022 at 6:36 AM sp h <stackprogra...@gmail.com> wrote: >>>> >>>>> How can create an RFNOC correlate block for USRP? >>>>> This thread is created to share results on searching how we can >>>>> correlate RFNOC blocks... >>>>> Anyone that had an idea, I'm glad to hear it... >>>>> thanks in advance >>>>> >>>>> _______________________________________________ >>>>> USRP-users mailing list -- usrp-users@lists.ettus.com >>>>> To unsubscribe send an email to usrp-users-le...@lists.ettus.com >>>>> >>>>
_______________________________________________ USRP-users mailing list -- usrp-users@lists.ettus.com To unsubscribe send an email to usrp-users-le...@lists.ettus.com