What This Document Is
This is a project assignment for Digital Systems Laboratory (CSE 465M) at Washington University in St. Louis, specifically focusing on Project 2a: DSP in C. It outlines the requirements for designing and implementing a digital signal processing (DSP) filter – a Finite Impulse Response (FIR) low-pass filter – using the C programming language on a Leon processor. The project centers around practical application of DSP concepts and performance evaluation of the implemented filter.
Why This Document Matters
This assignment is crucial for students enrolled in a digital systems laboratory course. It’s designed for those seeking hands-on experience in translating theoretical DSP knowledge into a working system. Students will benefit from this assignment by solidifying their understanding of filter design, C programming for embedded systems, and performance analysis techniques. It’s particularly relevant when you need to apply DSP principles to a real-world hardware platform and assess its capabilities. This project will prepare you for more advanced DSP implementations and system-level design challenges.
Common Limitations or Challenges
This document details the *requirements* of the project, but it does not provide pre-written code, step-by-step implementation guides, or the actual filter coefficients. Students are expected to independently utilize provided tools and resources – like the LPFDesign tool – to generate the necessary filter parameters. It also assumes a foundational understanding of DSP theory, C programming, and the Leon processor architecture established in prior coursework. Debugging and optimization of the C code for the Leon platform will require independent problem-solving skills.
What This Document Provides
* A clear project goal: designing and implementing an FIR low-pass filter.
* Specific performance metrics to achieve and measure, including MAC/s rate and maximum sample rate.
* Guidance on testing methodologies using sine waves in both the passband and stopband.
* Hints regarding efficient coding practices, such as the use of circular buffers.
* Recommendations for code structure, including required function definitions (initFilter and dotProd).
* Information on utilizing Excel functions for data analysis and verification.
* Instructions for accessing and using the LPFDesign tool for filter coefficient generation.