| School/Faculty/Institute | Faculty of Engineering | |||||||
| Course Code | COMP 206 | |||||||
| Course Title in English | Computer Architecture | |||||||
| Course Title in Turkish | Bilgisayar Mimarisi | |||||||
| Language of Instruction | EN | |||||||
| Type of Course | Flipped Classroom | |||||||
| Level of Course | Introductory | |||||||
| Semester | Spring | |||||||
| Contact Hours per Week |
|
|||||||
| Estimated Student Workload | 159 hours per semester | |||||||
| Number of Credits | 6 ECTS | |||||||
| Grading Mode | Standard Letter Grade | |||||||
| Pre-requisites |
EE 203 - Digital Systems Design (+Lojik Lab) |
|||||||
| Co-requisites | None | |||||||
| Expected Prior Knowledge | Some exposure to C programming language or other high-level computer programming languages. Exposure to digital logic circuit design is a must. | |||||||
| Registration Restrictions | Only Undergraduate Students | |||||||
| Overall Educational Objective | To learn computer organization, memory, i/o subsystems, processor design and latest computer hardware technology trends. | |||||||
| Course Description | This course introduces the basics of the computer organization and architecture, design of processors, main memory, and i/o devices. It also involves understanding the concept of programs as sequences of machine instructions; understanding the relationship between assembly language and machine language; writing programs using assembly languages; understanding the relationship between high-level compiled languages and assembly languages; understanding arithmetic and logical operations with integer operands; understanding floating-point number systems and operations; understanding data path and controller designs; understanding cache structures and virtual memories; understanding and implementing basic pipelining concepts and learning about advanced microarchitecture concepts such as branch prediction and multicore implementations |
Course Learning Outcomes and CompetencesUpon successful completion of the course, the learner is expected to be able to:1) comprehend computer architecture basics, cost-performance trade-offs, design of instruction set architectures 2) synthesize logic components of a smart computer collectively using software tools 3) communicate individual designs with a range of audience 4) write low-level programs using assembly languages, compile it for a given computer architecture 5) comprehend memory hierarchy, apply logic basics to design cache and memory architectures 6) obtain ability to develop input/output and storage subsystems 7) apply probability and statistics in cache, virtual memory and general subsystem design 8) apply the mathematical background and coding skills in a group project to design fairly complicated computer systems; |
| Program Learning Outcomes/Course Learning Outcomes | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
|---|---|---|---|---|---|---|---|---|
| 1) An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics | ||||||||
| 2) An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors | ||||||||
| 3) An ability to communicate effectively with a range of audiences | ||||||||
| 4) An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts | ||||||||
| 5) An ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives | ||||||||
| 6) An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions | ||||||||
| 7) An ability to acquire and apply new knowledge as needed, using appropriate learning strategies |
| N None | S Supportive | H Highly Related |
| Program Outcomes and Competences | Level | Assessed by | |
| 1) | An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics | H | Project,Exam |
| 2) | An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors | H | Project,Exam |
| 3) | An ability to communicate effectively with a range of audiences | S | Project |
| 4) | An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts | N | |
| 5) | An ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives | S | Project |
| 6) | An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions | S | Exam |
| 7) | An ability to acquire and apply new knowledge as needed, using appropriate learning strategies | N |
| Prepared by and Date | BUSE YILMAZ , March 2024 |
| Course Coordinator | BUSE YILMAZ |
| Semester | Spring |
| Name of Instructor |
| Week | Subject |
| 1) | Introduction to Computer Architecture |
| 2) | Overview of computer components and their functionality |
| 3) | Assembly language, Instruction Set Architecture (ISA) |
| 4) | RISC and CISC Architectures, Instruction Set Architecture (ISA), MIPS ISA |
| 5) | MIPS ISA, Trade-offs, design challenges for ISAs, comparison of ISAs |
| 6) | Computer arithmetic |
| 7) | Processor Structure and Function & Midterm 1 |
| 8) | Pipelining basics |
| 9) | Pipelining basics cont’d, ILP and Superscalar Processors |
| 10) | Memory Systems, Hierarchies and Operations |
| 11) | Memory Systems, Hierarchies and Operations cont’d & Midterm 2 |
| 12) | Input/output and storage subsystems |
| 13) | Advanced concepts: Parallel processing & Multicore architectures |
| 14) | Advanced concepts: GPUs |
| 15) | Final Exam/Project/Presentation Period |
| 16) | Final Exam/Project/Presentation Period |
| Required/Recommended Readings | The Hardware/Software Interface, 5th Edition, David Patterson and John Hennessy, Computer Organization and Architecture (W. Stallings - 10th Edition), Logic & Computer Design Fundamentals, 5/E, M. Morris R. Mano, Charles R. Kime, Tom Martin Computer Organization and Design | |||||||||||||||
| Teaching Methods | Lectures/contact hours using ‘flipped classroom’ | |||||||||||||||
| Homework and Projects | HWs, Quizzes and 1 project | |||||||||||||||
| Laboratory Work | 0 | |||||||||||||||
| Computer Use | Required | |||||||||||||||
| Other Activities | none | |||||||||||||||
| Assessment Methods |
|
|||||||||||||||
| Course Administration |
yilmazbuse@mef.edu.tr +90 212 395 3719 Rules for attendance, late submissions, missing an exam, etc.: Attendance will be collected in the class: failing to attend at least 10* lectures without proper excuse (health report, at most 2 times) will result in a failing grade. *: 9 for the students who have an overlap with another course. If the students are late to the class more than 15 mins, their attendance won’t be counted. Provided that proper documents are presented, each missed midterm by the student will be given the grade of the average of the other assessments related to the exam topics. No make-up exam shall be given. Late submissions are not accepted for quizzes. Late submission for the project will receive 20 %, 30% and 100% penalty for each passing day. |
|||||||||||||||
| Activity | No/Weeks | Hours | Calculation | ||||
| No/Weeks per Semester | Preparing for the Activity | Spent in the Activity Itself | Completing the Activity Requirements | ||||
| Course Hours | 14 | 2 | 3 | 70 | |||
| Project | 1 | 30 | 3 | 33 | |||
| Quiz(zes) | 6 | 1 | 1 | 12 | |||
| Midterm(s) | 2 | 20 | 2 | 44 | |||
| Total Workload | 159 | ||||||
| Total Workload/25 | 6.4 | ||||||
| ECTS | 6 | ||||||