Microprocessadores e Computadores Pessoais
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Arquitectura de Computadores |
Ocorrência: 2010/2011 - 2S
Ciclos de Estudo/Cursos
Língua de trabalho
Português - Suitable for English-speaking students
Objetivos
A unidade curricular de Microprocessadores e Computadores Pessoais tem por objectivo desenvolver, combinar e aplicar de forma integrada conceitos das áreas de Arquitectura de Computadores e de Linguagens de Programação. Por um lado, a unidade curricular explora as relações entre o conjunto de instruções do CPU e a programação de baixo nível (linguagem "assembly"). Por outro lado, reconhecendo que a arquitectura de computadores pessoais modernos vai muito para além da arquitectura do CPU, a unidade curricular abordará a arquitectura geral de um PC, incluindo o subsistema de armazenamento de dados e outros periféricos.
Estes assuntos são abordados com base na família de Microprocessadores Intel IA-32, usada na larga maioria dos computadores pessoais.
Após a conclusão com sucesso desta unidade curricular, o estudante terá adquirido a capacidade de identificar e descrever a arquitectura dos computadores pessoais em uso actualmente, bem como a capacidade de aplicar as técnicas de programação "assembly" na implementação de qualquer tipo de algoritmo.
Após completar esta unidade curricular, os estudantes serão capazes de:
- Identificar e descrever os principais subsistemas de um computador pessoal;
- Explicar e avaliar a contribuição de cada subsistema para o desempenho global;
- Usar ferramentas de compilação e depuração (MASM, depurador);
- Descrever a arquitectura do conjunto de instruções IA-32;
- Desenvolver programas curtos em linguagem "assembly" IA-32;
- Explicar o funcionamento de programas em "assembly" IA-32;
- Explicar os mecanismos de invocação de subrotinas;
- Utilizar subrotinas para implementar programas modulares;
- Usar o co-processador aritmético (instruções de vírgula flutuante);
- Estabelecer a correspondência entre código C e código "assembly";
- Descrever e avaliar o desempenho de sistemas de aramazenamento de dados (discos magnéticos);
- Distinguir diferentes tipos de RAID;
- Descrever, selecionar e avaliar o desempenho de diferentes métodos de comunicação com periféricos ("polling", interrupções, DMA)
- Explicar os princípios de funcionamento de barramentos de comunicação com periféricos;
- Descrever a organização do subsistema gráfico de um computador pessoal.
- Explicar a utilidade e arquitectura geral de um GPU.
Programa
1. Introdução ao microprocessador e microcomputador. Arquitectura do microprocessador IA-32. Modos de endereçamento. Funcionalidade e organização de um "Assembler".
2. Instruções de transferência de dados, aritméticas e lógicas. Instruções de controlo de fluxo: saltos incondicionais e condicionais.
3. Subrotinas (invocação, passagem de parâmetros). Programação modular.
4. Co-processador aritmético.
5. Interface com periféricos: "polling", interrupções, DMA. Barramentos de comunicação com periféricos.
6. Subsistema de armazenamento de dados. RAID.
7. Subsistema gráfico. GPUs.
Bibliografia Obrigatória
Kip R. Irvine;
Assembly language for intel-based computers. ISBN: 0-13-049146-2
Bibliografia Complementar
David A. Patterson, John L. Hennessy;
Computer organization and design. ISBN: 978-0-12-374493-7
Barry B.Brey;
The Intel microprocessors 8086/8088, 80186/80188, 80286, 80386, 80486, Pentium, Pentium Pro Pprocess. ISBN: 0-13-048720-1
Métodos de ensino e atividades de aprendizagem
Aulas Teóricas: Exposição oral dos diversos temas da disciplina que serão acompanhados, sempre que se considere oportuno, com apresentação de exemplos e a respectiva discussão.
Aulas Práticas: A metodologia das aulas práticas baseia-se na apresentação, discussão e resolução de problemas que serão testados em computador.
Software
MASM
Ollydbg
Palavras Chave
Ciências Tecnológicas > Engenharia > Engenharia de computadores
Tipo de avaliação
Avaliação distribuída com exame final
Componentes de Avaliação
Descrição |
Tipo |
Tempo (Horas) |
Peso (%) |
Data Conclusão |
Participação presencial (estimativa) |
Participação presencial |
56,00 |
|
|
Mini-teste nº 1 |
Exame |
1,00 |
|
|
Mini-teste nº 2 |
Exame |
1,00 |
|
|
Exame |
Exame |
2,00 |
|
|
|
Total: |
- |
0,00 |
|
Componentes de Ocupação
Descrição |
Tipo |
Tempo (Horas) |
Data Conclusão |
Estudo para 1º mini-teste |
Estudo autónomo |
10 |
|
Estudo para 2º mini-teste |
Estudo autónomo |
10 |
|
Estudo autónomo |
Estudo autónomo |
82 |
|
|
Total: |
102,00 |
|
Obtenção de frequência
A avaliação de frequência é feita por 2 testes (M1 e M2) e por 2 exercícios de programação (P1 e P2). Os exercícios de programação são realizados nas aulas práticas.
A nota de frequência é calculada por:
Nota frequência = (2 * M1 + 2 * M2 + P1 + P2)/6
Para admissão a exame, é preciso obter nota de frequência igual ou superior a 6,0 valores (em 20).
Os mini-testes são sem consulta.
Datas dos mini-testes: 13/Abril/2011 e 1/Junho/2011.
Fórmula de cálculo da classificação final
Nota Final = 0,5 x Exame + 0,5 x Nota frequência
A aprovação à unidade curricular exige cumulativamente:
- Nota obtida no exame superior a 7,0 valores;
- Nota final (arredondada às unidades) igual ou superior a 10 valores.
Exame sem consulta. Duração: 2H00.
Provas e trabalhos especiais
N/A.
Avaliação especial (TE, DA, ...)
Exame especial de 2H30 (abrangendo toda a matéria) para os estudantes que, ao abrigo das disposições regulamentares, não necessitam de nota de frequência para serem admitidos a exame.
Melhoria de classificação
A nota de exame pode ser melhorada no exame de recurso através da realização de uma prova escrita de dificuldade semelhante à do exame.
A classificação final global (incluindo a avaliação distribuída) pode ser melhorada através da realização de uma prova escrita especial abrangendo toda a matéria.
Observações
O desenvolvimento de aplicações em Microcomputadores exige conhecimentos relacionados com Arquitectura de Computadores, constituição de Microcomputadores baseados em Microprocessadores, Programação em Linguagens de baixo nível (Assembly) e ligação a dispositivos físicos exteriores . Esta disciplina, surgindo no plano de estudos na sequência da disciplina de Arquitectura e Organização de Computadores, tem por objectivo desenvolver e aplicar estes conceitos no contexto da família de processadores Intel IA-32.O tratamento mais aprofundado da ligação a dispositivos físicos exteriores, bem como das aplicações concretas é deixado para uma disciplina posterior de Laboratório de Computadores
Horário de atendimento:
João Canas Ferreira - 2ª-feira, das 14H00 às 17H00.
António José Araújo - 3ª-feira, das 14H00 às 17H00.
Rui Meireles - 5ª-feira, das 15H00 às 17H00.