1. Course Details

  • Level: Seniors
  • Prerequisites: CSIS 130 Computer Programming II
  • Lecture Times:  UTR 09:00 a.m. – 09:50 a.m. (Section 1), UTR 10:00 a.m. – 10:50 a.m. (Section 2)
  • Classroom: A 102
  • AY / Semester:  2009 – 2010/ Fall
  • Professor:  Dr. I. Damaj
  • Contact Details: idamaj@auk.edu.kw
  • Course Detailed Site:  http://lms.auk.edu.kw
  • Professor's Website: http://www.idamaj.net
  • Summary of Assessment Method:  2 quizzes, pop quizzes, assignments, project and presentation, and a final exam
  • Textbook: Notes to be provided by the professor
  • Software Tools: MultiSim, Quartus II
  • References: Digital Fundamentals with PLD Programming: 1/e, 2006, Prentice Hall ISBN-10: 0131701886, ISBN-13: 9780131701885. Thomas Floyd. Embedded System Design: A Unified Hardware/Software Introduction, Frank Vahid and Tony Givargis John Wiley & Sons; ISBN: 0471386782. Copyright (c) 2002. Logic and Computer Design Fundamentals, 3rd edition updated, M. Morris Mano and Charles R. Kime, Prentice Hall, 2004. Computer Organization and Design: the Hardware/Software Interface, Third Edition, David A. Patterson and John L. Hennessy, Morgan Kaufmann Publishers, 2004

2. Catalog Description

The special topic offered is “Hardware Design for Computer Scientists.” This course introduces computer science students to main software contributions in modern hardware design methodologies and tools. Moreover, the students will be introduced to basic digital hardware and their correspondence to high-level programs. Students will experience the hardware/software co-design process. In addition, Students will build on their programming skills to develop hardware cores for famous algorithms. The students will practice a hardware description language and a schematic simulation tool.

3. Student Learning Outcomes

At the end of this course the students will be able to:

  • Apply number system conversions, typically related to binary system.
  • Design simple combinational logic circuits.
  • Describe the organization of simple arithmetic and logic computational blocks.
  • Describe the organization of storage elements.
  • Implement simple combinational logic circuits under VHDL.
  • Identify High-level synthesis stages.
  • Design hardware for simple high-level programs and algorithms.
  • Assess hardware designs according to common metrics.
Details Topic Chapter No. Assessment
Week 1 - 3 Digital Computers Fundamentals 1
Weeks 3 – 6 Logic Design 2
Weeks 7 – 8 Hardware Description Languages 3 Quiz I (Week 7)
Weeks 9 High-level Synthesis 4
Week 10 - 15 Designing Hardware from Programs 5 Quiz II (Week 11)
Week 16 Design Metrics 6

5. Assessment of the Course

Attendance 5%
Pop quizzes, assignments, and project 25%
Quiz I 20%
Quiz II 20%
Final 30%