CS216 – Computer Organization Laboratory

Catalog Data  
CS216 is a hands-on exploration of current and historical computer components and devices.  Hardware topics include computer boards, hard drives, memory, peripherals, and multimedia hardware.  Students also take a computer apart and reassemble it.  Software topics include assembly programming and computer benchmarking.  Students will also be required to present their research results orally on selected topics.

Pre- or Co-requisite: CS214 or EE371 (or equivalent).                                                      1 credit hour.

Instructor:   

Jeffrey N. Denenberg

Google Voice: (203) 513-9427     

School: (203) 932-7198

Email: [email protected]

Web Site: doctord.webhop.net

Office Hrs: 12:00–1:00 PM, M, T, W

Classroom: Buckman Hall 201

 

Class Hrs: 9:25AM–11:25AM, T

Textbook:     UnH Laboratory Manual - online at the course website. 

Homework: Research Topics (Oral and Written) and Written Laboratory Reports

Computer Usage:   Computer benchmarks; Hardware inspection, upgrade, disassembly and assembly.

Tutorials on the web:

HowStuffWorks: Inside a PC – A streaming video from a generally useful web site,

HowStuffWorks: Microprocessors – A series of simplified descriptions on the web,

Grading Policy:       Laboratory Reports     60%
Written Research        30%
Topic Presentation      10%     Multiple opportunities will be given

                                    Late work will be penalized!

Prepared by:            Jeffrey N. Denenberg – November 5, 2012

Course Objectives:

1.      Become familiar with the history of computer hardware

2.      Connect the theory of computer organization to the hardware

3.      Fully understand the flow of information and control through the hardware during execution of a program

4.      Develop hands-on skills for computer troubleshooting

5.      Appreciate the trade-offs inherent in different technologies/computer architectures that are used today

Course outcomes: At the completion of this course each student should be able to:

1.      Identify the internal components of a computer (laptop, desktop)

2.      Recount the major stages in the technological development of memory, mass storage, and processors

3.      Identify the speed, cost, and effectiveness trade-offs of various peripheral interfaces

4.      Identify the speed, cost, and effectiveness trade-offs of various types and sizes of memory

5.      Identify the speed, cost, and effectiveness trade-offs of various processors and co-processors

6.      Understand how the CPU implements the fetch-execute instruction cycle

7.      Develop the skill and confidence to repair, disassemble and reassemble a real computer

Schedule:

Date

Topic

Homework

References

8/28

Course Introduction

 

 

9/4

Computer Museum

1.      Museum Lab Report

2.      Research the Evolution of a Computer Component

LabReportFormat,

Lab1

 

9/11

Looking Inside Computers

Desktop vs Laptop vs. Notepad Lab Report

Lab2

9/18

Memory Technology and Evolution

 

Ram-Timeline,
RAM-History, RamHistory

9/25

Memory Arch. and Perf.
Memory Size Benchmark


Memory Benchmark Report

DRAM-HP, PhysMemArch, Lab3

10/2

Peripheral Interfaces

Peripheral Implementations and Effectiveness

 

Research a Peripheral

pc-interfaces-101
Peripheral Report

PC Peripheral Tutorial

Wiki-ListOfVideoConnectors

10/8, 10/9

Columbus Day

 No Classes

 

10/16

Multimedia
GPU Benchmark

 

GPU Benchmark Report

SuccedingWithTech.-ch6

Video card - Wikipedia

Lab4

10/23

CPU Architecture and Assembly Code

CPU-FetchExecute.pdf

CPU-Programming.pdf CPU Simulator (PIPPIN)

 

 

 

Write and Debug PIPPIN Assembly Program

The+PIPPIN+Machine.pdf

PIPPINGuide.html

PIPPIN, Lab5

 Gibson: Programming in Assembly

10/30

Sandy! No Class

 

 

11/6

Pippin Program Presentations

CPUSim3.8.0.zip

A “Fast” Assembly Machine

Download Pippin

11/13

Computer Disassembly

Log your process in Detail!

 

11/20

Computer Assembly

“Pile of Pieces” Lab Report

Lab6

11/21-23

No Classes - Thanksgiving

 

 

11/27

Last day to hand in any Assignments!