ELEC 2220 - Computer Systems

Summer Term, 2018 - Victor P. Nelson

Office Hours: MWF: 9:30-11:00 am; TH: 2:00-4:00 pm

Class Meetings:  MWF: 1:15 – 2:30 pm, Broun 125


Significant Dates:

Monday, May 28: Memorial Day holiday

Thursday-Friday, June 21-22: No class (Mini-semester 1 reading day/final exams)

Wednesday, July 4: Independence Day holiday

Friday, July 27: Classes End

Final Exam – Thursday, August 2, 4:00-6:30 p.m.


Homework Assignments (by due date)

  1. Monday, May 21 (Review – programming and digital logic design)
  2. Wednesday, May 23 (Review – programming and binary numbers)
  3. Friday, May 25 (Binary arithmetic – Text Chapter 2)
  4. Wednesday, May 30 (Assembly language project setup)


Lecture Topics and Notes (Textbook chapters in parentheses)

5/18. Overview of Computer System Organization (Chap. 1) – Class scans

5/21. Overview of Computer System Organization (Chap. 1) – Class scans

5/23. Digital representation of information (Chap. 2) – Class scans

5/25. Computer arithmetic (Chap. 2) – Class scans; , Assembly language projects (see Keil MDK-ARM software documents below.)

5/28. Memorial Day Holiday





8/2    Final Exam 4:00 – 6:30 pm

Class Resources

·         Yifeng Zhu, Embedded Systems with ARM Cortex-M Microcontrollers in Assembly Language and C, 3nd Edition, E-Man Press, LLC, 2017, ISBN 978-0-9826926-6-0. (amazon.com)  Textbook web page: http://web.eece.maine.edu/~zhu/book/lab.php

·         Jonathan W. Valvano, Introduction to ARM Cortex-M Microcontrollers (Volume 1), ISBN-13: 978-1477508992, ISBN-10: 1477508996 (amazon.com - paperback or Kindle)

Prof. Valvano’s ARM Web Site: http://users.ece.utexas.edu/~valvano/arm/


·         Other course web pages with ARM-related material:


http://www.eng.auburn.edu/~nelsovp/courses/elec3040_3050/ (STM32L100C-Discovery)

·         Kiel MDK-ARM software (download): http://www.keil.com/demo/

·         Installing MDK-ARM

·         Creating Projects for STM32F4-Discovery with MDK-ARM

·         Debugging Projects for STM32F4-Discovery with MDK-ARM

·         Sample “simple” assembly language source file.

·         STMicroelectronics Development Boards and Microcontrollers

·         Discovery Kits/Boards (Used in the course - bottom of page lists vendors. We’ve had good service from ST, Digikey and Mouser for small orders.)

o   STM32F4-Discovery Kit

o   STM32F411E-Discovery Kit

·         Resources for Discovery Boards

o   User Manuals:

§  STM32F4-Discovery   

§  STM32F411E-Discovery

o   Getting Started with STM32 MCU Discovery Kits SW Development Tools

o   Getting Started with STM32F411E Discovery SW Development Tools

o   STM App. Note 230 - Cortex-M4 training for STM32F4-Discovery board using ARM Keil MDK5 toolkit

o   STM32 ST-LINK/V2 Utility – Download and install the STM32 ST-LINK software tool; useful to “fix” and test communications with the project board.

o   STM32CubeF4 Package/Demo Software (.zip file near bottom of page)

·         Microcontroller product resouces

o   STM32F407VG Microcontroller

o   STM32F411VE Microcontroller

·         uC Data Sheets:

o   STM32F407x Microcontroller

o   STM32F411xE Microcontroller

·         uC Technical Reference Manuals”

o   STM32F4xx Technical Reference Manual

o   STM32F411xE Technical Reference Manual

·         STM32F4xx Cortex-M4 (Assembly Language) Programming Manual

·         ARM Web Page: http://www.arm.com

·         ARM Cortex-M4 Thumb-2 instruction set summary (to be provided for quizzes)

·         Cortex-M4 Devices Generic User Guide

·         ARM Thumb Instructions Quick Reference

·        ARM Architecture Reference Manual (ARM, Ltd.)

·        ARM7TDMI Technical Reference Manual (ARM, Ltd.)

·        ARM Assembly Language (Knaggs & Welsh - Bournemouth Univ.)

·        ARM University Program: http://www.arm.com/community/university/

·        Online introduction to ARM: http://www.techonline.com/learning/course/100280

·         ARM lectures by Dr. Santanu Chaudhury, EE Department, IIT Delhi: http://www.youtube.com/watch?v=4VRtujwa_b8&playnext=1&list=PL95AFA4ABA8B28627&feature=results_main

Resources for HCS12 Version of the Course      

    C:\Program Files (x86)\Freescale\CWS12v5.1\Prog