Course Title and Code

Microprocessor Systems (EE2080)

Target Programme

UG

Target Discipline

EE

Course Credit

3-0-2-4 (Lecture-Tutorial-Practical-Total Credits)

Course Category

Core

Prerequisite

EE2070 Digital Systems

Course Content

Topic Lecture Hours
Introduction to Microprocessor Systems: Basic components of a microprocessor based digital system, Building an 8-bit microcomputer using logic gates with emphasis on timing and control unit, Op-code fetch machine cycle, Memory read/write machine cycles, I/O read/write machine cycles 10
Hardware Architecture: Introduction to ARM family, Evolution of the ARM architectures, RISC Vs CISC, Von-Neumann vs Harvard architecture, Memory system design, I/O system design, Peripherals, and Interfacing. Introduction to ARM Cortex M0+ with KL25Z FRDM board 8
Software Architecture: Addressing modes, flags, data transfer, string instructions, arithmetic, logical and bit manipulation, program transfer, processor control instructions, interrupt processing. Assembly language programming and high-level abstraction 6
Interfacing: General purpose input output (GPIOs), serial communications (UART, I2C and SPI), analog-digital interfaces (ADC/DAC) 10
Timers and Interrupts: Nested vector interrupt control (NVIC), Interrupt service routine, Hardware-Software and Maskable-Non-maskable interrupts, Timer architecture, Compare and Capture options, Pulse Width Modulation. 8

Lab Hours

Total: 21 hours

  • Weeks 1, 2: Building and simulating the 8-bit microcomputer using Logisim/Verilog.
  • Week 3: Introduction to Emulation software (e.g. Keil uVision)
  • Weeks 4, 5: Assembly programming exercises. Comparison of machine compiled C code into assembly with direct assembly coding.
  • Weeks 6, 7, 8, 9: Interfacing experiments using GPIO, UART and ADC-DAC
  • Weeks 10, 11, 12: Experiments on Timer and Interrupts
  • Weeks 13, 14: Individual projects

Learning Outcomes

  1. Identify, select, analyze, and handle microprocessor systems, I/O devices, and their interconnects.
  2. Generate and interpret machine language and high-level programming for microprocessor-based applications.

Text/Reference Books

  • Digital Computer Electronics by Malvino, A.P. and Brown, J.A., 3rd Edition 2001, McGraw Hill Education India. ISBN: 9780074622353
  • The Definitive Guide to ARM® Cortex®-M0 and Cortex-M0+ Processors by Yiu, Joseph, 2nd edition, 2015, Newnes. ISBN: 0128032774
  • ARM Microprocessor Systems: Cortex-M Architecture, Programming, and Interfacing by Tahir, Muhammad, and Kashif Javed, 1st edition, 2017, CRC Press. ISBN: 978-1482259384
  • Embedded Systems with ARM Cortex-M Microcontrollers in Assembly Language and C by Zhu, Yifeng, 1st edition, 2017, E-Man Press LLC. ISBN: 978-0982692660
  • Embedded Systems Fundamentals with ARM Cortex-M Based Microcontrollers: A Practical Approach by Dean, Alexander G., 1st edition, 2017, ARM Education Media. ISBN: 978-1911531036
  • ARM Assembly Language: Fundamentals and Techniques by Hohl, William, and Christopher Hinds, 2nd edition, 2014, CRC Press. ISBN: 978-1482229851