Course Information

Course Information
Course Title Code Language Type Semester L+U Hour Credits ECTS
Computer Organization CE204 English Compulsory 4. Semester 3 + 0 3.0 5.0
Prerequisite Courses
Course Level Undergraduate
Mode of delivery Oral presentation and practice
Course Coordinator Dr. Öğr. Üyesi Sultan ZAVRAK
Instructor(s)
Goals This course aims to provide students with a thorough understanding of the inner workings of computer systems, from basic abstractions to advanced hardware functionality. The course emphasizes both theoretical foundations and practical applications, helping students build skills in analyzing and designing efficient computer architectures. Through an exploration of instruction sets, data processing techniques, and memory management, students learn how various components of a computer work together to execute tasks efficiently.
Course Content This course begins with an introduction to fundamental computer abstractions and performance measurement techniques. Students then explore RISC-V instruction sets, including arithmetic and logic operations, conditional instructions, procedures, and addressing modes, with practical examples in C to illustrate data handling with arrays and pointers. Computer arithmetic operations, such as addition, subtraction, multiplication, and division, as well as floating-point operations, are covered in depth. The course then shifts to processor design, guiding students through the development of a single-cycle datapath and pipeline processing in RISC-V. Finally, students examine memory hierarchies, including various memory technologies, cache mechanisms, and virtual memory, to understand how computers manage data storage and retrieval efficiently.
Learning Outcomes
# Öğrenme Kazanımı
1 Understand and explain core computer abstractions and performance measurement methods
2 Analyze and use RISC-V instruction sets for basic arithmetic, logic operations, decision-making, and addressing.
3 Design and implement data processing operations in assembly language, including handling arrays and pointers in C.
4 Demonstrate proficiency in computer arithmetic, including fixed-point and floating-point operations.
5 Develop single-cycle and pipelined processor designs for RISC-V, understanding the intricacies of each design.
6 Explain and utilize memory hierarchy concepts, including cache and virtual memory, to enhance data storage efficiency.
7 Apply knowledge of computer organization in building efficient computer architectures and solving real-world computational problems.
Lesson Plan (Weekly Topics)
Week Topics/Applications Method
1. Week Computer Abstractions and Technology - Introduction
2. Week Computer Abstractions and Technology - Measuring Performance
3. Week RISC-V Instructions: Language of the Computer - Hardware Operations (Arithmetic, Logical), Signed and Unsigned Numbers, Instruction Representation
4. Week RISC-V Instructions : Language of the Computer (Making Decisions, Procedures, Addressing Modes)
5. Week RISC-V Instructions: Language of the Computer - Parallelization, C sort example, Arrays and Pointers
6. Week Arithmetic for Computers - Addition, Subtraction, Multiplication, Division
7. Week Arithmetic for Computers - Floating Point (Addition, Multiplication)
8. Week Midterm Exam
9. Week The Processor - Building Single Cycle Datapath (RISC-V)
10. Week The Processor - Building Single Cycle Datapath (RISC-V)
11. Week The Processor - Pipelining (RISC-V)
12. Week Large and Fast: Exploiting Memory Hierarchy - Memory Technologies
13. Week Large and Fast: Exploiting Memory Hierarchy - Caches
14. Week Large and Fast: Exploiting Memory Hierarchy - Virtual Memory
*Midterm and final exam dates are not specified in the 14-week course operation plan. Midterm and final exam dates are held on the dates specified in the academic calendar with the decision of the University Senate.
Relations with Education Attainment Program Course Competencies
Program Requirements DK1 DK2 DK3 DK4 DK5 DK6 DK7
Recommended Sources
Ders Kitabı veya Notu Ders Kitabı veya Ders Notu bulunmamaktadır.
Diğer Kaynaklar
  • [1] D. A. Patterson and J. L. Hennessy, Computer Organization and Design RISC-V Edition: The Hardware Software Interface. in ISSN. Elsevier Science, 2020.
  • S. Harris and D. M. Harris, Digital Design and Computer Architecture. Elsevier, 2022. doi: 10.1016/B978-0-12-820064-3.00025-8.
ECTS credits and course workload
ECTS credits and course workload Quantity Duration (Hour) Total Workload (Hour)
Sınavlar
Midterm 1 5 16 80
Homework 2 5 10 50
Total Workload 130
*AKTS = (Total Workload) / 25,5 ECTS Credit of the Course 5.0