260 likes | 277 Views
Explore the integration of FPGA in DSP systems, advantages, algorithms, and implementation tools. Compare PDSP vs. FPGA, building blocks, and design flexibility in advanced architectures. Discover DSP design evolution, performance analysis, and crucial design tools for FPGA applications.
E N D
FPGA Based Fuzzy Logic Controller for Semi-Active Suspensions Aws Abu-Khudhair
Outline • Types of Suspension Systems • Project Objective ENGG 6530
DSP and Reconfigurable Computing Systems Aws Abu-Khudhair
Outline • What is DSP?... • Implementation of Various Algorithms… • Advantages of FPGA in DSP… • Tools available/Mapping DSP onto FPGA… ENGG 6530
Resources [1] “A Primer on FPGA-Based DSP Applications”, by Acromag Inc. [2] “Designing Digital Signal Processing with FPGAs”, by Allen Kinast [3] “FPGA Implementations of Fast Fourier Transforms for Real-Time Signal and Image Processing”, by I.S. Uzun, A. Amira and A. Bouridane [4] “Choosing the Right Architecture for Real-Time Signal Processing Designs”, by Leon Adams. [5] “Digital Signal Processors: Applications and Architectures”, by Kurt Keutzer ENGG 6530
What is DSP? • Concerned with the manipulation of signals for: • Filtering • Transformation • Decoding/Encoding etc. • Widely implemented in PDSP ENGG 6530
DSP Applications • Wireless Communication • Audio Applications • Image Processing/Medical Imaging • Networking • Weather forecasting ENGG 6530
Various Algorithms • Finite Impulse Response (FIR) filters • Fast Fourier Transforms (FFT) • Infinite Impulse Response (IIR) filters • Forward Error Correction (FEC) • Modulation/Demodulation ENGG 6530
DSP Implementation Comparison Most suitable technology?? ENGG 6530
PDSP vs. FPGA • PDSP • Specialized microprocessor based on the Von Neumann arch. • Programmed in C/assembly for performance • Suited for complex math-intensive tasks, with conditional processing. • Limited in performance by the clock rate and number of operations it can perform per clock cycle. • e.g. TMS320C6201 has 2 multipliers + 200MHz clock 400M multipliers/second ENGG 6530
PDSP vs. FPGA cont. • FPGA • Uncommitted gates • Programmed by HDL. • Performance limited by the number of gates and clock rate. • Suited for a wide range of applications ENGG 6530
Advantages/Disadvantages of FPGA • Advantages • Parallel Processing (Performance) • Flexible Architecture • Price • Power Demand compared to DSP • Disadvantages • Higher development cost and increased time to market than DSP • Implementation of conditional processing ENGG 6530
Reg Coefficient MAC unit Data Out Important Building Blocks • Add • Subtract • Multiply • Multiply and Add • Multiply and Accumulate (MAC) Unit ENGG 6530
256 Tap FIR Filter Conventional DSP – Serial processing 256 Loops needed to process samples 1 FIR tap per DSP instruction cycle ENGG 6530
256 Tap FIR Filter cont. FPGA – Parallel processing All 256 MAC operations in 1 clock cycle ENGG 6530
× × × × × × × D Q + + + + + + + + + + + + FPGA Design Flexibility Multiply and Add FPGA – Design Optimization Parallel Semi-Parallel Serial D Q Q = (A x B) + (C x D) + (E x F) + (G x H) Cost Speed ENGG 6530
Performance of PDSP VS. FPGA ENGG 6530
DSP Design tools • C, C++ • MATLAB / Simulink • HDL (VHDL / Verilog) • Xilinx EDK/ISE ENGG 6530
MATLAB / Simulink ENGG 6530
Simulink ENGG 6530
Simulink + ISE ENGG 6530
Design flow with FPGA ENGG 6530
DSP Design Evolution from HW DSP to FPGA DSP solutions • Signal capture and sync. • Data exchange methodology • off-the shelf hardware • Logic Processing • Price/Feature • Data/Sample rates • Debugging • Use of IP cores • I/O interface • Development cycles • Deployment cost ENGG 6530
Conclusion • “The primary reason solutions were so expensive to design, slow to develop and prove, and difficult to re-deploy was that the solutions were fixed in hardware” [1] ENGG 6530
Questions? • Thank you ENGG 6530