Você está na página 1de 65

Unidade I

ARQUITETURA DE COMPUTADORES

Prof. Giovanni Rizzo

Conceitos bsicos
Quais so os componentes necessrios para caracterizar um computador?

Estrutura de um computador

Qualquer computador deve possuir componentes para: 1. Processamento de informao: Processador, tambm denominado UCP (Unidade Central de Processamento) ou CPU (Central Process Unit).

Estrutura de um computador

Qualquer computador deve possuir componentes para: 1. Processamento de informao: CPU ou processador. 2. Armazenar informaes: Memria(s).

Estrutura de um computador

Qualquer computador deve possuir componentes para: 1. Processamento de informao: CPU ou processador. 2. Armazenar informaes: Memria(s). 3. Comunicao com o mundo externo: Perifricos (I/O) e linhas de comunicao. Cuidam da Entrada e Sada (E/S) dos dados.

Estrutura de um computador

Qualquer computador deve possuir componentes para: 1. Processamento de informao: CPU ou processador. 2. Armazenar informaes: Memria(s). 3. Comunicao com o mundo externo: Perifricos (I/O) e linhas de comunicao. 4. Comunicao entre os componentes: Sistema de barramentos.

Diagrama estrutural de um computador

Diagrama estrutural da CPU

Como o computador realiza tarefas?


O computador sozinho no faz nada! uma mquina de propsito geral, porm precisa receber instrues para realizar uma tarefa especfica.

Como o computador realiza tarefas?


Um computador apenas pode realizar alguma tarefa til se contiver um programa armazenado em sua memria. Um programa composto por uma sequncia de instrues. Cada instruo implementa uma operao elementar.

Como o computador realiza tarefas?


Para executar programas, o processador precisa ser capaz de se comunicar com a memria (via barramentos). Deve ser capaz de: 1. Buscar as instrues do programa. 2. Interpretar (decodificar) cada instruo. 3. Executar a operao correspondente.

Ciclo de instruo

Ciclo de instruo (mais detalhado)

1. Buscar a instruo na memria. 2. Decodificar a instruo. 3. Buscar operando(s) (se houver). 4. Executar a operao. 5. Armazenar o resultado (se houver).

Tipos de sinais nos barramentos

Existem 3 tipos de sinais transportados em um sistema de barramentos. 1. Sinais de dados: Transportam a informao til. 2. Sinais de endereo: Localizao da informao na memria. 3. Sinais de controle: O que fazer (leitura, gravao). Sinais de erro, requisio etc.

Sistema de barramentos

Estrutura da mquina de Von Neumann


Memria e barramentos compartilhados para dados e instrues.

Interatividade

Conforme foi visto, o ciclo de instrues possui ao menos 3 estgios. Assinale a alternativa cujo(s) estgio(s) sempre faz(em) uso do barramento de endereos. a) Apenas o estgio de busca. b) Os estgios de busca e execuo. c) Apenas o estgio de decodificao. d) Apenas o estgio de execuo. e) Todos os estgios.

Conceitos bsicos (continuao)

Sistemas analgicos: So sistemas cujas variveis pertencem a um continuum. Sistemas digitais: So sistemas cujas variveis so smbolos. Observao 1: O crebro animal um computador analgico. Observao 2: Um sistema digital no necessariamente binrio, embora este seja mais conveniente.

Conceitos bsicos (continuao)


Bit: a contrao de binary digit (dgito binrio). Smbolo: b (minsculo). Corresponde aos dgitos numricos de valor mais baixo: 0 e 1. Nibble: sequncia de 4 bits. Byte: sequncia de 8 bits. Smbolo: B (maisculo). Palavra (Word): o nmero de bits que um processador pode manipular em uma nica operao. Geralmente, corresponde ao nmero de bits dos registradores da CPU.

Conceitos bsicos (continuao)


Uma Word tambm definida como uma sequncia de 16 bits (2 bytes). Uma Double Word corresponde a 32 bits (4 bytes). Uma Quad Word corresponde a 64 bits (8 bytes).

Ordenao de bytes
Considere um computador cuja palavra binria superior a 1 byte. Da mesma forma que no sistema de numerao decimal temos dgitos mais significativos e menos significativos... ... temos bytes mais significativos e menos significativos em palavras binrias.

Ordenao de bytes
Se quanto mais significativo for o byte de um nmero binrio, mais alto o seu endereo, a representao Little Endian. Se quanto mais significativo for o byte de um nmero binrio, mais baixo o seu endereo, a representao Big Endian.

Ordenao de bytes

Por exemplo, se a palavra binria de 32 bits de valor hexadecimal 1A2B3C4D16 for armazenada no endereo 1000 de um computador com representao Little Endian, teremos: Endereo: 1000 1001 1002 1003 Byte: 4D 3C 2B 1A

Ordenao de bytes

Considere agora a mesma palavra binria de 32 bits de valor hexadecimal 1A2B3C4D16 armazenada no endereo 1000 de um computador com representao Big Endian: Endereo: 1000 1001 1002 1003 Byte: 1A 2B 3C 4D

Ordenao de bytes
Temos um problema com a transferncia byte a byte. Por exemplo, ao se transferir um byte de cada vez de um computador Big Endian para Little Endian:
Big Endian (dado original)

Endereo Dado

1000 1A

1001 2B

1002 3C

1003 4D

Ordenao de bytes

Big Endian (dado original) Endereo Dado 1000 1A 1001 2B 1002 3C 1003 4D

Little Endian (dado copiado) Endereo Dado 1000 1A 1001 2B 1002 3C 1003 4D

Ordenao de bytes

Little Endian (dado original) O QUE DEVERIA SER... Endereo Dado 1000 4D 1001 3C 1002 2B 1003 1A

Little Endian (dado copiado) ERRADO! Endereo Dado 1000 1A 1001 2B 1002 3C 1003 4D

Cdigos de correo de erro


Devido presena de rudo e distores em sinais digitais binrios, alguns bits podem ter seu valor alterado. Para detectar erros, adiciona-se um ou mais bits transmisso (redundncia). Acrescentando mais bits possvel no apenas detectar, mas corrigir erros.

Cdigos de correo de erro


Um cdigo simples para deteco de erro o bit de paridade. Acrescenta-se um bit extra de modo que o nmero de uns seja par (paridade par) ou mpar (paridade mpar). Exemplo: para a sequncia 111010012 , temos um nmero mpar de uns. Bit de paridade par = 1 Bit de paridade mpar = 0

Cdigos de correo de erro

Cdigo Hamming: Exemplo com dado de 4 bits. 3 bits de correo de erro.

Cdigos de correo de erro


Exemplo de correo de 1 bit. Qual o bit com erro na figura abaixo?

Cdigos de correo de erro


Exemplo de correo de 1 bit. Qual o bit com erro na figura abaixo?

Cdigos de correo de erro

Aps a correo, temos:

Interatividade

Descubra qual alternativa corresponde ao bit com erro na figura abaixo: a) I b) II c) III d) IV e) V

Lei de Moore
O nmero de transistores em um chip de microprocessador praticamente dobra a cada 24 meses (inicialmente, a cada 18 meses). No uma lei, mas uma observao emprica.

Lei de Moore

Crculo virtuoso
O avano tecnolgico propicia melhores produtos a preos mais baixos. Preos mais baixos induzem ao surgimento de novas aplicaes (ex.: videogames). Novas aplicaes aumentam as possibilidades de mercado e fazem surgir novas empresas. Novas empresas levam competio, criando demanda econmica para o avano tecnolgico.

Processadores CISC e RISC


CISC (Complex Instruction Set Computer): computador com um conjunto complexo de instrues. RISC (Reduced Instruction Set Computer): computador com um conjunto reduzido de instrues.

Processadores CISC
Reconhece mais de uma centena de instrues. mais lento na execuo das instrues. Utiliza microprogramao. A maioria dos microprocessadores CISC.

Processadores RISC
Reconhece um nmero limitado de instrues. Cada uma executada com mais rapidez do que em um processador CISC. Reduo do conjunto de instrues. H uma equivalncia entre uma instruo CISC e uma sequncia de instrues RISC.

Prefixos do IEC e do SI
O computador uma mquina digital binria, enquanto o nosso sistema de numerao decimal. Essa caracterstica gera algumas confuses. Por exemplo, se voc compra um DVD-R de 4.7 GB, descobre que possui apenas 4.3 GB. Por qu?

Prefixos do IEC e do SI

Prefixo Padro
(Sistema Internacional) Prefixo Smbolo Peso Prefixo

Prefixo Binrio
(Norma IEC) Smbolo Peso

Kilo Mega Giga Tera Peta Exa

k M G T P E

103 106 109 1012 1015 1018

Kibi Mebi Gibi Tebi Pebi Exbi

Ki Mi Gi Ti Pi Ei

210 220 230 240 250 260

Prefixos do IEC e do SI
Capacidade de um DVD-R 1 GB = 109 Substituindo: C = 4,7 x 1 GB = 4,7 x (109 B) O Windows considera o gigabyte como sendo 230 bytes (1 gibibyte pela norma IEC).

C = 4,7 GB

Prefixos do IEC e do SI

Calculamos a capacidade do disco como sendo: C = 4,7 x 109 B O Windows considera o gigabyte como sendo 230 bytes (1 gibibyte pela norma IEC). 1 GiB = 230 B 1 B = 2-30 GiB

Prefixos do IEC e do SI

Calculamos a capacidade do disco como sendo: C = 4,7 x 109 B = 4.7 x 109 x 1 B Mas, 1 B = 2-30 GiB Substituindo, temos: C= 4,7 x 109 x (2-30 GiB) C= 4.377 GiB

Capacidade de endereamento
Com n bits, temos 2n possibilidades. Portanto, se o barramento de endereos possuir n bits, existem 2n posies de memria que podem ser acessadas. Exemplo: com um barramento de endereos de 32 bits, o limite mximo de endereamento de: C = 232 B = 2(30+2) B= 22 x 230 B C = 4 x (1 GiB) C= 4 GiB

Capacidade de endereamento
Se, por outro lado, desejamos calcular o nmero mnimo de vias do barramento de endereos, usamos o logaritmo, que a operao inversa potenciao. Exemplo: quantas vias so necessrias no barramento de endereos para acessar toda a capacidade de uma memria de 1 GiB? Resoluo: N= log2 ( 230 ) = 30 bits

Interatividade

Considere um computador com barramento de endereos de 16 vias. Qual a sua capacidade de endereamento (considere uma memria com clulas de 1 byte). a) 16 megabytes ou 16 MB. b) 16 mebibytes ou 16 MiB. c) 256 bytes ou 256 B. d) 65536 bytes ou 64 kiB. e) 16 kilobytes ou 16 kB.

Mquinas multinveis
Por uma questo de custo, a eletrnica que compe os microprocessadores no pode ser demasiadamente complexa. Sendo assim, todo processador capaz de realizar operaes bem elementares (como soma, subtrao, movimento de dados etc.). Alm disso, para simplificar ainda mais a eletrnica usada, o computador uma mquina digital binria.

Mquinas multinveis

Temos dois problemas: A linguagem humana complexa demais para ser implementada em uma mquina. Todo programa composto por uma grande sequncia de operaes elementares na linguagem binria da mquina.

Mquinas multinveis

Ou seja: trabalhoso para o ser humano comunicar-se na linguagem da mquina. E invivel construir uma mquina com hardware capaz de entender a linguagem humana.

Mquinas multinveis
Concluso: necessrio um processo de traduo (ou de interpretao).

Mquinas multinveis (traduo e interpretao)


Traduo: a converso de uma linguagem para outra realizada antes da execuo. Interpretao: a converso de uma linguagem para outra realizada durante a execuo. Obs.: a traduo leva a uma execuo mais rpida.

Mquinas multinveis

Mquinas multinveis

Cada nvel : Uma mquina virtual. Uma abstrao do nvel inferior. Mais fcil para o ser humano projetar, programar ou operar do que os nveis inferiores.

Nvel lgico digital


Hardware composto por circuitos lgicos digitais (portas lgicas):

Nvel lgico digital


Latch SR (Set/Reset): memria de 1 bit (utilizando portas NAND).

Nvel lgico digital


Latch SR (Set/Reset): memria de 1 bit (utilizando portas NOR).

Nvel de microarquitetura

Nvel do conjunto de instrues da mquina


Tambm conhecido como nvel ISA (Instruction Set Architecture). Uma instruo pode ser representada com 2 campos: Opcode (cdigo da operao). Operandos (dado ou dados de entrada).

Opcode 010001001

Operando(s) 1001001010111

Nvel do sistema operacional


Interface com o usurio. Interface entre hardware e software. Gerenciamento de acesso memria. Memria virtual. Multitarefa. Kernel.

Nvel de linguagem de montagem (Assembly Language)


O cdigo da operao (Opcode) da linguagem de mquina substituda por um mnemnico. Foi a primeira linguagem a ser escrita usando um editor de texto. Observao: a linguagem chama-se assembly, enquanto assembler o nome do programa que traduz um cdigo assembly para um programa executvel.

Exemplo de cdigo assembly

Interatividade

Qual a linguagem de programao escrita na forma de mnemnicos? a) Linguagem digital binria. b) Linguagem de microprogramao. c) Linguagem de montagem (assembly). d) Linguagem Java. e) Linguagem humana.

AT A PRXIMA!

Você também pode gostar