1 / 20

Building a Computer from Scratch: A Hardware Lab Sequence for Computer Science Students

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. Presentation Overview. The Problem with Computer Organization Objectives Challenges Lab Sequence Student Response

colt-turner
Download Presentation

Building a Computer from Scratch: A Hardware Lab Sequence for Computer Science Students

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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. Presentation Overview • The Problem with Computer Organization • Objectives • Challenges • Lab Sequence • Student Response • Future Work

  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. 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. 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. Typical Approaches • FPGAs • Microcontrollers • Single board experimental computers Same problem: • Students isolated from hardware details

  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. Approach • Build a computer from discrete components • Students connect: • CPU • ROM and RAM • external interface

  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. 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. 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. Lab 1: Wiring Chips • One-week module • Give students chips, they determine function • Teaches: • Connecting wires • Powering a chip

  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. 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. Lab 4: Simple Computer • Components: • 8085 + ROM • Program to count down from 15 • Minimum needed to see it work

  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. 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. 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

  19. 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

More Related