Professional Documents
Culture Documents
Introduo
Velocidade das mudanas tecnolgicas: Vlvula -> transistor -> IC -> VLSI (item 1.4) A cada 1,5 anos dobra a capacidade de memria e a velocidade do processador (devido ao avano na tecnologia e no projeto) Conceitos a serem aprendidas: Como o computador trabalha fundamentos bsico Como analisar seu desempenho (ou como no faz-lo) Caractersticas que afetam os processadores modernos (caches, pipelines) Porque aprender estes contedos? Voc quer ser chamado de um bom profissional de computao Voc quer construir software para usurios (necessita de desempenho) Voc precisa tomar uma deciso de compra ou oferecer consultorias
O que um computador?
Componentes: entrada (mouse, teclado) sada (vdeo, impressora) memoria (disk drives, DRAM, SRAM, CD) rede Nosso principal foco : o processador (datapath e controle) implementado usando milhes of transistores Impossvel entender olhando cada um dos transistores Ns precisamos abstrair os conceitos
Abstrao
High-level language program (in C)
Investigao em profundidades revelando mais informaes Uma abstrao omite detalhes desnecessrios, ajuda-nos a com a complexidade
swap(int v[], int k) {int temp; temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; }
C compiler
swap: muli $2, $5,4 add $2, $4,$2 lw $15, 0($2) lw $16, 4($2) sw $16, 0($2) sw $15, 4($2) jr $31
Assembler
O que estudaremos
Desempenho (Captulo 2) Um ISA especfico (Captulo 3) Aritimtica binria e como construir uma ULA (Captulo 4) Construode um processador (Captulo 5) Pipelining para melhorar o desempenho (Captulo 6) Memria: cache e memria virtual (Captulo 7) I/O (Captulo 8)