Saltar al contingut Menu
Map
  • Home
  • Information
  • Contact
  • Map

Computer Structure I (EC1)

Credits Dept. Type Requirements
9.0 (7.2 ECTS) AC
  • Compulsory for DIE
  • Compulsory for DCSFW
  • Compulsory for DCSYS
IC - Prerequisite for DIE , DCSYS , DCSFW

Instructors

Person in charge:  (-)
Others:(-)

General goals

Upon finishing this subject, students should have an understanding of the correspondence that exists between the typical elements in high-level language (type of data, expressions, instructions, etc.), and the elements of machine code that support them. They should also be familiar with the basic mechanisms used by the input/output subsystem of a computer to synchronise and transfer data; how to use these mechanisms at the programming level; and their implications on the structure of computers. Lastly, they should be familiar with a computer's levels of memory hierarchy and how the registers, memory cache and main memory work.

Specific goals

Knowledges

  1. Learn what a computer is, the parts making up a computer design, and levels on which computers are studied.
  2. Learn how computer memory is used to represent elementary, structured data types typical of high-level languages. Learn how to apply algorithms capable of performing basic operations with these kinds of data.
  3. Learn: the correspondence between the basic elements of high-level languages (declaration of types and variables; (2) assignation sentences, conditionals and iteratives; functions, etc.); and (3) the assembly language used to programme the computer proc. A pedagogic processor - SISP-F - is the one chosen for this purpose. It is based on one used in the previous course: Introduction to Computers (IC).
  4. Learn the devices allowing input/output in a computer.
  5. Learn the various elements allowing storage of the information used by the computer, and the various technological and architectural aspects of implementing registers, main memory, and cache memory.

Abilities

  1. Learn how the computer state is modified whenever a programme written in the SISP-F processor"s assembly language is executed. SISA-F is the assembly language used.
  2. Ability to programme small applications in assembler language and usually not available in high-level languages (treatment of bits, sequential access to data structures, measuring time between two events, etc.).
  3. Ability to programme applications for input/output operations in high-level language and assembler language, using the controllers of pedagogical peripherals and where device synchonisation can be performed by enquiries or interruptions. The devices to be programmed are: the screen, keyboard, printer, and disk.
  4. Ability to use tools in each development stage of programmes in assembler: edition, assembly, mounting, execution and de-bugging.

Competences

  1. Ability to work effectively in small groups to solve problems of middling difficulty.
  2. Ability to think in abstract terms. Ability to tackle new problems by consciously using strategies that have proved useful in solving previous problems.
  3. Ability to analyze and summarise issues.

Contents

Estimated time (hours):

T P L Alt Ext. L Stu A. time
Theory Problems Laboratory Other activities External Laboratory Study Additional time

1. Introduction
T      P      L      Alt    Ext. L Stu    A. time Total 
2,0 1,0 1,0 0 1,0 1,0 0 6,0

2. Integer and real arithmetic
T      P      L      Alt    Ext. L Stu    A. time Total 
7,0 2,0 2,0 0 2,0 9,0 0 22,0

3. Memory access at the byte level
T      P      L      Alt    Ext. L Stu    A. time Total 
2,0 1,0 1,0 0 1,0 5,0 0 10,0

4. Treatment of bits and programming using loops
T      P      L      Alt    Ext. L Stu    A. time Total 
3,0 2,0 1,0 0 1,0 6,0 0 13,0

5. Structured data types and pointers
T      P      L      Alt    Ext. L Stu    A. time Total 
4,0 3,0 2,0 0 2,0 9,0 0 20,0

6. Sub-routines
T      P      L      Alt    Ext. L Stu    A. time Total 
2,0 3,0 1,0 0 1,0 6,0 0 13,0

7. Peripherals, controllers and equiries
T      P      L      Alt    Ext. L Stu    A. time Total 
2,0 3,0 1,0 0 1,0 6,0 0 13,0

8. Synchronisation by interruptions and exceptions
T      P      L      Alt    Ext. L Stu    A. time Total 
4,0 4,0 2,0 0 2,0 10,0 0 22,0

9. DMA transfer
T      P      L      Alt    Ext. L Stu    A. time Total 
2,0 3,0 0 0 0 7,0 0 12,0

10. Basic concepts underlying memory hierarchy
T      P      L      Alt    Ext. L Stu    A. time Total 
4,0 1,0 0 0 0 7,0 0 12,0

11. Cache memory
T      P      L      Alt    Ext. L Stu    A. time Total 
4,0 3,0 0 0 0 9,0 0 16,0


Total per kind T      P      L      Alt    Ext. L Stu    A. time Total 
36,0 26,0 11,0 0 11,0 75,0 0 159,0
Avaluation additional hours 7,0
Total work hours for student 166,0

Docent Methodolgy

The theory classes include lectures, in which the teacher sets concepts and provides explanations and illustrations. They also feature discussions with students of the alternatives and their respective advantages and disadvantages.

Practical classes may take three forms: direct solution of problems by the teacher, with contributions from students; solution of problems by students on an individual basis; solution of problems by students on a co-operative basis; When students solve the problems, the teacher will provide any information needed to correct mistakes.

Lab classes are similar to the problems set in practical classes but in this case exercises will be solved by students working in pairs and using tools allowing semi-automated checking of the answers. The lab exercices will be continuously evaluated to encourage the regular effort of the students in these sessions

Evaluation Methodgy

The final grade is obtained with a part exam, a lab grade, and a final exam. The lab grade is obtained with a lab exam and the continuous evaluation of the exercices done during the lab sessions along the whole course.

The part exam will be held about halfway through the course and will cover roughly half the course material. There will be just one part exam, which will be taken by all students. The result of this exam may increase the grade awarded in the final exam.

The lab grade is obtained mainly from the lab exam, which will be held during the last lab session of the course. This grade may be incremented with a maximum of 1,5 additional points (without exceeding a total of 10 points) depending on the correct execution of all the exercices during the lab sessions along the course.

The grade awarded for the course as a whole is calculated as follows:

Final grade = 0.6*final exam + 0.2*maximum (final exam, part exam) + 0.2*lab grade

Any attempt of fraud during the course will entail the application of the UPC's general academic normative and the beginning of a disciplinary process.

Basic Bibliography

  • Manual del llenguatge assemblador SISA-F, Accessible des del web de l'assignatura, .
  • Col.lecció de problemes, Accessible des del web de l'assignatura, .
  • Quadern de Laboratori, Accessible des de la web de l'assignatura, .
  • Apunts del Tema 10, Accessible des del web de l'assignatura, .

Complementary Bibliography

  • William Stallings Organización y arquitectura de computadores, Prentice Hall, 2006.
  • David A. Patterson, John L. Hennessy Estructura y diseño de computadores : interficie circuitería-programación, Reverté, 1999.
  • Carl Hamacher, Zvonko Vranesic, Safwat Zaky Organización de computadores, McGraw-Hill, 2003.
  • John L. Hennessy, David A. Patterson Computer architecture : a quantitative approach, Elsevier, Morgan Kaufmann, 2007.

Web links

  1. http://docencia.ac.upc.es/FIB/EC1


Previous capacities

Understanding the working of a simple computer, the items it comprises and the function performed by each.

Understanding the basic elements of high-level languages, which make it possible to programme simple applications.

Ability to organise one"s studies and programme one"s work for this and other courses.

Possess an initial grounding in mathematics that allows analysis, a degree of abstraction, and an ability to summarise course-related issues.


Compartir

 
logo FIB © Barcelona school of informatics - Contact - RSS
This website uses cookies to offer you the best experience and service. If you continue browsing, it is understood that you accept our cookies policy.
Classic version Mobile version