Computer Science 150:
Components and Design Techniques for Digital Systems

Prof. John Wawrzynek

Chris Fletcher
Ilia Lebedev
Brandon Myers
Kyle Wecker

Spring 2010 - Syllabus

Home | Calendar | Schedule | Grading | Documents | Honors | Staff | Syllabus | Links | Old Websites
Lectures: Tuesday and Thursday, 2:00-3:30PM, 306 Soda
Lab Lecture: Friday, 2:00-3:00pm, 125 Cory

Sections


Course Grading
  • 15% - Homework/Quizzes
  • 10% - Labs
  • 35% - Project
  • 15% - Midterm
  • 25% - Final

Textbooks
Required D. M. Harris, S. L. Harris, Digital Design and Computer Architecture ('DDCA'), Morgan Kaufmann, San Francisco, 2007. ISBN 13: 978-0-12-370497-9; ISBN 10: 0-12-370494-9

Catalog Description

EECS150: Components and Design Techniques for Digital Systems. (5)

Three hours of lecture, one hour of discussion, and three hours of laboratory per week. Prerequisites: CS61C, Electrical Engineering 40 or 42. Basic building blocks and design methods to contruct synchronous digital systems. Alternative representations for digital systems. Standard logic (SSI, MSI) vs. programmable logic (PLD, FPGA). Finite state machine design. Digital computer building blocks as case studies. Introduction to computer-aided design software. Formal hardware laboratories and substantial design project. Informal software laboratory periodically throughout semester. (F,SP) Katz, Pister, Wawrzynek.


Course Goals
  • Understand the principles and methodology of digital logic design at the gate and switch level, including both combinational and sequential logic elements.
  • Gain experience developing a relatively large and complex digital system.
  • Gain experience with modern computer-aided design tools for digital logic design.
  • Understand clocking methodologies used to control the flow of information and manage circuit state.
  • Appreciate methods for specifying digital logic, as well as the process by which a high-level specification of a circuit is synthesized into logic networks.
  • Appreciate the tradeoffs between hardware and software implementations of a given function.
  • Appreciate the uses and capabilities of a modern FPGA platform.

Policies
  • All lab assignments, including project checkpoints must be completed by the beginning of your assigned lab section on the week due. You must be ready to meet with the TAs for evaluation at the beginning of lab.
  • All reading assignments are to be completed by the lecture they are assigned for.
  • There is no late policy - late assigments are not accepted. The course material and project work in CS150 builds on itself, so be careful not to fall behind. Catching up is extremely difficult, especially as other coursework picks up mid-semester.
  • The project is a joint effort between you and your partner. You must contact both your partner and the course staff if dropping the course.
  • Homework is due Friday 2:10pm (before the lab lecture) electronically (via SVN) unless announced otherwise. Homework assignments are graded on effort using a 0-3pt scale.
  • No paper submissions will be accepted unless otherwise announced. In the event that a paper submission is arranged, the document is to be turned in outside of 125 Cory in the drop box slot.
  • You are expected to check the course website daily for assignments and announcements.
  • For all re-grades, submit a written request to the professor. All submissions are re-graded in their entirety, potentially resulting in a lower overall score.

Repository
All CS150 students are required to regularly submit assignments electronically, via the SVN versioning system.
The repository will require your course UNIX account for authentication, so be sure to change both your Windows and your UNIX passwords upon receiving the account form.

More information will be available in a few days.

Academic Honesty
Cheating will not be tolerated. See here for details.

Switching Sections
Discussion Discussions are offered strictly for your benefit, and no official procedure for switching sections is required.
Lab

Contact the course staff. Switching lab sections is typically a non-issue but needs to be approved with the staff because certain deadlines are fixed to your scheduled lab sections. Evening labs tend to be crowded, which means the TAs may not be available to answer questions on call. When chosing a project partner (will be announced in class), plan on being able to attend the same lab section.


Newsgroup and E-Mail
The CS150 Staff actively monitors the course newsgroup. Student discussion on the newsgroup is encouraged. Please note that the course cheating policy applies on the newsgroup - no solutions to homework, lab, or project assignments should be posted! This is a shared resource, and any question except those concerning personal matters should be posted on the newsgroup for others' benefit. Please do not e-mail us with course material or non-personal matters.

You can access the CS150 Newsgroup though a client such as Thunderbird or Windows Mail at news.csua.berkeley.edu. The server requires authentication, but does not use SSL. Use the following credentials for off-campus access: username="usenet", password="gobears". No authentication is required within the campus network.

The newsgroup can also be accessed via the web-based interface here.




maintained by Ilia Lebedev : ilial(at)berkeley(dot)edu
Copyright UC Berkeley EECS150 http://inst.eecs.berkeley.edu/~cs150/sp10/