Module Identifier CS25510  
Module Title COMPUTER HARDWARE  
Academic Year 2000/2001  
Co-ordinator Dr Mark Ratcliffe  
Semester Semester 1  
Pre-Requisite MA13310 , CS15410  
Mutually Exclusive CS14020  
Course delivery Lecture   20 lectures  
  Workshop   (Up to) 1 workshop session  
  Practical   (Up to) 10 x 2 hr sessions  
Assessment Exam   2 Hours   100%  
  Supplementary examination   Will take the same form, under the terms of the Department's policy.    

General description
This module introduces digital electronics in the context of studies in software development. It extends a general understanding of computer architecture.

Aims
This module introduces students to the principles of computer hardware (digital electronics), and explains how components work at the level of gates, flip-flops etc. It provides hands-on experience of computer hardware, including the use of a microcontroller to actually control something.

Learning outcomes
On completion of this module, students will be able to:

Syllabus
1. Digital Electronics - 3 Lectures
Logic levels and voltages. Electricity: voltage and current in a wire. Electrical noise: inputs and outputs; bi-directional data flow along a (bus) wire. Types of output. Tri-state outputs.

2. Combinatorial logic - 3 Lectures
Revision of basic gates. Specific uses: address decoding, data routing, ALU functions.

3. Sequential logic - 3 Lectures
Latches (RS, D and JK). Buffers, registers, counters and shift registers.

4. Buses - 3 Lectures
Control lines. Timin diagrams. Exotica: handshaking, arbitration.

5. Example microcontroller - 4 Lectures
Overall architecture. I/O devices: digital I/O, pulse counters, pulse generators, clocks, PWM, analog I/O

6. Memory types - 1 Lecture
SRAM. DRAM. ROM. PROM. EPROM.

7. Hardware components in bigger computers - 3 Lectures
MMU. Dual-port RAM (for graphics).

8. Truth table exercise - 1 Practical
The truth table of a combinatorial logic chip.

9. Monitoring operation exercise - 4 Practicals
Watch a trivial program in operation.

10. Programming exercise - 2 Practicals
Write, download and execute some trivial program onto a microcontroller involving tangible output, preferably responding to an input of some kind. Example: ding-dong door bell.

Reading Lists
Books
** Consult For Futher Information
Ronald J. Tocci and Frank J. Ambrosio. (2000) Micorprocessors and Microcomputers: Hardware and Software. Prentice-Hall 0-13-010494-9
Peter Spasov. (1999) Microcontroller Technology: The 68HC11. Prentice-Hall 0-13-901240-0
Thomas L. Floyd. (1997) Digital Fundamentals. Prentice-Hall 0-13-573478-9