Download presentation
Presentation is loading. Please wait.
1
1 Building a Computer from Scratch: A Hardware Lab Sequence for Computer Science Students Michael Black American University mblack@american.edu CCSC East ~ October 10, 2008
2
2 Presentation Overview The Problem with Computer Organization Objectives Challenges Lab Sequence Student Response Future Work
3
3 Computer Organization A dense course: microprocessor, cache, assembly language, instruction set design, datapath/control, some digital design 4-credit course 50-minute laboratory period / week
4
4 Student Profile No prior electronic experience Sophomore and junior students Have had one introductory programming course 8 to 16 students CS Majors, CS Minors, and non-majors
5
5 The Problem Computer Science students view computer architecture as abstract Just lines on a chalkboard Difficulty visualizing information as electrical signals Computer Organization ought to be tangible!
6
6 Typical Approaches FPGAs Microcontrollers Single board experimental computers Same problem: Students isolated from hardware details
7
7 Goals Computer organization digital lab experience Similar to engineering students Breadboards, chips, wiring... Focus on computer design, not just digital They should build a computer Complement classroom material
8
8 Approach Build a computer from discrete components Students connect: CPU ROM and RAM external interface
9
9 Why "Retro"? More exposure to hardware Well documented, inexpensive components 8085 CPU, 2716 EPROM Build a "real" computer labs replicate commercial computers from late 70s
10
10 Challenges Lack of any electrical experience Need introductory skill-building labs Limited Time Can't spend time teaching test equipment Limited Equipment Breadboard/power supply unit, chips, wires
11
11 Lab Sequence 3 Skill-Building Labs Wiring chips on a breadboard Logic Gates Memory - Traffic Light Controller 2 labs building the computer CPU & Memory Interface and Software
12
12 Lab 1: Wiring Chips One-week module Give students chips, they determine function Teaches: Connecting wires Powering a chip
13
13 Lab 2: Make a 2-Bit Counter Longest lab - about 3 weeks Components: build 2-bit adder build D flip flop combine to form 2-bit counter Students learn: to think "electrically" to wire meticulously
14
14 Lab 3: Traffic Light Components: Construct a state machine modeling T-intersection Burn transition table to ROM Connect ROM to LEDs Teaches: Memory State machines Reinforces good wiring practices
15
15 Lab 4: Simple Computer Components: 8085 + ROM Program to count down from 15 Minimum needed to see it work
16
16 Lab 5: I/O Components: add RAM add RS-232 port write program to read numbers and subtract them write Tic-Tac-Toe game
17
17 Materials Breadboards and Power Supply units Heathikit ET-3200: available on surplus market EPROMs & EPROM programmer Available on eBay Logic gates, 8085 chip, wire, LEDs Order from electronics catalogs Tools nothing beyond a wire cutter & screwdriver
18
18
19
19 Expected vs. Actual Response Expected: Resistance to hands-on experience No test equipment = circuit failure and frustrations Actual: Very enthusiastic, uniformly positive response on evaluations Lack of test equipment taught students to reason when their circuits failed
20
20 Future Work Reduce time spent on the second lab Add an extra lab module to the course Input/output: PS/2 keyboard, LCD or VGA display Write a monitor program to control computer from the terminal USB interface for drive or peripherals
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.