Bachelor's Project: Signal Processing

2020/2021

Content, progress and pedagogy of the module

An embedded system is defined as an electronic system which is based on a computer, but the system is not in itself a computer, e.g., like a PC. According to this definition, an average person is interacting with hundreds of embedded systems on a daily basis, typically in terms of audio/video applications, wireless/mobile communication, gaming consoles, household machines, automotive and medical devices, as well as avionic and satellite based systems. In most cases, the computer embedded in such devices is conducting some kind of signal processing, i.e., an analogue signal is registered by a sensor and sampled, and next the signal is either analyzed or modified digitally by software executing on the computer. Eventually the resulting signal is finally re-converted back to the analogue domain. An interesting feature of this overall process is that in most cases it must be conduced in hard real-time, i.e., the processing must be completed within a predefined and fixed time interval. Otherwise, the system will fail, potentially leading to hazardous situations. Taking the outset in a real-life problem/application, the purpose of this project module is to specify, design, simulate, implement, test and document (part of) an embedded real-time signal processing system. In this context, the algorithm(s) which are to perform the signal processing have to be developed, simulated/evaluated (preferably using C or Matlab) and optimized, and next compiled into an executable code which can run in real-time on a programmable digital signal processor. The overall design parameters may include, but are not limited to execution time, code size, numerical robustness, and eventually energy consumption. Primarily, the project will focus on the signal processing theories and algorithms, as well as the development of optimal source- and object codes using commercially available development boards/tools, thus excluding the design and implementation of user-specific hardware.

Learning objectives

Knowledge

  • Must have knowledge about the building blocks used in a generic embedded real-time digital signal processing (DSP) system, their mutual interaction and interfaces, as well as relevant performance parameters.
  • Must have knowledge about theories and methods used to design numerically robust and resource optimal DSP algorithms suitable for being executed real-time on programmable digital signal processors.

Skills

  • Must be able to analyze a technical problem which naturally finds its solution in terms of real-time digital signal processing. Secondly, to formulate a set of specifications for the algorithms to be developed, and possibly also for the hardware/software platform to be used.
  • Must be able to apply various methods to design, simulate, and evaluate DSP algorithms according to the specifications for functionality and numerical properties. C or Matlab are candidates for executable specifications and for simulation purposes.
  • Must be able to analyze DSP algorithms from a computational complexity, structural, and data flow oriented point of view in order to specify architectural requirements for a software programmable target platform.
  • Must be able to apply design tools, such as C compilers (eventually using in-line assembly language), in order to synthesize and optimize real-time executable code for DSP algorithms.
  • Must be able to evaluate 1) an overall system solution, and 2) the design methods applied to derive the solution. This must be done in terms of relevant metrics such as execution time, memory usage, numerical robustness, and energy consumption. Secondly, from a micro-computer architectural point of view, the students must be able to evaluate the match between algorithms and architectures.
  • Must be able to communicate the above mentioned knowledge and skills (using the terminology of the domain), both orally and in a written report.

Competences

  • Must be able to identify, design, implement, and evaluate a viable solution for an embedded real-time signal processing system in a real-life context.
  • Must be able to plan, structure, and conduct a project within the scientific subject of this project module.
  • Must be able to select and extract relevant features and apply these in a new context.
  • Must be able to plan, structure and execute a project within the subject-field of this project module.
  • Must be able to identify own learning needs and structure own learning.
  • Must be able to take responsibility for their own professional development.
  • Must be able to reflect on how engineering science is impacted by and by its own impacts the development of people and society.
  • Must be able to relate to the complex social and environmental consequences associated with the application of technological solutions.

Type of instruction

Academically supervised student-governed problem oriented project work.

Lectures together with teacher/supervisor guided self-studies and/or mini projects.

Exam

Exams

Name of examBachelor's Project: Signal Processing
Type of exam
Master's thesis/final project
ECTS20
Assessment7-point grading scale
Type of gradingExternal examination
Criteria of assessmentThe criteria of assessment are stated in the Examination Policies and Procedures

Facts about the module

Danish titleBachelorprojekt: Signalbehandling
Module codeESNEITB6P7
Module typeProject
Duration1 semester
SemesterSpring
ECTS20
Language of instructionDanish and English
Empty-place SchemeYes
Location of the lectureCampus Aalborg
Responsible for the module

Organisation

Study BoardStudy Board of Electronics and IT
DepartmentDepartment of Electronic Systems
FacultyTechnical Faculty of IT and Design