1 / 39

FPGA implementation of trapeziodal filters final presentation

FPGA implementation of trapeziodal filters final presentation. Instructor: Evgeniy Kuksin Preformed by: Ziv Landesberg Duration: 1 semester . Project goal from presentation.

xanto
Télécharger la présentation

FPGA implementation of trapeziodal filters final presentation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FPGA implementation of trapeziodal filtersfinal presentation Instructor: EvgeniyKuksin Preformed by: ZivLandesberg Duration: 1 semester

  2. Project goal from presentation • Create a FIR filter that can process pulses from photon counting detectors and perform Peak Detection using NI Labview FPGA.

  3. Progress so far • The project is completed! • Final clock rate – 125MHz (due A/D) • Successfully processing 4 channel simultaneously

  4. System description Photons FPGA - Readout To PC Peak Detector Shaper ADC +

  5. Project Block Diagram • A\D • NI 5761 • 14 bit • 125 MHz FPGA(125MHz) • Signal generator • (Preamplifier emulator)

  6. Reasons to use Trapezoidal shaper over other shapers • Trapezoidal can achieve optimal noise performance from signal. Trapezoidal Shaper, unlike many analog pulse shaper, immune to “ballistic deficit”, that causes energy distortion in the spectrum. • Trapezoidal shaper can not be implemented by analog circuits.

  7. Coefficients calculation • The Coefficients were calculated by the method at the article of “On nuclear spectrometry pulses digital shaping and processing” , the biexponential pulse part. the method is to inverse the transfer function of the pulse(making it a digital delta) , and then convolute the delta with a trapezoid. Due to the fact that both the inverse function of the pulse and the trapezoid were finite length , the resulted filter was FIR.

  8. Coefficients calculation code Calctrapez impulse response Delete zeroes from output Calc invers function of pulse

  9. The signal generation • The input signal was generated at 2 main stages : • 1) create an array with Poisson distributed digital delta’s in it. It was done by the Poisson noise generator, that each event was transformed to delta, and each none event was transformed to zero. • 2 ) transfer the deltas to linear rising- exponential decaying pulse, was done simply by convoluting the array with the response of such pulse(with cut-off values lower than exp(-10 ))

  10. Signal generation code Convolut deltas with wanted shape Shape of a pulse Impulse generating

  11. Relevant graphs to previous slide Impulses Wanted shape Resulted signal

  12. The method of building the filter The building of the filter in Labview was done using the fir template already existing in the program. So first stage was to create a fds file to generate filter from it. The second stage was to use the automatic filter generation

  13. Building fds file

  14. The generation window

  15. Synthesis result

  16. Device resources Distributed arithmetic does not use DSP units !

  17. Sucessful results at 150MHz(no noise) Input signal Shaped signal

  18. Successful result with noise Input signal Shaped signal Result of shaper with ballistic defflict histogram

  19. Trapezoid in time(no noise, but with quantization effect)

  20. Trapezoid in time(with noise)

  21. The debbug system on FPGA

  22. Final system(part1)

  23. Final system(part2)

  24. Final graph result(8 length, 1 rise time) Current Next shper (8 rise time) 6 rise time shaper

  25. Final result(16 length- 8 rise time)

  26. Final result (16 length, 6 rise time)

  27. Sum up results of last three shapers Mean-60 Std-60 Mean-120 Std-120 Std-140 Mean-140

  28. chart

  29. Amount of resource for 16 length trapez

  30. Multi channeling

  31. Compilation result of multi channeling

  32. Final timing of multi channel

  33. Result- channel 0

  34. Result- channel 1

  35. Result- channel 2

  36. Result- channel 3

  37. Sum up multi-channel results mean std

  38. conclusion • The shaper which is most resistance to noise is the 16 length, with 8(sample) rise time. But apparently he is effected by quantization effect, and he caused distortion in pulses heights( probably because they have different rise time) • The 8 length shaper is nearly unaffected by quantization effect, and is the not distortive . The third filter is kind of the middle between them, with low noise and low distortion.

  39. Conclusion(improvements) • The final system is operating at 125MHz due to the clock rate of the A/D(can only be 125MHz or 250MHz). However the “bottle neck” of the system is the FIFO to the host, so in order to increase throughput we could create the histogram of the peak detector on the FPGA himself, and send it to the host(needs slower FIFO to do it).

More Related