EECE2650 Logic Design Syllabus (PDF version click here)

Fall 2019

I. General Information: Instructors and Course

Section 201 Instructor:

Prof. Tricia Chigan

Office Location

Ball Hall 401

Office hours

Monday, Wednesday, Friday:  10:00am-11:00am

Phone

(978) 934-3364

Email

Tricia_Chigan@uml.edu

Lecture meeting time & location:

Section 201: Monday, Wednesday, Friday 9:00 am-9:50 am

in Bal Hall 210

 

 

Sections  203&204 Instructor:

Prof. Ryan McPherson

Office Location:

Ball Hall 219

Office hours:

Monday, Wednesday, Friday: 11:00am-11:50am and                                                           1:00pm-1:50pm or by appointment

Phone:

(978) 934-3300

E-mail:

Ryan_McPherson@uml.edu

 

Lecture meeting time & location:

Section 203: Monday, Wednesday, Friday 12:00pm-12:50pm

in Ball Hall 314

Section 204: Monday, Wednesday, Friday 2:00pm-2:50pm

in Ball Hall 210

 

Pre-requisites

(1)MATH 1320 Calculus II with a grade of C or better. OR
(2) COMP 1020 Computing II. .

 

Students for whom the course is intended

This is a required course for all Electrical & Computer Engineering, Computer Science, and Mechanical Engineering (Robotics option) majors. Students in the Electrical Engineering and Computer Engineering graduate programs can also take this course to make up deficiency.

 

Course web-pages

http://faculty.uml.edu/Tricia_Chigan/Courses/16_265/LogicDesign.html

 

II. Textbook, Notes, Reference, Software:

  • Anh Tran, "Fundamentals of Logic Design, 2nd Edition", ISBN 978-0-470-19044-9, John Wiley Custom Publishing, 2008 ((Electronic version is available online, to be announced in class)
  • Anh Tran, "Experiments in Logic Design", 2014 (To be distributed in week 4)
  • Capilano Computing Systems Ltd., “LogicWorks 5: Interactive Circuit Design Software”, Addison Wesley, 2004.

III. Course Structure and Goals:

Structure: There are three 50-minute lectures each week. There is also a laboratory component of five analysis/designs with software simulation and one circuit wiring. Homework exercises will also be assigned but not collected/graded.

Goals:   This is an introductory course, which covers the basics of digital circuit design in both theory and practice. Upon completion of the course, students are expected to be able to:

1. analyze combinational and sequential circuits,
2. design/synthesize combinational circuits using SSI and MSI circuits and programmable logic devices,
3. design/synthesize synchronous sequential circuits,
4. apply the design techniques of combinational and sequential circuits to the design of more complex circuits using register level logic.

IV. Content Outline:

The contents of the course are partitioned into four parts: fundamentals, combinational logic, sequential logic, and register level logic. How they are related to each other and the topics in each part are outlined in the chart on page 3. It also shows where the experiments are incorporated into the course.

V. Course Objectives: (for integrated graphic version, click here)

A. Fundamentals
1. Convert numbers between two systems.
2. Convert numbers to computer codes or vice versa.
3. Generate parity check bits for error detection.
4. Find the 2's complement of signed numbers.
5. Subtract two signed numbers using 2's complement arithmetic.
6. Prove the validity of Boolean equations.
7. Convert and simplify Boolean expressions to SOP and POS by algebraic methods.
8. Minimize the number of literals of a Boolean function.
9. Find the complement and dual of Boolean expressions.
10. Expansion of Boolean functions into sub-functions.
11. Construction of Boolean functions from sub-functions.
12. Represent Boolean functions by binary trees.

B. Combinational Logic
1. Convert Boolean functions to minterm, maxterm, standard SOP & POS forms.
2. Apply active-high and active-low signal levels to circuit inputs and outputs.
3. Apply DeMorgan’s theorem to circuit diagrams without using Boolean algebra.
4. Construct the Karnaugh map for a Boolean function.
5. Use Karnaugh maps to find the simplest SOP & POS for a Boolean function.
6. Recognize the exclusive-OR patterns on a K-map.
7. Partition Karnaugh maps into sub-function maps.
8. Express word problems by truth tables and Boolean functions.
9. Implement a Boolean function as various 2-level circuits.
10. Convert two-level circuits to multi-level circuits
11. Design combinational circuits using NAND, NOR, AND, OR, XOR.
12. State the functions of decoders, encoders, multiplexers, and demultiplexers.
13. Construct large-size decoders from smaller size decoders.
14. Implement Boolean functions using decoders.
15. Construct large-size decoders from smaller size decoders.
16. Implement Boolean functions using multiplexers.
17. Describe the structures and characteristics of ROM, PLA, & PAL.
18. Implement Boolean functions using programmable logic devices.

C. Sequential Logic
1. Derive the characteristics of SR latches. and flip-flops.
2. Derive the characteristic tables, characteristic equations, and state diagrams of various types of flip-flops.
3. State the operations of master-slave flip-flops and edge-triggered flip-flops.
4. Describe the operations of shift registers and counters.
5. Design universal shift registers, self-correcting counters, and ring counters.
6. Describe the difference between the Moore model and the Mealy model of synchronous sequential circuits.
7. Draw the timing diagrams for synchronous sequential circuits.
8. Derive the state diagram of a synchronous sequential circuit by following the analysis procedure.
9. Construct the state diagram of a synchronous sequential circuit.
10. Convert state diagrams to transition tables and next state maps.
11. Derive excitations to flip-flops from next state maps.
12. Design synchronous sequential circuits by following the synthesis procedures.

D. Register Level Logic
1. Partition a more complex circuit into a data path and a control circuit.
2. Describe the operations carried out by a data path.
3. Describe the operations of an algorithmic state machine (ASM) chart.
4. Convert state diagrams to ASM charts.
5. Design using one flip-flop per state.
6. Design state generators.
7. Design the control circuit.
8. Determine the functions performed by an arithmetic processor.

VI. Laboratory Structure:

There are five experiments in this course. Circuit(s) designed in each experiment are simulated by using the software package LogicWorks 4 or LogicWorks 5.0. Circuits can be designed at home or in the computer laboratory (Ball 420) or in the Digital Learning Center 204 in Lydon Library, where LogicWorks 4 is available. LogicWorks 4 is also available on vlabs.uml.edu. A report is required for each experiment. Students are also required to wire a given combinational circuit in the laboratory using SSI circuits.

Policies:

  1. 1. All experiments in this course should be done independently. No collaboration or copying is allowed. Punishments for violating this rule are listed below.
    1. Report: No credit for the experiment.
    2. Design: The letter course grade will be reduced by two levels. For example, a grade of “A” will be reduced to “B+”, “C+” will become “C-”.
    3. A letter will be sent to the student’s advisor/department chair/program director. Punishment also applies to those who are copied. Therefore safeguard your reports and designs. Do not leave them in public domain.
  2. Both the LogicWorks design .cct file and the hard copy of the lab report are due before 2:00 p.m. of the due date. There is a grace period of 48 hours. If the end of the grace period is not on a school day, the grace period is extended to 2:00 p.m. of the next school day. No report will be accepted after the grace period. Exceptions may be granted only by the course instructor under unusual circumstances beyond the control of the student.
  3. Circuits that are not designed according to requirements will not be accepted.
  4. Additional report and design requirements are described in the laboratory notes.

          The wiring of a combination circuit is scheduled on Tuesday, Thursday and Friday in week 9. Each student may sign up a slot not in conflict with their class schedule in advance.

VII. Calendar and Lecture Topics:

The course calendar and lecture topics outlined are given here. Note that:
(a) lecture topics do not necessarily follow the order of the course contents outlined in Section IV.
(b) the coverage of each topic may need more or less time than what is allocated. Thus it is the responsibility of students to attend classes and find out the exact coverage of the course materials in each class.

When class is cancelled or school is closed due to adverse weather or any other reasons, the make-up schedules for examinations will be announced separately.
In such cases, the due day for experiments will be extended to the next school day. The wiring of circuits will be re-scheduled

You may call 978-934-2121 for a recorded announcement of class cancellation.

VIII. Course Grade:

The distribution of grades is given below. The grade policies for laboratory are described separately in Section VI.                     
Laboratory           Circuit wiring                        2%
                            Experiment 1 & 5                 10%
                            Experiment 2, 3, & 4            18%

Examinations 1                                                 20%
Examinations 2                                                 20%
Final Exam                                                       25%
Class attendance                                               5%

Attendance is mandatory. The calculation of the grade for attendance is based on the following formula.
Overall grade for attendance = Total number of classes student attended /(0.80*total number of classes attendance taken)

“Attending a class” is defined as “presence for a full lecture of 50 minutes”. An index of 0.8 is factored in the formula. A student may miss 20% of the classes due to conditions beyond his/her control such as sickness, etc., but still get full credits for attendance. The maximum overall grade is 100 points.

A minimum standard of 60% in the combined experiment and examination grades is used as a measure for the passing of the course. Assignments of course (letter) grades other than "F" depend on class distributions, which usually start with a minimum of 90% for "A".

A course grade of F will be assigned for cheating in exams. A letter will be sent to the student’s advisor/department chair/program director.