ENG SC757 - Babak Kia

subglobal1 link | subglobal1 link | subglobal1 link | subglobal1 link | subglobal1 link | subglobal1 link | subglobal1 link
subglobal2 link | subglobal2 link | subglobal2 link | subglobal2 link | subglobal2 link | subglobal2 link | subglobal2 link
subglobal3 link | subglobal3 link | subglobal3 link | subglobal3 link | subglobal3 link | subglobal3 link | subglobal3 link
subglobal4 link | subglobal4 link | subglobal4 link | subglobal4 link | subglobal4 link | subglobal4 link | subglobal4 link
subglobal5 link | subglobal5 link | subglobal5 link | subglobal5 link | subglobal5 link | subglobal5 link | subglobal5 link
subglobal6 link | subglobal6 link | subglobal6 link | subglobal6 link | subglobal6 link | subglobal6 link | subglobal6 link
subglobal7 link | subglobal7 link | subglobal7 link | subglobal7 link | subglobal7 link | subglobal7 link | subglobal7 link
subglobal8 link | subglobal8 link | subglobal8 link | subglobal8 link | subglobal8 link | subglobal8 link | subglobal8 link

Course Outline

Advanced Microprocessor Design provides a comprehensive guide for Embedded System designers and Computer Engineers. It provides a broad and in-depth overview of important topics ranging from Computer Architecture and Operating System design to PCB Layout and manufacturing guidelines. It is a fast paced course intended for graduate and post graduate students in Electrical and Computer Engineering, as well as the Embedded System professional.

Topics in the course include: hardware and software design methodologies, use of CAD and simulation tools, assemblers, compilers, debuggers, and programmers. Microprocessor architectures from Motorola, Intel, and ARM will be discussed and evaluated, as well as Operating Systems such as uC-Linux and PalmOS. Computer interfaces such as USB, PCI, Ethernet, and Bluetooth will also be discussed in detail.

A course design project is required. 4cr.

Prerequisites

ENG SC450, C and Assembly Language programming. Proficiency in Microprocessor concepts such as Interrupts, Serial Communications, and Timers also required.

Syllabus

01. Introduction to Embedded Systems Harvard Architecture, Von Neuman Machines, Design Cycle and Metrics, Microcontrollers, Microprocessors, memory & I/O, Computer Architecture.

02. From Source to Execution Assemblers, Compilers, and Debuggers. ELF debug output and object files. Debugging techniques and pitfals. Emulators, simulators, and programmers.

03. CPU08 Architecture The Freescale CPU08 processor. Addressing modes, reset and interrupt management, instruction set overview and product selection.

04. The MC68HC908GP32 Microcontroller The GP32 microcontroller and its peripherals. Power management, Clock Generation Module, Analog-to-Digital converter, Serial Communication Interface and SPI.

05. CPU12 ArchitectureAddressing modes, Interrupt Priority and Management, the 16-bit CPU architecture, Memory Management and Paging

06. The MC9S12GB60 MicrocontrollerThe GB60 microcontroller and its peripherals, memory management and paging, Timers, ADC, IIC, Flash, CAN, SCI and SPI

07. Schematic CaptureSchematic design of computer hardware, connecting Microprocessors to memory, IO, FPGAs, and electrical circuits. Analysis and verification of schematics

08. PCB LayoutBoard design theory and application, multi-layer PCB boards, signal integrity and noise handling, auto-routing, manufacturing, CE certification

09. Computer ArchitectureMicroprocessors, memory and IO design, cache, RAM, nvRAM, Flash, Real, Protected and Shadow memory, wait-states and chip-selects, Interrupts and bus structures

10. Operating SystemsReal-Time Operating Systems (RTOS), tasks, semaphores, message queues, Exception and Interrupt handling, scheduling, memory management, synchronization, resource management

11. ColdFire ArchitectureThe 32-bit ColdFire Microprocessor, instruction set, addressing modes, cache and memory management, Interrupt priority levels and management

12. The MCF5272 MicroprocessorThe 5272 Micrporocessor, Ethernet, USB, Timers, GPIO, chip-selects, cache, SDRAM interface, Background-debug mode

13. Intel IA-32 ArchitectureThe Intel IA-32 Architecture

14. ARMThe ARM CPU architecture

15. Philips ARM MicroprocessorThe Philips ARM Microprocessor and its peripherals

16. EthernetThe 7-layer OSI protocol, UDP/IP, TCP/IP, MAC, ARP, ICMP, routing, forwarding, Ethernet hardware and interfacing to a microprocessor

17. USBThe USB protocol

18. BluetoothBluetooth protocol, radio, hardware, initialization, power management, discovery, piconets and scatternets, Link Management Protocol and Link Controller, addressing

19. PCIThe Peripheral Component Interconnect bus specification, bridging, posting, forwarding, caching, overview of PCI express architecture

20. uC-LinuxThe uC-Linux kernel configuration and file system, cross-compiling and debuggin an embedded linux system

21. PalmOSHand held operating systems, in particular the PalmOS, features and capabilities, power management

22. Symmetric MultiprocessingParallel computing taxonomy, SMP and cache management, memory management of a parallel machine

23. Serial Communications 24. Introduction to I2C

Introduction to Serial Communications, UART, RS232, Baud, etc.

What is I2C, where it is used, why it is important.
25. PWM  
Pulse Width Modulation and its applications.  

 

Current Projects

  • Automatic Searching and Mapping Robot
  • PictBridge Impelementation for a Digital Photo Frame
  • Electronic BIN Identification System
  • Audio Transmission over Bluetooth
  • Linux Based Autonomous Pollution Monitoring Platform
  • Hiking Information and Rescue Device

Past Projects

  • Reconfigurable Remote Controller/Data Processor used in a satellite system.
  • Embedded GPS System, based on the HC08 Microcontroller.
  • Bluetooth based wireless communication program between nodes.
  • Microprocessor based tester for E-Ink displays.
  • Touch-screen MP3 player.
  • Bluetooth based Compact Flash card reader.