EE 2310 - Introduction to Digital Systems


Note: The CE/EE 2310 labs have been short of 74LS75 storage registers. Shi Pu, one of our lab TA's, tested the 74LS195 shift register and proved that it can by utilized as a storage register in a pinch. See below for the link to his instructions on the 74LS195.


All demo programs in lectures 10-13 have been posted (see below).


Brighton Hill, a student in the evening class, has found a neat fix to the "smart quote" problem in the MAC when using the MAC equivalent of NotePad. Follow this hot link to find the solution to the problem:


The two example programs with labeling for Lectures 11 and 12 have been posted. See below, in "Homework."

     Remember to check this area frequently for 2310 updates. 

Syllabus and Other Course Information

Note:  All material on this website, including homework, exercises, forms, and documents, are in Adobe Acrobat (.pdf) format.  You will need to have Adobe Acrobat Reader on your computer to access all information.  If you do not have Acrobat Reader, you can obtain it at the Adobe website or from the UTD software download site.  

EE 2310 Syllabus, Fall, 2017
EE 2310 Homework Due Dates, Fall, 2017
2310 Lab Due Dates, Fall, 2017
Faculty Bookshelf (quick reference to EE 2310 texts and places to purchase them)
EE 2310 Late Homework Policy
EE 2310 Lab Hours, TA Assignments, and TA Information, Fall, 2017
IEEE Fall 2310 Tutoring Schedule
Digital CAD Tools Which May Be Used in EE 2310
How to Take a Test in EE 2310
How to Install QtSPIM on Your Laptop
SPIM Reference Material
How to Acquire Appendices C, D, and E of the Patterson and Hennessy Text
Notes on Test #1
How to Use the 74LS195 Shift Register as a Storage Register


EE 2310 Lecture #1 -- Introduction, History of Computing
EE 2310 Lecture #2 -- Binary, Hexadecimal, and Decimal Numbers
EE 2310 Lecture #3 -- Signed Binary Numbers and Binary Codes
EE 2310 Lecture #4 -- Boolean Algebra and Combinational Digital Logic
EE 2310 Lecture #5 -- Logic Simplification Using Karnaugh Maps
EE 2310 Lecture #6 -- More Complex Combinational Logic Circuits
EE 2310 Lecture #7 -- Flip-Flops, The Foundation of Sequential Logic
EE 2310 Lecture #8 -- Registers, Counters, and Other Latch-Based Circuits
EE 2310 Lecture #9 -- Designing Digital Sequential Logic Circuits
EE 2310 Lecture #10 --Programming Fundamentals and SPIM Set-Up
EE 2310 Lecture #11 -- More Instructions, Directives, and System Calls
EE 2310 Lecture #12 -- System Calls 5 and 8 and Data Memory Instructions
EE 2310 Lecture #13 -- Decision Support Instructions
EE 2310 Lecture #14 -- Shift and Rotate, Procedures, and the Stack
EE 2310 Lecture #15 -- Constructing Loops in SPIM
EE 2310 Lecture #16 -- SPIM Programming Example
EE 2310 Lecture #17 -- Final Programming Demonstration and Bonus Material
EE 2310 Lecture #18 -- Design of the ALU or Datapath.ppt
EE 2310 Lecture #19 -- Control Unit Design and Multicycle Implementation
EE 2310 Lecture #20 -- The Pipeline MIPS Processor
EE 2310 Lecture #21 -- Memory Management in Modern Computers

SPIM Software Used as Classroom Examples

The following are .pdf versions of the SPIM programs used in lectures 10-17.  You can copy these and paste into NotePad if you are having problems with a program and want to see it run correctly.   Note: these will be available before test #3. 

Lecture 10 Demo Program 1
Lecture 10 Demo Program 2
Lecture 10 Demo Program 3
Lecture 11 Demo Program 1
Lecture 11 Demo Program 2
Lecture 11 Demo Program 3
Lecture 12 Demo Program 1
Lecture 12 Demo Program 2
Lecture 12 Demo Program 3
Lecture 13 Demo Program 1
Lecture 13 Demo Program 2
Lecture 13 Demo Program 3
Lecture 14 Demo Program 1
Lecture 14 Demo Program 2
Lecture 14 Demo Program 3
Lecture 15 Demo Program 1, Reversing a Character String
Lecture 15 Demo Program 3, Nested Loops
Lecture 15 Demo Program 2
Lecture 15 Demo Program 4
Lecture 16 Demo Program 1, Hex Number Conversion
Lecture 16 Demo Program 2
Lecture 17 Demo Program 1, Character List Alphabetization
Lecture 17 Demo Program 2

Test Review Sheets

Test review sheets are special homework assignments due on the day of the review before each test.  The test review sheet problems will be worked in class.  REVIEW SHEET ANSWERS WILL NOT BE POSTED.  TO OBTAIN THOSE ANSWERS, YOU MUST COME TO CLASS.  Note:  The test review sheets are mandatory homework.  They will be checked at the beginning of class to get credit (see syllabus).  Each check is worth 1 point on your final grade.  Therefore, getting credit for all three is equivalent to about 1/3 of a letter grade. 

Test Review #1 -- Combinational Logic and Basic Flip-Flops
Test Review #2 -- Sequential Logic and Basic Assembly Language
Test Review #3a -- More Complex SPIM Programs
Test Review #3b -- MIPS Pipeline Analysis


Note:  All homeworks will be turned in on the assigned due date (see homework due date table, link shown above).  Homework answers will be posted shortly after the due date.  Homeworks 1-8 are worth 10% of your final grade.  The semester design project is a separate homework that counts 5% of your final grade.   

Homework #1 -- Binary Numbers and Numeric Conversions
Homework #1 Solutions
Homework #2 -- Digital Logic Circuits and Simplifying Logic with Karnaugh Maps
Homework #2 Solutions
Homework #3 -- Simple Flip-Flops and Timing Diagrams
Homework #3 Solutions
Homework #4 -- Complex Flip-Flops and Sequential Logic
Homework #4 Solutions
Homework #5 -- Writing Simple Programs
Homework #5 Solutions
Homework #6 -- Basic Loop Programs
Homework #6 Solutions
Homework #7 -- More Complex Loops
Homework #7 Solutions
Homework #8 -- MIPS Pipeline Problems
Homework #8 Solutions
Design Project, Fall Semester
Class Programming Problem (not to be turned in)
Bonus Questions for Test #3
Simple Program Example, lecture 11
Simple Program Example, lecture 12

Lab Exercises

Note:  Lab exercises are due as noted in the Lab Report Due Date Chart.  The four hardware labs must be done in the ECSS 4.622 EE 1202/2310 lab room, but the software labs may be done on your own.  You must sign up for a workstation in 2-hour blocks for the hardware labs. 

Lab #1, Familiarization with Lab Equipment and Basic Logic Functions
Lab #2, Digital Adder Circuits
Lab #3, Familiarization with Bistable Circuits
Lab #4, Laboratory Design Project
Lab #5, Developing a More Complex Assembly Language Loop
Lab #6, Letter Insertion Program
EE 2310 Laboratory Report Form