CECS 201-Digital Logic Circuit Design Home

Textbook

    Logic and Computer Design Fundamentals
    4th Edition
    Mano & Kime
    Pearson Prentice Hall, 2008
    ISBN: 978-0-13-600158-0



Lab Kit

Digilab 2XL

Resources

http://www.prenhall.com/mano
http://www.cecs.csulb.edu/~rallison
http://www.digilentinc.com
http://www.xilinx.com/univ/

Learning Objectives

Given specifications in words, we will be able to design combinational and sequential logic circuits. We will be able to validate our design by simulation and by implementation on a Field Programmable Gate Array (FPGA).

Course Overview (The Big Picture - The Bird's Eye View)

Our ultimate goal is to learn how to build computers. A future course CECS 440 (Computer Architecture) deals with that topic in detail. Computers are "digital" systems and we need to master digital design fundamentals and that is the aim of this CECS 201 course.

The course has two components - Theory and Laboratory.

Theory

We begin with the digital system where values are discretized (typically into just two values of say, '1' and '0'). The opposite of 'digital' is analog where values are continuous. Digital Systems are built with basic building blocks. Some of the building blocks we cover in this course are Adders, Decoders, Multiplexers, Registers and Counters.

The building blocks are categorized into two groups called Combinational and Sequential Circuits. In combinational blocks, the output values are dependent on current input values. Combinational blocks are built with "gates". Gates give out a certain output dependent on the logical combination of the inputs. Some of the logical rules they follow are the familiar AND rule or the OR rule. Gates are the primitives and a collection of different gates in a certain way can give us a complex logic "function" and then they are called combinational "circuit" or block. In sequential circuits, the outputs depend not only on present input values but also on previous input values. They are said to be "state machines". They respond differently depending on the "state" they are in. Thus sequential circuits 'remember' or have memory. This is achieved by having digital storage elements in the circuits. Since the storage elements store values digitally as 1s and 0s, they are called "Flip Flops". Thus a sequential circuit will contain many Flip Flops in addition to the gates to perform a complex sequential task.

Laboratory

We use the Xilinx software to input the schematic diagram of the digital circuit (design entry). Then we use it to give us the waveform or timing diagram to verify the operation of the circuit (simulation). Then we 'download' the design to an actual Digilab 2XL Kit which uses a Xilinx FPGA and check whether it functions as we expect (implementation). The labs are geared towards reinforcing the theory covered in the class. The lab assignments are small and many can be completed in one lab period.

Dr. Michael Chelian
Fall 2009