Most of CPU in the world are used for realizing embedded systems performing digital signal processing applications. In this course students will learn the basics of designing, interfacing, configuring, and programming embedded systems based on both GPP and ASIP(DSP). In addition, due to the increasing adoption of programmable logic device in embedded systems, also this subject is offered. During lab sessions, students will have "hands on" lessons based on the use of hardware platforms widely adopted in the academic and industrial world.
Course outline:
- Embedded systems introduction
- Digital systems (combinatorial and sequential logic, finite state machine: HW and SW implementation). CMOS technology.
- Numerical representation. Fixed and floating point. Fractional numbers.
- Microprocessors, microcontrollers and DSPs
- Memory devices. Cache memories.
- Embedded systems programming: assembler and C. Memory mapped I/O and Programmed I/O. Polling loop and interrupt handling.
- Local and remote model of I/O devices. Network topologies. RS232. SPI
- Programming and debugging tools. Logic state analyzers.
- PLD technologies and devices.
- Il VHDL - basic concepts
- Il VHDL - FSM implementations
- Laboratory: the Microchip uC 18F452, the TI TMS320C6000 DSP, the ALtera FPGA Cyclone III and their IDEs.