CS 122B Lab
You will have regular assigned labs dealing with writing programs
for an embedded general-purpose processor (an 8051 microcontroller), and
simulating and synthesizing custom single-purpose processors (using
Synopsys FPGA Express and Xilinx FPGA's, and also Synopsys Design Compiler).
In most cases, you should be able to complete the labs during scheduled
lab hours. These labs may be done with one partner.
In parallel with the regularly assigned labs, you will also have a
quarter-long project to develop an embedded system product prototype
- this quarter, the product will be an electronic book. The class
will be divided into several groups, each group competing to built the
product with the lowest cost, lowest power, and best features. Your
group will need to meet regularly starting the first week, analyze
tradeoffs, purchase parts, built a series of successively more complex
prototypes, and provide a final prototype and analysis. Thus, in
addition to learning the technical aspects of building the product,
you'll also gain experience working in an engineering group and
dealing with tight product schedules, features common in embedded
systems design companies.
Useful Resources
First Meeting
1. Introduction to the lab.
2. Introduction to the class project.
3. Review of 8051 compiler/linker tools and basics of VHDL.
4. Class assignment 1: 8051 Emulator.
Week 1
1. Introduction to the XS40 development boards.
2. Introduction to Xilinx Foundation tools.
3. Parts list for E-Book (due next week).
4. XS40 tutorials.
5. Class assignment 2: Simulation Time.
6. Lab assignment 1: Memory Mapped IO.
Week 2
1. Work on lab assignment 1.
2. Parts list for E-Book due on Wednesday.
3. Lab assignment 2: Music Generator.
4. Lab assignment 1 demo/report due on Friday.
Week 3
1. Work on lab assignment 2.
2. Lab assignment 3: Watch Dog Timer.
3. Lab assignment 2 demo/report due on Friday.
Week 4
1. Work on lab assignment 3.
2. Introduction to the Synopsys synthesis toolset.
3. Synopsys tutorials.
3. Lab assignment 3 demo/report due on Friday.
Week 5
Week 6
1. Lab assignment 5: Prefix Length.
2. Lab assignment 4 demo/report due on Wednesday.
3. Early E-Book prototype demo due on Friday.
Week 7
1. Lab assignment 6: Bus Invert.
2. Lab assignment 5 demo/report due on Wednesday.
Week 8
1. Lab assignment 6 demo/report due on Wednesday.
2. Final E-Book prototype demo due on Friday.
Week 9
Week 10
Last updated: 3/8/99