Course
code CC756
credit_hours 3
title Hardware and Software System Design
arbic title
prequisites
credit hours 3
Description/Outcomes A study of theory and practice in the design and implementation of DSP algorithms on programmable processors, multiprocessors, and ASICs. Specification, evaluation, and implementation of real time DSP applications on embedded DSP-based environments.
arabic Description/Outcomes
objectives
  • To study the theory and practice in the design and implementation of DSP algorithms on programmable processors, multiprocessors, and ASICs.
  •  To present the specification, evaluation, and implementation of real time DSP applications on embedded DSP-based environments.
arabic objectives
ref. books Meyer-Baese, Uwe, Digital Signal Processing with Field Programmable Gate Arrays (2nd edition), Springer-Verlag, 2004.
arabic ref. books
textbook
arabic textbook
objective set
content set
Course Content
content serial Description
1 Introduction to Programmable DSPs
  • Skillikorn`s taxonomy and classification
  • Architectures of DSP Examples of DSPs
  • Memory architectures External interface units

2 Data Path Design for DSP
  • SISC architectures Reservation tables and optimization
  • Pipeline control Synchronous data path design and retiming
  • Arithmetic circuits for DSP Multiprocessor scheduling theory

3 DSP ASIC design and VHDL
  • Introduction to VHDL and Language Fundamentals
  • Modeling DSP data and control path in VHDL

4 DSP Chip Synthesis
  • Design recommendations Compilation and coding issues
  • Joint simulation and synthesis issues
  • Synthesis Examples
  • DSP processor design

5 Specification of DSP algorithms and processor
  • Programming models and virtual machines
  • Graphical specification and requirements capture
  • Textual specification and requirements capture
  • Compilation and execution environments
  • Fixed point and floating point issues

6 Software architecture for DSP boards and systems
  • Host interfaces
  • I/O interfaces
  • Real-time operating systems

7 DSP program framework and API
  • Real-time program architecture
  • Operating system dependencies
  • Application modules and libraries
  • Implementation of virtual machines

8 Virtual prototyping of DSP applications: Examples
  • Single processor implementations
  • Multiprocessor implementations
  • Code development and debugging

9 DSP Application Demonstrations
  • Sample implementations: equalizers, coders
  • Performance measurement and optimization