Subject

Computer Architecture and Organization

1. Course Title Computer Architecture and Organization
Computer Architecture and Organization
2. Code F23L1S003
3. Study Programme Application of Information Technologies, Software Engineering and Information Systems, Computer Science
4. Organizer of the study programme (unit, institute, department or division) Faculty of Computer Science and Engineering
5. Degree level (first, second, third cycle) First Cycle
6. Academic year / semester 2 / Summer
7. Number of ECTS credits 6
8. Teacher Alexandra Dedinec, Biljana Risteska Stojkoska, Dejan Spasov, Igor Mishkovski, Lupcho Antovski, Magdalena Kostoska Gjorgchevska, Marjan Gushev, Miroslav Mirchev, Sasho Gramativkov, Vladimir Zdravesk
9. Prerequisites for enrolling in the course
10. Objectives of the course programme (competences) Understanding the main computer architectures, internal organization, and performance evaluation of individual components and the computer system as a whole.
11. Course content Lectures:
1. Introduction, Computer Abstractions and Technologies
2. Performance and benchmarking
3. Instructions and operands, representation of different types of instructions, representation of integer and character operands
4. Programming constructs in MIPS. Procedures
5. MIPS Addressing. Translating and Starting Programs
6. Computer Arithmetic: Addition, subtraction, multiplication, and division. Floating-point numbers
7. Processor. MIPS implementation. Building a data path.
8. Building a Control Path. Introduction to Flow and Parallelism
9. Data-driven and structural streaming conflicts
10. Control Flow Conflicts. Interruptions and Exceptions
11. Exploitation of the Memory Hierarchy and Cache Memory
12. Cache Memory and TLB

Practical Classes:
1. Introduction and numerous systems, SM, RC, DC, Excess Code
2. Performance and benchmarking
3. Basic MIPS Instructions. Representation of integer and sign operands.
4. Programming constructs in MIPS. Procedures
5. MIPS addressing
6. Computer Arithmetic. Floating-Point Numbers
7. Logic Design Fundamentals: Introduction, Gates, Truth Tables, Combinational Circuits, Introduction to HDL
8. C Code Analogy in MIPS Assembler
9. MIPS Assembler
10. Branching prediction
11. Cache Memory and Performance
12. Cache Memory and Performance
12. Learning methods Lectures supported by slide presentations, interactive lectures, exercises (using equipment and
13. Total available time 6 ECTS x 30 hours = 180 hours
14. Distribution of available time 30 + 45 + 15 + 15 + 75 = 180 hours
15. Forms of teaching activities
15.1. Lectures - theoretical instruction 30 hours
15.2. Exercises (laboratory, auditory), seminars, teamwork 45 hours
16. Other forms of activities
16.1. Project assignments 15 hours
16.2. Independent assignments 15 hours
16.3. Home study 75 hours
17. Assessment method
17.1. Tests 10 points
17.2. Seminar paper / project (presentation: written and oral) 15 points
17.3. Activities and learning 10 points
17.4. Final exam 70 points
18. Grading criteria (points / grade)
up to 50 points5 (five) (F)
from 51 to 60 points6 (six) (E)
from 61 to 70 points7 (seven) (D)
from 71 to 80 points8 (eight) (C)
from 81 to 90 points9 (nine) (B)
from 91 to 100 points10 (ten) (A)
19. Requirement for obtaining a signature and taking the final exam 15.1 and 15.2
20. Language of instruction Macedonian and English
21. Method for monitoring the quality of teaching internal evaluation and survey mechanism
22. Literature
22.1. Required literature
1. Patterson, Hennessy | Computer Organization and Design | A Textbook, (Morgan Kaufmann) | 2011
2. Hennessy & Patterson | Computer Architecture: A Quantitative Approach 5th Edition | Morgan Kaufmann | 2011
3. Hennessy & Patterson | Computer Organization and Design, MIPS Edition, 5th Edition: The Hardware/Software Interface | Morgan Kaufmann | 2013
22.2. Additional literature
No. Author Title Publisher Year