07-08-2010 07:25 PM
I am in the process of migrating my Labview software of a fiber optic sensor to an FPGA using a single board RIO. However, my program uses the pre-built Peak Detector VI, which contain some floating point math. I was wondering if there were any existing peak detection algorithms out there that uses the fixed-point math, required in the operation of the FPGA. Thanks in advance for your time and consideration.
07-09-2010 03:34 PM
mdnb2,
Hello! Our IPNet - LabVIEW FPGA Functions and Example IP website has quite a bit of great FPGA examples. Unfortunately, I didn't find anything on there for peak detection.
It wouldn't be to difficult to write a threshold algorithm that would detect a peak above a certain level, but it wouldn't be a ture peak detection.
07-09-2010 05:14 PM
Ben,
Thanks for that link. I am not sure if the threshold detector would work in my application because the peak amplitude varies from pulse to pulse. Are there any other suggestions you might have?
Thanks,
mdnb2
07-12-2010 02:51 PM - edited 07-12-2010 02:52 PM
mdnb2,
Here is a document on our website that talks about Peak Detection Using LabVIEW and Measurement Studio, though it references the VIs that are not available in FPGA, it has interesting information on peak detection in general.
As far as writing your own algorithm, here is how I would start writing one. Basic Steps :
1.) Search the array samples to find the top X number of points and their locations.
2.) Filter out multiple samples on the same peak by removing points close to other points by witdth of Y samples.
3.) Filter out low peaks by comparing the all remaining peaks to each other.