# Computer Laboratory

Course material 2010–11

## Paper 2: Digital Electronics

This course is not taken by NST or PPST students.

Lecturer: Dr I.J. Wassell

No. of lectures and practical classes: 11 + 7

This course is a prerequisite for Operating Systems and Computer Design (Part IB).

Aims

The aims of this course are to present the principles of combinational and sequential digital logic design and optimisation at a gate level. The use of transistors for building gates is also introduced.

Lectures

• Introduction. Semiconductors to computers. Logic variables. Examples of simple logic. Logic gates. Boolean algebra. De Morgan’s theorem.

• Logic minimisation. Truth tables and normal forms. Karnaugh maps.

• Number representation. Unsigned binary numbers. Octal and hexadecimal numbers. Negative numbers and 2’s complement. BCD and character codes. Binary adders.

• Combinational logic design: further considerations. Multilevel logic. Gate propagation delay. An introduction to timing diagrams. Hazards and hazard elimination. Fast carry generation. Other ways to implement combinational logic.

• Introduction to practical classes. Prototyping box. Breadboard and Dual in line (DIL) packages. Wiring. Use of oscilloscope.

• Sequential logic. Memory elements. RS latch. Transparent D latch. Master-slave D flip-flop. T and JK flip-flops. Setup and hold times.

• Sequential logic. Counters: Ripple and synchronous. Shift registers.

• Synchronous State Machines. Moore and Mealy finite state machines (FSMs). Reset and self starting. State transition diagrams.

• Further state machines. State assignment: sequential, sliding, shift register, one hot. Implementation of FSMs.

• Circuits. Solving non-linear circuits. Potential divider. N-channel MOSFET. N-MOS inverter. N-MOS logic. CMOS logic. Logic families. Noise margin. [2 lectures]

Objectives

At the end of the course students should

• understand the relationships between combination logic and boolean algebra, and between sequential logic and finite state machines;

• be able to design and minimise combinational logic;

• appreciate tradeoffs in complexity and speed of combinational designs;

• understand how state can be stored in a digital logic circuit;

• know how to design a simple finite state machine from a specification and be able to implement this in gates and edge triggered flip-flops;

• understand how to use MOS transistors.