Course Details for A.Y. 2015/2016
Name:
Architettura degli Elaboratori / Computer Architectures
Basic information
Credits:
: Bachelor Degree in Computer Science 6 CFU (a)
Degree(s):
Bachelor Degree in Computer Science 1st anno curriculum General Compulsory
Language:
Italian
Course Objectives
Knowledge of the computer architecture. Ability to analyze and devise combinatorial and sequential modules. Ability to individuate and dimension the fundamental computer components. Knowledge of the basic set of machine instructions and their execution modalities.
Course Content
- Basic concepts: hardware, software, Von Neumann’s machine. Coding of characters, integer and real numbers. Integer and real numbers arithmetic.
- Boole’s Algebra. Boolean functions and expressions. Minimization of boolean functions and Karnaugh’s maps. Analysis and synthesis of combinatorial networks. Fundamental operators and combinatorial modules.
- Synchronous and asynchronous flip-flops. Registers and counters. Sequential networks: state diagrams and flow tables. Analysis and synthesis of synchronous sequential networks.
- Machine and assembly languages. Instructions set and architectural models. RISC and CISC instructions sets. Addressing of data and control.
- CPU: internal structure and components. Fetch and execute phases. Cabled and microprogrammed realization of the control unit. CPU performances. System bus: mechanical, electrical and logic-functional characteristics. Bus allocation.
- Memory: classification criteria. Main memory, cache and magnetic disks. Locality principle and hierarchical organization. I/O subsystem: interfaces, I/O ports and their addressing. Peripherical devices management methods: programmed, interrupt driven and with direct memory access (DMA).
Learning Outcomes (Dublin Descriptors)
On successful completion of this course, the student should
-
have knowledge about (i) how computers represent data and information, (ii) fundamentals of logic and digital systems;
(iii) fundamental components of computer architectures such
as CPUs and memory devices. Moreover by the end of this module students will be able to understand the main issues
arising from the design of efficient computing systems, including programming
aspects.
-
be capable of: (i) understanding and representing information of computers;
(ii) analyzing and devising combinatorial and sequential modules; (iii) solving practical problems related to the design process of
the different components of a standard computer architecture; (iiii) estimating the
global performances of a standard computing architecture; (iiiii) understanding basic aspects of
computer programming, from bottom (machine coding) to top (instructions
and programming languages) level.
-
acquire skills to deal with real world computer architectures, to identify
problems and to, independently, choose the corresponding most efficient
solution, as known from the literature. Acquire knowledge to design and
program basic computer architectures.
-
explain and illustrate the fundamental notions studied in this course.
Demonstrate ability in solving concrete computer architectures related
problems, focusing on their main features and discarding the inessential ones.
-
acquiring competencies and abilities necessary in their future studies,
especially with respect to studies on operating systems, computer networks and complex
architectures topics.
Prerequisites and Learning Activities
Ability to integrate classroom and homework study, ability to interact with the teacher during the class for originating discussion. Fundamentals of mathematics
Assessment Methods and Criteria
Written test followed by an oral exam.
An optional mid-term written test will be also provided, which is meant to cover the first part of the course, in order to help the students to split the workload. If a student passes the mid-term written exam, she will take a final-term written exam concerned with the second part of the course content only.
The mid-term written exam (lasting 2 hours) consists of exercises and open questions concerning the first part of the course content.
The final-term written exam is split into two parts (each lasting one hour and half), each consisting of exercises and open questions, concerning the first and the second part of the course content, respectively. Students who passed the mid-term part will have to take only the second part.
The final result of the written exam will be given by the average result of the two parts.
The oral exam will occur within the same exam session of the written test, and it will typically cover the areas of the written answers that need clarification, plus a subject of one's choice. The oral exam (max 1 hour) will test the student's ability to engage in discussion of issues relevant to the topics discussed during the course. Criteria of evaluation will be the level of knowledge and the fluency in the technical language of computer architecture.
Textbooks
- Giacomo Bucci, Calcolatori elettronici. Architettura e organizzazione , McGraw-Hill, 2009. 2009.
Course page updates
This course page is available (with possible updates) also for the following academic years:
To read the current information on this course, if it is still available, go to the university course catalogue .
Course information last updated on: 05 novembre 2015, 13:05