COMPUTER ORGANIZATION

Angelo MARCELLI COMPUTER ORGANIZATION

0612800009
DEPARTMENT OF INFORMATION AND ELECTRICAL ENGINEERING AND APPLIED MATHEMATICS
EQF6
INFORMATION ENGINEERING FOR DIGITAL MEDICINE
2024/2025

OBBLIGATORIO
YEAR OF COURSE 2
YEAR OF DIDACTIC SYSTEM 2022
AUTUMN SEMESTER
CFUHOURSACTIVITY
432LESSONS
18EXERCISES
18LAB
Objectives
THE COURSE COVERS THE PRINCIPLES OF COMPUTER ORGANIZATION, THE LOW-LEVEL PROGRAMMING MODEL, THE MAIN COMPONENTS OF THE ARCHITECTURES AND THEIR PERFORMANCE MEASURES. IT ALSO INTRODUCES COMBINATORIAL AND SEQUENTIAL NETWORKS USED AS BUILDING BLOCKS OF THE MAIN ARCHITECTURAL COMPONENTS.

KNOWLEDGE AND UNDERSTANDING
PRINCIPLES OF COMPUTER ORGANIZATION AND LOW-LEVEL PROGRAMMING. ARCHITECTURE PERFORMANCE EVALUATION AND THEIR IMPACT ON PROGRAMS PERFORMANCE. ARCHITECTURE AND DESIGN OF COMPUTER COMPONENTS. FUNCTIONS OF BASIC COMBINATORIAL NETWORK (ADDER, MULTIPLEXER, ENCODER, DECODER).

APPLYING KNOWLEDGE AND UNDERSTANDING
ASSEMBLY PROGRAMMING, LOGICAL DESIGN OF THE COMPUTER BASIC BLOCKS. INTEGRATION OF HARDWARE AND SOFTWARE DESIGN.
Prerequisites
THE CLASS REQUIRES THE KNOWLEDGE OF THE C PROGRAMMING LANGUAGE AND FUNDAMENTAL NOTIONS OF PHYSICS AND MATHEMATICAL ANALYSIS.
Contents
DIDACTIC UNIT 1: FUNDAMENTAL CONCEPTS AND COMPUTER LANGUAGE
(LECTURE/PRACTICE/LABORATORY HOURS 20/0/8)
- 1 (2 HOURS LECTURE): INTRODUCTION TO THE COURSE. THE VON NEUMANN MODEL. MIPS PROCESSOR PROGRAMMING MODEL
- 2 (2 HOURS LECTURE): MIPS ASSEMBLY INSTRUCTION CLASSES. OPERANDS AND ADDRESSING METHODS.
- 3 (2 HOURS LECTURE): INSTRUCTIONS FORMAT.
- 4 (2 HOURS LABORATORY): CODING IN THE MIPS ASSEMBLY LANGUAGE OF ARITHMETIC-LOGIC AND LOAD/STORE INSTRUCTIONS
- 5 (2 HOURS LECTURE): CONTROL STRUCTURE IN ASSEMBLY
- 6 (2 HOURS LECTURE): ITERATIVE STRUCTURES AND ARRAYS
- 7 (2 HOURS LABORATORY): CODING AND EXECUTION OF ASSEMBLY PROGRAMS WITH CONTROL STRUCTURE AND ARRAYS
- 8 (2 HOURS LECTURE): SUBPROGRAMS. INSTRUCTIONS FOR CALLING/RETURNING AND PARAMETERS PASSING
- 9 (2 HOURS LECTURE): CODING AND EXECUTION OF PROGRAMS WITH SUBPROGRAMS

KNOWLEDGE AND UNDERSTANDING: PRINCIPLES OF ORGANIZATION AND LOW-LEVEL PROGRAMMING OF A COMPUTER
APPLIED KNOWLEDGE AND UNDERSTANDING: CREATING PROGRAMS IN ASSEMBLY LANGUAGE

DIDACTIC UNIT 3: PROCESSOR ARCHITECTURE
(LECTURE/PRACTICE/LABORATORY HOURS 8/4/0)
- 10 (2 HOURS LECTURE): SINGLE CYCLE DATAPATH: DEFINITION OF THE PROCESSING UNIT.
- 11 (2 HOURS LECTURE): SINGLE CYCLE DATAPATH: DEFINITION OF THE CONTROL UNIT. CLOCK SYNCHRONIZATION AND DEFINITION.
- 12 (2 HOURS PRACTICE): DESIGN OF THE DATAPATH AND CONTROL UNIT FOR SOME INSTRUCTION OF THE MIPS ISTRUCTION SET
- 13 (2 HOURS LECTURE): PIPELINE: HARDWARE STRUCTURE. HAZARDS
- 14 (2 HOURS LECTURE): PIPELINE: CONTROL UNIT
- 15 (2 HOURS PRACTICE): SIMULATION OF EXECUTION OF INSTRUCTIONS IN THE PIPELINE. SIMULATION OF HAZARDS
KNOWLEDGE AND UNDERSTANDING: ARCHITECTURE OF A SINGLE-CYCLE AND PIPELINED PROCESSOR
KNOWLEDGE AND UNDERSTANDING APPLIED: RECOGNIZE AND PREDICT THE IMPACT OF PROGRAMMING CHOICES ON EXECUTION TIME

DIDACTIC UNIT 4: MEMORY HIERARCHY
(LECTURE/PRACTICE/LABORATORY HOURS 6/4/0)
- 16 (2 HOURS LESSON): MEMORY HIERARCHY: THE LOCALITY PRINCIPLE. DIRECT MAPPED CACHE
- 17 (2 HOURS LECTURE): ASSOCIATIVE AND SET-ASSOCIATIVE CACHE
- 18 (2 HOURS PRACTICE): ACCESS TO THE CACHE
- 19 (2 HOURS LECTURE): VIRTUAL MEMORY
- 20 (2 HOURS PRACTICE): ACCESS TO THE VIRTUAL MEMORY
KNOWLEDGE AND UNDERSTANDING: OPERATING PRINCIPLES OF THE MEMORY HIERARCHY AND ITS ORGANIZATION
KNOWLEDGE AND UNDERSTANDING APPLIED: RECOGNIZE AND PREDICT THE IMPACT OF ACCESSING THE MEMORY HIERARCHY ON PERFORMANCE.

DIDACTIC UNIT 4: INPUT/OUTPUT
(LECTURE/PRACTICE/LABORATORY HOURS 6/0/4)
- 21 (2 HOURS LECTURE): EXCEPTIONS AND INTERRUPTIONS
- 22 (2 HOURS LECTURE): INPUT / OUTPUT. INTERFACES. SYNCHRONIZATION TECHNIQUES (POLLING AND INTERRUPT). DMA
- 23 (2 HOURS LABORATORY): CODING AND EXECUTION OF SIMPLE I/O DRIVERS
- 24 (2 HOURS LABORATORY): CODING AND EXECUTION OF SIMPLE I/O DRIVERS
KNOWLEDGE AND UNDERSTANDING: ORGANIZATION AND OPERATING PRINCIPLES OF THE I/O SYSTEM OF A COMPUTER
APPLIED KNOWLEDGE AND UNDERSTANDING: CREATE SIMPLE DRIVERS FOR I/O INTERFACES STARTING FROM ASSIGNED SPECIFICATIONS


TOTAL HOURS OF LESSON / EXERCISE / LABORATORY 30/8/10
Teaching Methods
THE COURSE INCLUDES LECTURES AND PRACTICE EXERCISES IN THE CLASSROOM. IN THE PRACTICE SESSIONS STUDENTS ARE GIVEN PROBLEMS TO BE SOLVED UNDER THE TEACHER SUPERVISION. SOME PRACTICE SESSIONS REQUIRE THE USE OF AN ASSEMBLY PROGRAMMING ENVIRONMENT.
Verification of learning
PROFICIENCY IS EVALUATED THROUGH THE MID-TERM AND THE FINAL WRITTEN TEST. IN EACH TEST STUDENTS ARE REQUIRED TO SOLVE EXERCISES SIMILAR TO THOSE THAT HAVE BEEN PRESENTED AND DISCUSSED DURING THE PRACTICE.

DURING THE TESTS STUDENTS CAN USE BOOKS AND OTHER SUPPORTING MATERIAL PROVIDED BY THE INSTRUCTORS. OTHER MATERIAL AS WELL AS ELECTRONIC DEVICES FOR DATA STORING AND/OR PROCESSING ARE NOT ALLOWED.

EACH PROBLEM IN A TEST IS GIVEN A MAXIMUM SCORE SUCH THAT THEIR SUM ACROSS EACH TESTS IS EQUAL TO 32. SCORES ARE GIVEN TAKING INTO ACCOUNT CORRECTNESS, COMPLETENESS AND QUALITY OF THE PROPOSED SOLUTIONS. THE COURSE FINAL SCORE IS OBTAINED BY ROUNDING THE AVERAGE OF THE SCORES ASSIGNED TO EACH TEST.

STUDENTS MISSING THE INTERMEDIATE TEST WILL BE REQUIRED TO TAKE A FINAL TEST COVERING ALL THE TOPICS.

THE EVALUATION CAN BE CUM LAUDE FOR STUDENTS ACHIEVING AN AVERAGE SCORE GREATER THAN 30.
Texts
D.A. PATTERSON AND J.L. HENNESSY, COMPUTER AND ORGANIZATION DESIGN. THE HARDWARE/SOFTWARE INTERFACE. MIPS EDITION,MORGAN-KAUFFMANN, 6TH ED., 2020.

SUPPLEMENTARY TEACHING MATERIAL WILL BE AVAILABLE ON THE UNIVERSITY E-LEARNING PLATFORM (HTTP://ELEARNING.UNISA.IT) ACCESSIBLE TO STUDENTS USING THEIR OWN UNIVERSITY CREDENTIALS.
More Information
THE COURSE IS HELD IN ITALIAN
Lessons Timetable

  BETA VERSION Data source ESSE3 [Ultima Sincronizzazione: 2024-11-18]