Unidade Curricular / Curricular Unit
Arquitetura de Computadores/Computer Architecture
Ciclo de Estudos / Study Cycle
1º Ciclo/1st Cycle
Nome do Docente Responsável
Sérgio Pedro Mestre Ferreira
Nome do Docente Adicional
José Faisca e Alexandre Banha
Objectivos de aprendizagem (conhecimentos, aptidões e competências a desenvolver pelos estudantes)
Entender o funcionamento dos computadores, de uma perspectiva microscópica até uma perspectiva macroscópica. Reconhecimento das potencialidades e limitações de um computador. Entendimento da forma como interagem os diversos elementos da estrutura/arquitectura de um computador.
Learning outcomes of the curricular unit
Understand how computers work, from a microscopic perspective to a macroscopic perspective. Recognition of the potential and limitations of a computer. Understanding of how they interact with the various elements of the structure / architecture of a computer.
Conteúdos programáticos
Aulas Teóricas
Codificação binária e operações aritméticas.Circuitos digitais MSI: Portas Lógicas, registos,contadores, memórias,multiplexers e descodificadores.Simulação
Arquitectura de um Microprocessador (CPU) genérico.Componentes básicos: ALU,Registos e Barramentos.Instruções e Micro-instruções
Memórias de Programa e Dados.Fluxo de informação num CPU:Operações Fetch e Execution
Estudo de um Microcontrolador comercial de baixo custo. Ambiente de desenvolvimento-programação, simulação e teste
Componentes de um computador: CPU, memória e dispositivos de E/S.Memória cache e memória de massa. O processador Gráfico/Periféricos.Gestão de recursos.Sistemas Operativos
Aulas Práticas
Codificação e aritmética binária.Componentes digitais típicos
Simulação de componentes básicos da arquit/ interna de um CPU genérico
Projecto simples com um microcontrolador comercial económico
Estudo da programação do CPU padrão – x86
Assembly x86: Entradas/Saídas;Manipulação de strings e ficheiros
Syllabus
Lectures
Binary conversion and arithmetics.Digital Circuits MSI: Logic Gates, registers, counters, memories, multiplexers and dela.Simulation.
Generic basic microprocessor architecture (CPU).Components: ALU, registers and Buses.Instructions and Micro-instructions.
Data and program memories. Data information path in a CPU: Fetch Operations and Execution
Study of a low cost commercial microcontroller. Development-programming environment, simulation and test.
Computer devices: CPU, memory and I/O. Cache and mass memories. The graph processor / Peripherals.Resource management.Operating Systems.
Practical classes
Binary coding and arithmetics.Typical digital components.
Basic internal components simulation of a generic CPU architecture.
Simple project with a budget commercial microcontroller
Standard CPU programming study – x86
x86 assembly: I/O, manipulation of strings and files
Demonstração da coerência dos conteúdos programáticos com os objectivos da unidade curricular
A utilização de sistemas informáticos no nosso dia-a-dia só é possível devido à existência de pessoal qualificado para os desenvolver e manter. A programação de computadores é uma actividade de alta tecnicidade que necessita conhecimentos de base sobre os fundamentos do funcionamento dos microprocessadores que são o coração dos computadores que fazem parte dos sistemas de informação complexos.
A programação nativa Assembly é utilizada como forma de reforçar e consolidar a aprendizagem da arquitectura do computador, pois não é possível programar eficientemente sem ter conhecimento da estrutura e inter-relacionamento dos seus componentes internos.
Demonstration of the syllabus coherence with the Curricular Unit’s objectives
The use of IT systems in our day-to-day is only possible due to the availability of skilled personnel to do the development and maintenance. The computer programming is a highly technical activity that requires basic knowledge about the microprocessor basics operation that is the heart of computers, an important part of complex information systems.
The native Assembly programming is used as a way to strengthen and consolidate the learning of computer architecture, because it is not possible to program efficiently without having knowledge of the structure and interrelationship of its internal components.
Metodologias de ensino (avaliação incluída)
A disciplina é teórico-prática, havendo uma alternância entre métodos:
Met. 1 – expositivos,
Met. 2 – demonstrativos
Met. 3 – participativos.
Avaliação Continua:
• 50% – 2 x Frequências
• 50% – Avaliação em ambiente Laboratorial
Avaliação da Época de Recurso:
• 50% – Exame
• 50% – Avaliação em ambiente Laboratorial
Nota: Não é possível a aprovação na disciplina sem a aprovação na parte Laboratorial.>
Planned learning outcomes, teaching methods and assessment methods and criteria
The course is theory and practice, with an alternation between methods:
1 – expositive,
2 – demonstrative
3 – participatory.
Continuous assessment:
• 50% – Two Frequency Tests
• 50% – Laboratory Work
Assessment Period of Appeal:
• 50% – Exam
• 50% – Laboratory Work
Note: It’s not possible to be Approved without Laboratorial Approval
Demonstração da coerência das metodologias de ensino com os objectivos de aprendizagem da unidade curricular
Metodologia expositiva
Apresentação dos conceitos teóricos da arquitetura e da linguagem Assembly do microcontrolador e microprocessador evoluído
Metodologia demonstrativa
Programas e exemplos de aplicação em linguagem Assembly do microcontrolador e microprocessador estudados
Metodologia participativa
Simulação de componentes básicos de um microprocessador
Resolução de exercícios nas linguagens nativas Assembly por parte dos alunos
Projectos simples de desenvolvimento
Demonstration of the teaching methodologies coherence with the curricular unit’s objectives
Expositive methodology
Presentation of the theoretical concepts of the architecture and assembly language
Demonstrative methodology
Programs and application examples in assembly language
Participatory methodology
Basic simulation of microprocessor components
Solving exercises in assembly language by students
Development projects by students
Bibliografia Principal / Main Bibliography
• Microchip – PIC16F627A – [Em linha]
• INTEL – IA-32 Intel® Architecture Software Developer’s Manual, Volume 1: Basic Architecture [Em linha]. Colorado Springs : INTEL, 2004.
• INTEL – IA-32 Intel® Architecture Software Developer’s Manual, Volume 2A: Instruction Set Reference, A-M [Em linha]. Colorado Springs : INTEL, 2004.
• INTEL – IA-32 Intel® Architecture Software Developer’s Manual, Volume 2B: Instruction Set Reference, N-Z [Em linha]. Colorado Springs : INTEL, 2004.
• INTEL – IA-32 Intel® Architecture Software Developer’s Manual, Volume 2B: Instruction Set Reference, N-Z [Em linha]. Colorado Springs : INTEL, 2004.
• Tanenbaum, Andrew S. – “Structured Computer Organization”, Prentice-Hall, 1990.System Programming Guide. Colorado Springs : INTEL, 2004.
• Tanenbaum, Andrew S. – “Structured Computer Organization”, Prentice-Hall, 1990.
• Delgado, José; Ribeiro, Carlos – Arquitectura de Computadores, FCA, Lisboa, 2008
Departamento de Engenharia Informática e Sistemas de Informação
Edifício F, sala F.1.3
Direção — 217 515 500 (ext: 683)
Serviço de Apoio Tecnico-Admistrativo (SATA) — 17 515 500 (ext: 764)
Gestão de conteúdos por Lucio Studer Ferreira © 2022 COFAC.