DIGITAL SIGNAL PROCESSING
Digital Signal Processing
More advanced product designs often include real-time digital signal processing capabilities. The team at Spark Product Innovation has experience designing and implementing algorithms for many different product applications typically where an incoming digital data stream is processed in the time, space or frequency domain to extract pertinent information from a system.
DSP applications where we have experience include:
• audio and speech signal processing
• real-world sensing such as SONAR, RADAR or LIDAR.
• Image processing
• Data compression & encryption
• Complex control operations
• Object tracking
• Financial trend analysis
• Seismic data processing.
- Multi-sensor fusion and feedback to control systems.
The Spark Product Innovation workflow makes extensive use of Matlab and Simulink models, allowing fixed or floating-point analysis of the algorithm and taking advantage of automatic generation of code for rapid prototyping and implementation of DSP algorithms in DSP processor, GPU or FPGA platforms.
The Spark Product Innovation team have implemented DSP algorithms on many processors including:
• Analog Devices (AD) SHARC processors
• Texas Instruments (TI) C6000 series processors including the multi-core C6678 processor.
We are also experienced in interface with high-speed ADC’s and other peripherals for the fast and efficient processing of data.
Field Programmable Gate Arrays (FPGA’s) are an established choice for low power, reliable parallel processing for DSP and complex control applications, particularly suited to “multiply & add” type algorithms such as IIR and FIR filtering of digital signals. The Spark Product Innovation team can analyse your DSP requirements, and design the FPGA solution that fits your products cost and power requirements. The Spark Product Innovation team has completed projects for several clients in the following application areas:
- Quantum communication systems (encryption) using high-speed transceivers, complex digital pattern generation and real-time processing
- Distributed Acoustic Sensing, interfacing to high-speed ADC’s and real-time complex data flows distributed via gigabit ethernet links.
- Time to Digital conversion (TDC) and interfacing to single-photon counters (TCSPC)
We have seen an increasing trend to use GPU’s for parallel real-time processing and analysis of digital data flows where power requirements are not a restriction. Spark Product Innovation has experience with the Nvidia tesla GPU range and design of multiple stream digital signal processing using the CUDA library in C/C++ as well as some of the other widely available GPU libraries such as cuBLAS, cuFFT, NPP.
Spark Product Innovation has completed designs using the Nvidia Jetson TX2 and Xavier platforms, so-called embedded “super-computers”. The Spark team can help you with all aspects of the DSP design on these platforms as well as the myriad of peripherals, cameras and other sensors that can be integrated with these systems. We can design the processing algorithms to run on the GPU as well as the adaptation of embedded Linux kernels, peripheral drivers, BSP’s and applications for your product design.