| Curso | Engenharia Informática e de Computadores | ||
| Unidade Curricular |
Arquitectura de Computadores |
Obrigatória | x |
| Opcional | |||
| Área Científica | Engenharia Informática e de Computadores | ||
| Ano: 1º | Semestre: 2º | ECTS: 6 | Total de Horas: 160 | ||
| Horas de Contacto | T: | TP: 67,5 | PL: | S: | OT: |
| Docente |
João Pedro Guerreiro da Graça Patriarca |
||||
T - Teórica; TP - Teórico-prática; PL - Prática Laboratorial; S - Seminário; OT - Orientação Tutorial.
- Objetivos da aprendizagem
Os estudantes que terminam com sucesso esta unidade curricular serão capazes de:
(1) Demonstrar conhecimento em arquitecturas baseadas em computadores;
(2) Demonstrar conhecimento na estrutura interna de um microprocessador;
(3) Utilizar ferramentas para produção e depuração de erros de programas assembly;
(4) Escrever e testar programas de pequena complexidade, escritos em assembly;
(5) Demonstrar conhecimento no mapeamento de memória física no espaço de endereçamento do processador;
(6) Demonstrar conhecimento na utilização de periféricos do processador, tais como, portos paralelos de entrada/saída, temporizadores/contadores e mecanismos de interrupção;
(7) Criar dispositivos externos e interligá-los no espaço de endereçamento do processador.
- Programa
I. Estrutura interna de um processador, salientado a sua natureza enquanto máquina de estados programável e módulos funcionais;
II. Estudo de uma arquitectura didáctica, incluindo definição e arquitectura do conjunto de instruções, tempos de acesso a uma memória, transformação da arquitectura Harvard para arquitectura Von-neumann;
III. Linguagem assembly, linguagem máquina, ferramentas para produção e teste de programas;
IV. Espaço de endereçamento do processador e sinais envolvidos no acesso a uma memória, sinais de sincronização do processador e acesso DMA, sistemas RAM e ROM;
V. Periféricos de entrada/saída, portos paralelos, temporizadores/contadores;
VI. Mecanismos de interrupção.
- Demonstração de coerência entre conteúdos programáticos e resultados da aprendizagem
Habilitar os alunos a utilizar e compreender arquitecturas baseadas em microprocessadores.
Tratando-se da primeira unidade curricular onde o aluno tem contacto com a arquitectura interna de um processador e sistemas baseados em processadores, inicia-se o estudo com o desenho de raiz de um processador didáctico de 8 bits onde são identificadas preocupações no desenho de sistemas deste tipo (I e II do conteúdo programático). As características do processador de 8 bits estão na génese no desenho do processador didáctico de 16 bits que dá suporte ao estudo dos restantes tópicos: programação em assembly, processo de geração, carregamento em memória e execução do programa (III), interface e descodificação de memória física mapeada no espaço de endereçamento do processador (IV). Enquadrado nos sistemas baseados em processadores são introduzidos periféricos de entrada/saída, nomeadamente, portos paralelos, temporizadores/contadores e mecanismos de interrupções (V e VI).
- Metodologia de ensino e avaliação
Ensino teórico-prático, estando previstas 30 aulas, sendo 15 de 3 horas e outras 15 de 1,5 horas, perfazendo um total de 67,5 horas. O tempo total de trabalho do aluno é de 160 horas. Os temas são apresentados nas aulas tentando sempre primeiro colocar os problemas e depois apresentar as soluções. Os alunos são levados a laboratório após a apresentação de alguns tópicos para experimentarem as valências adquiridas. Durante o semestre os alunos terão de
realizar um conjunto de trabalhos práticos em grupo onde consolidam a aprendizagem recebida nas aulas teóricas/práticas (2, 3 e 4). Esses trabalhos são acompanhados com sessões de laboratório e discutidos após conclusão. No final do semestre o grupo é confrontado com a especificação de um sistema para desenhar e implementar uma solução (5, 6 e 7). Os resultados da aprendizagem (2, 4, 5 e 6) são avaliados individualmente através de teste escrito. Os resultados de aprendizagem são avaliados ainda na discussão final dos trabalhos de grupo. - Demonstração de coerência entre metodologias de ensino e resultados de aprendizagem
Os alunos realizarão trabalhos práticos durante o semestre acompanhados pelo professor onde terão oportunidade de colocar em prática a aprendizagem recebida nas sessões teóricas/práticas. No fim do semestre o grupo é confrontado com um problema na forma de enunciado onde deverá conceber, desenhar e implementar a respectiva solução.
- Bibliografia principal
Vítor P. Rodrigues, Mário Araújo, Projecto de Sistemas Digitais, Presença, 1998.
M. Morris Mano, Charles Kime, Logic and Computer Design Fundamentals, 2nd ed., Prentice Hall International, NewJersey, USA, 2000.
David A. Patterson and John Hennessy, Computer Organization and Design, 3rd ed., Morgan Kaufmann publications, 2011.






