2020 Computer Logic Design

Font size  SML

Register update notification mail Add to favorite lecture list
Academic unit or major
Undergraduate major in Computer Science
Kise Kenji  Arahori Yoshitaka 
Class Format
Lecture / Exercise     
Media-enhanced courses
Day/Period(Room No.)
Intensive (W621)  
Course number
Academic year
Offered quarter
Syllabus updated
Lecture notes updated
Language used
Access Index

Course description and aims

This course teaches practical digital circuits based on the knowledge acquired in the lecture of Switching Circuit Theory.
Also, it teaches basic principles of computers and computer logic design using a simple computer as an example circuit.
In the exercise, students describe the combinational circuits and the sequential circuits in hardware description language such as Verilog HDL, and verify their operation by the simulation and implement them on the hardware board with an FPGA.

Student learning outcomes

At the end of this course, students will:
- Understand the basic structures of computer systems,
- Understand the logic design of a single-cycle processor,
- Understand the logic design of a pipeline processor,
- Obtain skills for designing simple computer systems with a hardware description language.


Computer, Instruction Set Architecture, Processor, Pipelining, Hardware Description Language, Verilog HDL, FPGA

Competencies that will be developed

Specialist skills Intercultural skills Communication skills Critical thinking skills Practical and/or problem-solving skills

Class flow

In general, a 90 minutes exercise using an FPGA board will be conducted after two 90 minutes lectures.

Course schedule/Required learning

  Course schedule Required learning
Class 1 Basic Structure of Computer Systems Understand the basic structure of computer systems.
Class 2 Logic Design Exercise(1) Logic Design Exercise(1)
Class 3 Hardware Description Language: Combinational Circuit Understand the description of combinational circuits.
Class 4 Hardware Description Language: Sequential Circuit Understand the description of sequential circuits.
Class 5 Logic Design Exercise(2) Logic Design Exercise(2)
Class 6 Hardware Description Language: Typical Circuits Understand the description of typical circuits.
Class 7 Reconfigurable Systems Understand reconfigurable systems and an FPGA board.
Class 8 Logic Design Exercise(3) Logic Design Exercise(3)
Class 9 Instruction Set Architecture: Data Representation and Addressing Understand data representation and addressing for ISA.
Class 10 Instruction Set Architecture: Arithmetic and Logic Instructions Understand arithmetic and logic instructions for ISA.
Class 11 Logic Design Exercise(4) Logic Design Exercise(4)
Class 12 Instruction Set Architecture: Load/Store and Branch Instructions Understand load/store and branch instructions for ISA.
Class 13 Basic Components of Processor: Arithmetic and Logic Unit Understand ALU.
Class 14 Logic Design Exercise(5) Logic Design Exercise(5)
Class 15 Basic Components of Processor: Register File and Memory Understand register file and memory.
Class 16 Datapath for Single Cycle Processor Understand datapath for single cycle processor.
Class 17 Logic Design Exercise(6) Logic Design Exercise(6)
Class 18 Control for Single Cycle Processor Understand control for single cycle processor.
Class 19 Pipelining Understand pipelining.
Class 20 Logic Design Exercise(7) Logic Design Exercise(7)
Class 21 Pipeline Hazards and Data Forwarding Understand pipeline hazards and data forwarding.


David A. Patterson, John L. Hennessy. Computer Organization and Design: The Hardware/Software Interface (Fifth Edition). Morgan Kaufmann.

Reference books, course materials, etc.


Assessment criteria and methods

Students will be assessed on their understanding of computer logic design and the ability to apply them to implement small computer systems with a hardware description language (HDL).
Students' course scores are based on exercise problems (30%) and a final examination (70%).

Related courses

  • CSC.T252 : Switching Circuit Theory
  • CSC.T262 : Assembly Language
  • CSC.T372 : Compiler Construction
  • CSC.T363 : Computer Architecture
  • CSC.T433 : Advanced Computer Architecture

Prerequisites (i.e., required knowledge, skills, courses, etc.)

No prerequisites are necessary, but enrollment in the related course of Switching Circuit Theory is desirable.

Contact information (e-mail and phone)    Notice : Please replace from "[at]" to "@"(half-width character).

Kise Kenji: kise[at]c.titech.ac.jp

Office hours

Contact by e-mail in advance to schedule an appointment.

Page Top