CS270 Syllabus

From dftwiki3
Revision as of 08:54, 29 October 2009 by Thiebaut (talk | contribs)
Jump to: navigation, search

Back to Main Page for CSC270


Professor

Dominique Thiébaut
Ford Hall, 356.
Telephone: 3854
Office Hours: TBA, and by appointments

Introduction

CSC270 is a Computer Science course that counts as a Systems course for the major requirement. It is a laboratory-based class intended to give students a general background in computer electronics. Its natural place in the curriculum is after CSC231 (Assembly language) and before CSC364 (Computer architecture), although students can easily take CSC364 after CSC231 without any lack of background information.

The class is intended to give computer science students without a formal background in physics or electricity a general understanding of digital and microprocessor electronics. During the laboratory sessions, students experiment with two Heathkit training kits, one for digital logic (first half of the semester), and the other for microprocessor hardware (second half of the semester). The digital logic labs introduce the concepts of electrical signals, continuous and alternative currents, frequency, and the implementation of a binary system with dual voltage circuits. The microprocessor labs evolve around a Motorola 6800 8-bit microprocessor system, programmable in hexadecimal. The organization of this computer is explored, with emphasis on the microprocessor buses, random-access and read-only memories, as well as input/output (I/O) circuits.

Prerequisites

CSC231, Assembly Language, is a prerequisite (instructor's permission is required if CSC231 hasn't been taken). A background in electronics and/or physics is not necessary: The intent of this course is to be self-contained and provide a general understanding of the physical aspects of computers to non physicists.

Topics Covered

  • Logic design
  • Boolean logic. AND, OR, inverters, XOR gates. Karnaugh maps. Canonical forms.
  • Simple combinational logic gates. NAND, and NOR gates.
  • Complex logic circuits. Selectors and Multiplexers.
  • Sequential circuits. The D, JK flip-flops, and T-flip-flops..
  • Sequencers.
  • Microprocessor system design
  • Microprocessor system organization.
  • Microprocessor buses.
  • Memory organization.
  • Input/Output circuits.

Class Times

Lectures: TBA Lab: TBA

Textbook

MorrisMano.jpg

M. Morris Mano, Digital Design. , (Second, third, or fourth Edition),Prentice Hall.

Lateness Policy

No late assignment will be accepted, except for illness or personal emergencies. However, one assignment can be skipped during the semester without penalty. Recommendations for extensions from your class dean will always be honored. Please do not hesitate to check with him/her in case of emergencies, sickness, or unusual situations.

Grading

Weights used in computing the final grade

Homework Assignments

40%

Lab Reports

30%

Midterm Exam 15%

Final Exam

15%

The experiments done in each lab will be written up in a lab report, which will always be due a week later, at the beginning of the next lab. If you miss a lab, you are responsible for making it up during the week, on your own, and preferably during office hours.

The workload consists in writing weekly lab reports, and working on weekly homework assignments (there will be no heavy programming, except for short assembly programs ranging from 5 to 30 instructions, and written on paper and assembled by hand).


Teaching Assistant

The TA for the class is TBA

Intellectual Responsibility

Students in the class are strongly encouraged to use the Internet and on-line resources available when working on homework assignments or lab reports. When information is taken from an on-line resource, there should be explicit mention of it in the work handed in.

Working in groups is also an important skill to have/develop. Some assignments will allow or require collaborative work, some assignments, such as the final project, will not.

When working on an assignment that is qualified as "individual" work, students should follow these simple rules:

  • It is not acceptable for two students to work together on a problem.
  • It is not acceptable for a student to exchange written information with one another.
  • It is acceptable to point another student to an on-line resource that contains relevant information to the problem the student is trying to solve.
  • It is acceptable for a student to help another student debug his/her program, but in a limited fashion. Use good judgement when providing or refusing to provide help.
  • If for any reason one should feel he/she may have infringed these rules, one should contact the instructor prior to, or concurrently with the submission of the work.

Back to Main Page for CSC270