Vídeos das aulas gravadas em 2021 - Clicar aqui
Aula 1 (17/08/2021):
Breve descrição da disciplina (.pdf 650 Kbytes) :
ementa, bibliografia, material didático, cálculo
da média de aproveitamento, etc.
Apresentação do conteúdo da disciplina (.pdf 3.2 Mbytes) .
Informações sobre a monografia e prazos (.pdf 24 Kbytes) .
Arquitetura e organização de computadores - Introdução
(.pdf 657 KBytes): Explicar a diferença entre
arquitetura e organização.
Clicar para o vídeo gravado da Aula 01
Aula 2 (19/08/2021): Arquitetura e organização de computadores - Introdução : continuação - explicar estrutura e função dos componentes de um computador. História da evolução do computador (.pdf 9.4 Mbytes): Ábaco, régua de cálculo, computaadores mecânicos, computadores da primeira geração (válvulas): Colossus, ENIAC etc.
Clicar para o vídeo gravado da Aula 02
Aula 3 (24/08/2021): História da evolução do computador - continuação: Segunda geração - transistor, Primeiro computador na USP e a criação do Centro de Cálculo Numérico CCN com suas contribuições, Terceira geração - VLSI, ciclo de relógio e frequência, Supercomputador Sunway, Supercomputador Fugaku.
Há dois vídeos para esta aula: Parte 1 e Parte 2.
Clicar para o vídeo gravado da Aula 03 Parte 1
Clicar para o vídeo gravado da Aula 03 Parte 2
Aula 4 (26/08/2021): Evolução da computação de alto desempenho sob a ótica da lista TOP500 (.pdf 2.4 Mbytes). A última lista completa TOP500 de junho/2021 (.html) está disponível. Passar a lista de exercício número 1.
Clicar para o vídeo gravado da Aula 04
Aula 5 (31/08/2021): Introdução a tecnologia VLSI (circuitos integrados) (.pdf 3 Mbytes) Motivação da importância da tecnologia de microeletrônica ou VLSI: o transistor MOS é a base para construir portas lógicas minúsculas, que são as unidades básicas (tijolos) para construir circuitos lógicos digitais. Mostrar o princípio de funcionamento de um transistor MOS: ele pode funcionar como uma chave abre-fecha e também para armazenamento (com carga 1 ou sem carga 0). Veremos que o transistor MOS pode ainda funcionar como uma resistência.
Clicar para o vídeo gravado da Aula 05
Aula 6 (2/09/2021): Introdução a tecnologia VLSI (circuitos integrados) - Continuação Um transistor em estado de condução (deixando passar corrente) apresenta uma pequena resistência que é diretamente proporcional ao comprimento L e inversamente proporcional à largura W. Mostrar como podemos usar dois transistores MOS para construir uma porta NOT.
Clicar para o vídeo gravado da Aula 06
Aula 7 (9/09/2021): Introdução a tecnologia VLSI (circuitos integrados) - Continuação. Uma vez conhecida a porta NOT, é fácil mostrar o funcionamento das portas NOR e NAND. Mostrar o uso de portas NOR ou NAND para produzir qualquer função booleana. Exemplo de projetos VLSI: multiplexador 4 para 1. Relógio de duas fases. Passar a lista de exercícios 2.
Clicar para o vídeo gravado da Aula 07
Aula 8 (16/09/2021): Concluir a aula passada: Estado-de-Arte da tecnologia VLSI: tecnologia de 7 nanômetros. Quando teremos a tecnologia de 5 nanômetros? Processo de fabricação VLSI e breve introdução a arrays sistólicos TPU (.pdf 2.9 Mbytes) Mostrar processo de fabricação de pastilhas VLSI NMOS. Uso de VLSI para projeto de ASICs (Application Specific Integrated Circuits). Arrays sistólicos e Google TPU (Tensor Processing Unit).
Clicar para o vídeo gravado da Aula 08
Aula 9 (21/09/2021): Evolução do desempenho do processador (.pdf 1.6 Mbytes). Diversas técnicas são adotadas para melhorar o desempenho do processador: pipelining, pré-busca de instruções, predicção de desvio, processador superescalar e análise de fluxo de dados, tipos de dependências: dependência verdadeira, anti-dependência, dependência de saída.
Clicar para o vídeo gravado da Aula 09
Aula 10 (23/09/2021):
Evolução do desempenho do processador - Continuação.
Anti-dependência e dependência de saída.
Remoção da anti-dependência e dependência de saída.
Algoritmo de Tomasulo.
Passar a lista de exercícios 3.
Clicar para o vídeo gravado da Aula 10
Aula 11 (28/09/2021): Evolução do desempenho do processador - Continuação. VLIW, processador multicore, predicção de desvio, execução especulativa. Computação paralela e a lei de Amdahl, paralelização de laços (loops) com dependência dentro da própria iteração do laço, com dependências que cruzam iterações.
Clicar para o vídeo gravado da Aula 11
Aula 12 (30/09/2021): : Hierarquia de memória e memória cache. (.pdf 2 Mbytes) Hierarquia de memória: registradores, memória cache (L1, L2 e L3), memória principal (RAM), armazenamento secundário (disco e fita magnética), outros de armazenamento remotos (arquivos distribuidos, servidores web, nuvem). Memória cache, funções de mapeamento, mapeamento direto.
Clicar para o vídeo gravado da Aula 12
Aula 13 (05/10/2021): Hierarquia de memória e memória cache - Continuação: Mapeamento direto e o fenômeno de thrashing. Mapeamento associativo, mapeamento associativo por conjunto, algoritmos de substituição na cache, algoritmo LRU, algoritmo pseudo-LRU, cache write-through e write-back.
Clicar para o vídeo gravado da Aula 13
Aula 14 (07/10/2021): Dia da Ada Lovelace (.pdf 888 Kbyes): Uma breve apresentação sobre o Dia da Ada, comemorada na 2.a terça-feira de outubro. Vulnerabilidades Meltdown e Spectre. (.pdf 1 Mbytes). Exploram efeitos colaterais de algumas técnicas como execução especulativa, predicção de desvio e uso de memória cache para acessar memória do sistema e de outros usuários.
Clicar para o vídeo gravado da Aula 14
Aula 15 (14/10/2021): Memória interna e código de Hamming (.pdf 1.4 Mbytes). Memória dinâmica (DRAM) e memória estática (SRAM), ambas memória voláteis. Memória ROM. Implementação com NOR ou NAND.
Clicar para o vídeo gravado da Aula 15
Aula 16 (19/10/2021):
Memória interna e código de Hamming - Continuação.
Os vários tipos (ROM, PROM, EPROM, EEPROM),
memória flash. Código de detecção de erro (usando paridade). Códgio
de Hamming.
Clicar para o vídeo gravado da Aula 16
Aula 17 (21/10/2021): Memória interna e código de Hamming - Continuação. Código de correção de erro de um bit (Hamming). Ilustrar o caso de um dado de M=4 bits com K=3 bits adicionais. Deduzir o valor de K necessário para o caso geral de um dado de M bits. Mostrar o valor de K se M é potência de 2.
Clicar para o vídeo gravado da Aula 17
Aula 18 (26/10/2021): Memória interna e código de Hamming - Continuação. Código de correção de erro de um bit (Hamming). Caso geral para formar um código de Hamming. Método de correção quando o código de Hamming lido tem um bit errado. Passar a lista de exercícios 4.
Clicar para o vídeo gravado da Aula 18
Aula 19 (28/10/2021): Memória interna e código de Hamming - Continuação. Dar um exemplo sobre como obter o código de Hamming, dados 7 bits de dados. Escolher um bit do código formado e fazer de conta que esse bit foi lido com erro. Mostrar como corrigir esse erro. Mostrar uma maneira simples mas engenhoso para usar o código de Hamming em comunicação de dados, podendo corrigir erros de um intervalo contíguo de bits errados.
Clicar para o vídeo gravado da Aula 19
Aula 20 (4/11/2021): Slides sobre memória externa (.pdf 1.1 Mbytes). Memória externa: disco magnético HD, organização em trilhas e setores, disco de cabeça móvel e cabeça fixa, seek time e latência rotacional, RAID ( Redundant Array of Independent Disks). SSD (Solid State Drive) e comparação SSD versus HD.
Clicar para o vídeo gravado da Aula 20
Aula 21 (9/11/2021): Memória virtual - paginação e segmentação (.pdf 2.3 Mbytes). Memória virtual: paginação e segmentação. Apoio de hardware ao Sistema Operacional, swapping, fragmentação da memória e compactação, endereço lógico e físico. Paginação: lista de blocos livres, tabela de páginas.
Clicar para o vídeo gravado da Aula 21
Aula 22 (11/11/2021): Slides sobre memória virtual - Continuação. Paginação: TLB (Translation Lookaside Buffer), tradução de endereço lógico para endereço físico. Segmentação, segmentação com paginação.
Clicar para o vídeo gravado da Aula 22
Aula 23 (23/11/2021): CISC (Complex Instruction Set Computer) - Microprogramação (.pdf 3 Mbytes): Arquitetura CISC (Complex Instruction Set Computer) e e exemplos de máquinas CISC. Arquitetura MAC: conjunto de instruções. Microarquitetura MIC e os componentes básicos e os respectivos sinais de controle para: registrador, A latch e B latch.
Clicar para o vídeo gravado da Aula 23
Aula 24 (25/11/2021): CISC (Complex Instruction Set Computer) - Microprogramação - Continuação: Microarquitetura MIC e os componentes básicos e os respectivos sinais de controle para: AMUX, ALU, Shifter, MAR e MBR. Formato de uma microinstrução.
Clicar para o vídeo gravado da Aula 24
Aula 25 (30/11/2021): CISC (Complex Instruction Set Computer) - Microprogramação - Continuação: Formato de uma microinstrução. Explicar o uso do campo COND e ADDR na microinstrução para desvios (incondicional e condicional). ROM contendo o control store (microprograma). Introduzir micro-assembler.
Clicar para o vídeo gravado da Aula 25
Aula 26 (02/12/2021): CISC (Complex Instruction Set Computer) - Microprogramação - Continuação: Leitura e escrita de memória: precisam de dois ciclos. Como escrever microprograma eficiente. Passar a lista de exercícios 5. Uso do relógio de 4 fases para controlar o andamento das atividades de um ciclo composto por 4 subciclos. O microprograma completo tem apenas 79 microinstruções. Descrever o microprograma ilustrando as primeiras microinstruções. Microinstruções horizontis e verticais.
Clicar para o vídeo gravado da Aula 26
Aula 27 (07/12/2021): Interrupções (.pdf 631 Kbytes). Apoio de hardware para agilizar a mudança de contexto. Começar a falar sobre arquitetura RISC.
Clicar para o vídeo gravado da Aula 27
Aula 28 (09/12/2021): Introdução a arquitetura RISC (.pdf 1 Mbytes) (Reduced Instruction Set Computer): motivação e características de arquitetura RISC.
Clicar para o vídeo gravado da Aula 28