CMPS 320 Logic Design
Course Description
Computer Science Department
California State University, Bakersfield
V.1, 5/6/2003

Catalog Description:

An introduction to the logical design of digital computers including the analysis and synthesis of combinatorial and sequential circuits, and the use of such circuits in building processor components and memory. The course will apply the circuit theory to the design of an elementary processor with a small instruction set with absolute addressing and a hard-wired control unit. An assembly language for this processor will also be developed. This course includes a laboratory which will cover a mix of actual circuit work together with circuit synthesis and testing using software.

Prerequisite:

Prerequisite: One course in programming or permission of the instructor.

Units:

5

Coordinator:

Wei Li

Goals/Objectives:

  • To provide the student design methodologies for electronic circuits, to use mathematical expressions to describe the functions of simple combinational and sequential circuits.
  • To provide student with the approaches to converting numerical data from one format to another, to use different formats to represent numerical data.
  • To provide the student with basic organization of the von Neumann machine, to understand Control unit; instruction fetch, decode, execution, and simple assembly/machine language programming
  • To introduce comparison of interpreters and compilers
  • To provide student with explanation of the concept of a logical layer.

Current Text:

  1. Digital fundamentals, 8rd edition, Floyd, published by Prenhall

Topics:

Digital logic and digital systems (AR1): Overview and history of computer architecture; Fundamental building blocks (logic gates, flip-flops, counters, registers); Logic expressions, minimization, sum of product forms, product of sum forms , Karnaugh map ; Register transfer notation; Physical considerations (gate delays, fan-in, fan-out).

Machine level representation of data (AR2):: Bits, bytes, and words; Numeric data representation and number bases; Signed and twos-complement representations; arithmetic operation on binary number system, and code approaches.

Assembly level machine organization (AR3): Control unit; instruction fetch, decode, and execution; Instruction sets and types (data manipulation, control, I/O); Assembly/machine language programming; I/O and interrupts.

Introduction to language translation (PL3): Machine-dependent and machine-independent aspects of translation.

Operating system principles (OS2): Applications needs and the evolution of hardware/software techniques

† Topics not included in ACM curricula

ACM Sub Areas or Units Covered :

(AR1) Digital logic and digital systems

3.5

(AR2) Machine level representation of data:

0.75

(AR3) Assembly level machine organization

0.45

(PL3) Introduction to language translation

0.15

(OS2) Operating system principles

0.15

 

AR: Architecture and Organization.

PL:  Programming Languages

OS: Operating system

 

Laboratory:

Students will spend two and half hours each week on the following subjects:
(1) Present conceptual logic design methodologies to the class, discuss some important issues of digital systems and some important IC devices for logic design.
(2) Study concepts of number systems, number systems’ conversion, arithmetic operation on binary number system, and code approaches.  

(3) Present the MultiSim software for logic design to the class, and simulate some simple logic circuits by the MultiSim.

(4) Present breadboards and some basic logic gates to the class, and use hardware to verify simulation results.
(5) Study Boolean algebra, basic laws and rules in logic design, DeMorgan’s theorem, Karnaugh map, and approaches to simplifying logic circuits.

(6) Study systematical design methodology for combinational logic circuits and build this kind of digital systems by using some IC devices.

(7) Study basic logic devices for sequential logic circuits.

(8) Study systematical design methodology for sequential logic circuits.          

(9) Present basic concepts of memory design.

(10) Present basic concepts and syntax of an assembly language and micro-computer architecture. 

Oral and Written Communication:

Each student should complete some documents on investigation, designs and implementation of logic circuits.

Social and Ethical Issues:

 

Problem Analysis:

Students analyze some key issues in logic circuits and design simple combinational logic and sequential logic circuits.

Solution Design:

Logic design will be conducted in both combinational logic and sequential logic circuits.

Version & Date

Version 1, 5/6/2003

Comments

The first draft based on ACM curricula 2001 in the format of ABET sample course description.