Computer Architecture (271003)

Learning Outcomes

  • Understand the fundamental principles of the binary worlds, data representation and digital electronic circuits.
  • Acquire detail knowledge about the design and operation of the basic blocks of computer architecture, namely processor, memories, buses, and external interfaces.
  • Consolidate knowledge about the hardware and how it interacts with software.
  • Analyzes system performance and technological trends to take the right decisions in their implementation in organizations.
  • Explain the implications of the “power wall” and understands the importance of parallelism in modern computing.
  • Understand and execute low level programming trough a pedagogic simulator.

Study Program

  • Introduction
    • An historical perspective
    • von Neumann architecture
    • Basic components of a computer
  • Binary world
    • Digital electronic circuits
    • Boolean algebra
    • Combinatory and sequential circuits
    • Representation of data
    • Computer arithmetic
  • How computer works
    • Processor: data unit and control unit
    • Introduction to the assembly language
  • Assembly programing
    • The cycle of program development
    • Addressing
    • Data, declarations and directives
    • Instructions
    • Routines (structure, call and return mechanisms, piles)
  • System architecture, performance, and reliability
    • Memory system organization. Discs, networks and other interfacing peripherals to the computer
    • Parallel computing: Flynn taxonomy and Amdahl law
    • Evaluation of processor performance
    • Reliability and availability; scalability
  • Technological trends in the world of computers
    • “Power wall”; Performance improvement of computer components; embedded computing. Sustainability issues
  • Practicing with an educational simulator (PEPE)

Bibliography

MAIN REFERENCES: 

José Delgado e Carlos Ribeiro, Arquitetura de Computadores, 5ª Edição, FCA, 2014 (biblioteca)
David M. Harris, Sarah L. Harris -Digital Design and Computer Architecture, 2nd edition. Morgan Kaufmann, 2013 (biblioteca)
David A. Patterson and John L. Hennessy, Computer Organization and Design: The Hardware and Software Interface, 5th Edition, Morgan Kaufmann Publishers. 2014 (biblioteca, 3rd edition rev, 2007)
L. Hennessy and D. A. Patterson, Computer Architecture: A Quantitative Approach, 6th Edition, Morgan Kaufmann Publishers, 2019 (biblioteca 4th edition, 2007)