ELEC 5260/ELEC 6260-6266:  Embedded Computing Systems

    Spring 2017

    Instructor: Victor P. Nelson (nelsovp@auburn.edu, Office: Broun 326)

Syllabus

Assignments

1.      Friday, 1/13/17: Read about and write a 4 to 5-page report on a commercial multimedia embedded system (smart phone, video game, music player, etc.) or an Internet of Things (I0T) system. Do not discuss “marketing” information – focus on technical details.  The report should list and describe the major components (processors, memory, input/output devices and controllers), system architecture, operating system, and other relevant system information. List all references used for the report.

2.      Wednesday, 1/25/17: Questions related to Chapter 1

3.      Friday, 2/3/17:            ARM assembly language programs. (Chapter 2)

4.      Friday, 2/10/17:          ARM functions/subroutines (Chapter 2)

5.      Wednesday, 2/15/17   DSP programming (Chap. 2); I/O operations (Chapter 3)

6.      Friday, 2/24/17:          Program-controlled I/O with GPIO pins (Chap. 3, ARM manuals)

Course Notes

1.       Wednesday, 1/11/17   Embedded systems overview (Chap. 1.1, 1.2)

2.       Friday, 1/13/17            Overview (continued), Design process (Chap. 1.3)

3.       Wednesday, 1/18/17   Design process (Chap. 1.3),   UML modeling (Chap. 1.3,1.4)

4.       Friday, 1/20/17            UML modeling (Chap. 1.3,1.4), UML example (Chap. 1.4)

5.       Monday, 1/23/17         UML example (Chap. 1.4)

6.       Wednesday, 1/25/17   ARM processor architecture (Chap. 2.1-2.3)

7.       Friday, 1/27/17            ARM processor architecture/instructions (Chap. 2.3)

8.       Monday, 1/30/17         ARM processor architecture/instructions (Chap. 2.3)

9.       Wednesday, 2/1/17     ARM processor architecture/instructions (Chap. 2.3)

10.    Friday, 2/3/17              ARM processor architecture/instructions (Chap. 2.3)

11.    Monday, 2/6/17           DSP instruction sets (Chap. 2.5)

12.    Wednesday, 2/8/17     DSP instruction sets (Chap. 2.5)

13.    Friday, 2/10/17            Busy-wait and interrupt-driven input/output (Chap. 3.1,3.2,3.3)

14.    Monday, 2/13/17         Busy-wait and interrupt-driven input/output (Chap. 3.1,3.2,3.3)

15.    Wednesday, 2/15/17   ST32F4xx general-purpose I/O support (ST32F4xx Ref. Manual).

16.    Friday, 2/17/17            ST32F4xx general-purpose I/O support (ST32F4xx Ref. Manual).

17.    Monday, 2/20/17         Midterm Quiz #1

18.    Wednesday, 2/22/17   Computer memory systems (Chap. 3.5)

19.    Friday, 2/24/17            CPUs and pipelining (Chap. 3.6)

 

 

Quizzes/Exams

·         Midterm Quiz #1: Monday Feb. 20.

·         Midterm Quiz #2: Friday, Mar. 31.

·         Final Exam: Friday, May 5, 8:00-10:00 am

Resources

·                     Marilyn Wolf "Computers as Components, 4rd Edition” web resources (slides, labs, uCs, etc.)

·                     Kiel MDK-ARM Development Software

·                     Download page: http://www.keil.com/demo/

·                     Tutorial: Installing MDK-ARM

·                     Tutorial: Creating STM32F4-Discovery Board Projects

·                     Sample assembly language source file.

·                     Sample assembly language file to be used with startup code

·                     Sample C main file to be used with startup code

·                     Tutorial: Debugging with MDK-ARM

·                     STM32F4-Discovery Kit (Bottom of the page lists vendors for ordering boards.)

·                     Cortex-M4 training for STM32F4-Discovery board using ARM Keil MDK toolkit

·                     STM32F4-Discovery “Blinky” Example (.zip file)

·                     C function to configure system core clock to 168MHz

·                     STM32 ST-LINK/V2 Utility – Go to this page, select “Design Support” tab, scroll down to “Device Programmers”, and then download and install the STM32 ST-LINK utility. This will also install the USB device driver for the ST-LINK/V2, needed to connect to the project board.

·                     STMicroelectronics

·                     STM32F407VG Microcontroller - Web Resources

·                     STM32F4xx Microcontrollers Technical Reference Manual

·                     STM32F4xx Cortex-M4 programming manual

·                     STM32F4-Discovery Board Special Function Chips:

·                     Cirrus Logic CS43L22 Audio DAC

·                     ST MP45DT02 MEMS Microphone

·                     ST LIS302DL MEMS Motion Sensor/Accelerometer (web site)

·                            Data sheet,  Application note, Class notes (scan)

·                     ST LIS3DSH MEMS Motion Sensor/Accelerometer (web site)

·                            Data sheet,  Application note, Class notes (scan)

·                     ARM Resources

·            ARM Cortex-M4 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 home page: http://www.arm.com

·                         ARM University Program: http://www.arm.com/support/university/index.php/

·               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

·                     Texas Instruments DSP Devices

·                     TMS320C5x DSP User’s Guide

·                     TMS320C55x DSP CPU Reference Guide

·                     TMS320C55x DSP User Guides

·                     I2C Bus Specification (Philips)

·                     I2S Bus Specification (Philips)

·                     LCD Graphic Display

·                         Hantronix HDM64GS12 Product Spec (equivalent to YM12864I_LCD)

·                         Samsung KS108B LCD Driver/Controller

·                         Interfacing Hantronix LCDs to an 8-bit uC (design example)

·                        Sample Drivers: HDM64GS12.c     GLCD.c

·                     UML Resources:

·                         Object Management Group (OMG)

·                         Practical UML (Borland)

·                         UML Tutorial (Kennesaw State)

·                         StarUML (UML modeling tool)

·                     Memory Devices on uCdragon Board

·                         SST39VF1601 Nor Flash Memory

·                         IS61LV51216-12T SRAM

·                     NXP/Philips LPC2292/2294 Microcontroller and "uCdragon" Board Resources

·                         LPC 2292/2294 Product Data Sheet

·                         LPC 2292/2294 User Manual

·                         uCdragon Board Photo

·                         uCdragon Board Schematics

·                         uCdragon Board Quick Start Guide

·                         Creating projects for Keil/uCdragon

·                         Summary of uCdragon board connections and resources

·                         uC Dragon Demo Program:  startup.s    hex file

·                         PREVIOUS Windows XP setup for parallel port JTAG wiggler:

·                     Student's Guide to Building a Low-Cost Development Environment

·                     Download "H-JTAG" software.    (Executable .exe file)