CSEE Logo CSEE, UMBC

 [Home][Research][Courses]

Course Information:

* Course Name: CMPE310: Systems Design and Programming
* Instructor: Reza M. Rad
* Office Hours: Tu-Th 5:30-6:30pm or by appointment, Office: ITE374
* Teaching Assistant:
*Ryan Helinski
Office Hours: Mon-Wed 10:00-11:00 AM
Office: Room ITE349
Email: rhelins1@umbc.edu
Web: Check for help on projects

Announcements:

Please Check Frequently for Information on Projects, Homewroks etc.
* Calss lacation moved back to ACIV 013
* Lab discussions class moved: 10:00-11:50 ITE375
* Project #1 is now posted. See the project description below.
* Please review the GDB tutorial.
We will have a quick overview of it on lab discussion and there will be a quiz on that, Friday Feb 15th.

* Project #2 is now posted. See the project description below.
* Quiz2 will cover the lectures we had on introduction to 8086 architecture, registers and chipset and also the lab lecture on arithmetic, logic control instructions.
* MidTerm Exam : Thursday March 13th
* Project #3 is now posted. See the project description below.
* Find some sample questions here.
* Project #4 (board design project)is posted. Find the project description below.
* Quiz #3 on Friday April 18th, covers 8255 (PPI) and 8254 (timer), 8279 (keyboard and display controller) .
* ABET SURVEY: Please fill out the survey forms before May 14th.
* See a short description for 8086 emulator board programming project (Project5) below.
* Sample questions for final exam.

Lectures:

* Course Syllabus
* Introduction
* Introduction to 80x86 Architecture
* Registers in 80x86
* 80x86 Chipset
* Memory I
* Memory II
* Memory III
* Memory IV
* Basic IO: 82C55 PPI
* 82C55 datasheet
* Basic IO: 8279 / 8254, 8254 Datasheet
* Basic IO: 16550/ Serial and Parallel Ports /ADC and DAC
* Interrupts
* Mass Storage, Video, DMA
* Bus Interface
* OS Essentials
* Protected Mode Addressing
* Paging and Segmentation

Labs:

* Assebly Basics / Addressing Modes
* NASM
* Arithmetic, Logic and Control Instructions
* Data Movement Instructions
* Stack Basics and Procedure Calls
* Floating Point Coprocessor Instructions

Assembly and Project Help:

* NASM documentation
* Compiling using GCC and LD
* Using GDB for debugging assembly language
* Linux System Calls
* Official Intel Instruction Set
* How the stack works if you've assembled with NASM and loaded with LD
Reference

* Instructions on using Submit
* 8086 Instructions

Example Source Codes:

* Hello World! (hello.asm)
* Useful Macros (mine.inc)
* Convert user input to upper case (toupper.asm)
* GDB demo for toupper.asm (toupper.txt)
* Using printf for integers
* Getting command line arguments when using GCC
* Using printf for floats

Project Links:

* Link to alldatasheet.com
* OrCad demo version
* Local copy of Data Sheets for your project
* Capture CIS Tutorial
* Layout Plus Tutorial
* PCB Footprints
* Custom Footprint Libraries: 8086_FOOTPRINTS.LLB and HEADER.LLB
* Introduction to 8086 Trainer Programming Board

Assignments:

* Homework: (Due date: 03/04/08)
Chapter 3: Problems 21, 27, 33
Chapter 4: Problems 19, 20, 23, 32, 45
Chapter 5: Problems 22, 23, 36, 38
* Project #1:
Performing checksum operation on a string of input data, Due date: 19/02/08
* Project #2:
File IO and sort and merge on Integers, Due date: 03/04/08
* Project #3:
Low Pass Filter, Floating point operations, Due date: 04/01/08
* Project #4:
Board Design Project , Due date: 04/25/08
* Class Assignment #1:
A Digital Clock , Due date: 04/11/08
* Project #5:
Programing parralel ports of the 8086 emulator board , Due date: 05/13/08
Instructions on submitting assignments
* For each lab submission, completely fill out and include the cover page:
* DOC or
* PDF
* Labs will not be accepted without the cover sheet
* Late submission penalty is 20% lab grade per day late
* The definition for a late lab is if you don't hand in your hardcopy when you walk into your class (or don't submit the softcopy before coming to class) you have a late submission.
* Weekends will be considered as late days.

Acknowledgement:

I would like to acknowledge Dr. Patel for giving me the permission to use his course materials and slides for this course.

 [Home][Research][Courses]

UMBC / CSEE