You are on page 1of 5

ARQUITETURA DE VON NEUMANN

E HARVARD
Arquitetura de von Neumann
A Arquitetura de von Neumann (de John von Neumann), uma arquitetura de
computador que se caracteriza pela possibilidade de uma mquina digital armazenar
seus programas no mesmo espao de memria que os dados, podendo assim manipular
tais programas.

A mquina proposta por Von Neumann rene os seguintes componentes: (i) uma
memria, (ii) uma unidade aritmtica e lgica, (iii) uma unidade central de
processamento (CPU), composta por diversos registradores, e (iv) uma Unidade de
Controle (UC), cuja funo a mesma da tabela de controle da Mquina de Turing
universal: buscar um programa na memria, instruo por instruo, e execut-lo sobre
os dados de entrada.

Cada um dos elementos apresentados realizado custa de componentes fsicos


independentes, cuja implementao tem variado ao longo do tempo, consoante a
evoluo das tecnologias de fabricao, desde os rels electromagnticos, os tubos de
vcuo (ou vlvulas), at aos semicondutores, abrangendo os transistores e os circuitos
electrnicos integrados, com mdia, alta ou muito alta densidade de integrao (MSI -
medium scale, LSI - large scale, ou VLSI - very large scale integration), medida em
termos de milhes transistores por pastilha de silcio.
As interaes entre os elementos exibem tempos tpicos que tambm tm variado ao
longo do tempo, consoante as tecnologias de fabricao. Atualmente, as CPUs
processam instrues sob controle de relgios cujos perodos tpicos so da ordem de 1
nanosegundo, ou seja, 10 9 segundos. As memrias centrais tm tempos tpicos de
acesso da ordem da dezena de nanosegundos. As unidades de entrada e sada exibem
tempos tpicos extremamente variveis, mas que so tipicamente muito superiores
escala do nanosegundo. Por exemplo, os discos rgidos exibem tempos da ordem do
milisegundos (milsimo de segundo, 10 3). Outros dispositivos perifricos so inertes,
a no ser que sejam activados por utilizadores humanos. Por exemplo, ao se fazer "copy
and paste" nao se-percebe nada do que foi descrito acima, pois um teclado s envia
informao para o computador aps serem pressionada as devidas teclas. Assim, este
dispositivo se comunica com a CPU eventualmente e, portanto, exibe tempos
indeterminados.

Os microcontroladores com uma arquitetura Von-Neumann, de "microcontroladores


CISC" (Computador com um Conjunto Complexo de Instrues). Von Neumann
uma arquitetura de computador utilizada no ARM7, com barramento de dados de 32
bits que se caracteriza pela possibilidade de uma mquina digital armazenar seus
programas no mesmo espao de memria que os dados, podendo assim manipular tais
programas. Ela pode ser dividida nas seguintes partes:

Pipeline de instrues: essa arquitetura utiliza pipeline de trs estgios para melhorar
o fluxo das instrues para o processador, permitindo operaes mltiplas simultneas.
Durante uma operao normal, enquanto uma instruo est sendo executada, a
instruo seguinte est sendo decodificada, e uma terceira instruo est sendo buscada
na memria. Isso pode ser visto na figura1 abaixo:

Figura 1 - ilustrao de um pipeline de instruo da arquitetura von Neumann

No exemplo acima, a instruo str leva mais de um ciclo para executar, fazendo com
que qualquer instruo seguinte seja paralizada. Para solucionar esse problema,
podemos dividir a etapa de decodificao em partes, conforme mostra a figura 1.

Formato da memria: interface de memria projetada para permitir a melhor


performance e menor uso da memria. Sinais de controle crtico da velocidade so
colocadas na lista encadeada (pipeline) para permitir que funes de controle do sistema
possam aproveitar o modo de acesso mais rpido aos sinais de transmisso atravs de
vrias tecnologias de memria. No ARM7 existem 4 tipos bsicos de ciclo:
- Interno
- No-seqencial
- Seqencial
- Transferncia co-processador

O ARM7 pode ser configurado para armazenar as palavras em formato little-endian ou


big-endian. Processador ARM7 (assim como o ARM9) suporta os seguintes tipos de
dados:
- Word, 32-bit
- Half word, 16-bit
- Byte, 8-bit

Modos de operao: possui 7 modos (tambm vale para o ARM9), mostrados a


seguir:
- User Mode(USR): modo normal de execuo do ARM, utilizado para executar a
maioria dos programas aplicativos
- Fast Interrupt (FIQ): modo que trata de interrupes rpidas
- Interrupt (IRQ): modo usado para tratar interrupo de propsito geral
- Supevisor (SVC): modo protegido para sistema operacional
- Abort (ABT): modo usado depois que uma busca de dados ou instruo abortada
- Undefined (UND): modo utilizado quando uma instruo no definida executada
- System (SYS): modo usurio privilegiado para o sistema operacional

O ARM7 tem 37 registradores de 32-bits, porm nem todos so disponveis para dado
modo.

Co-processador: pode ser conectado ao sistema do ARM7 at 16 co-processadores,


que so unidades de processamento firmemente acoplados ao processador ARM. Um
tpico processador contm:
- Pipeline de instruo
- Lgica de decodificao de instruo
- Lgica handshake
- Banco de registradores
- Lgica especial de processamento com sua prpria via de dados

Recursos de debug: estado interno de um ncleo ARM pode ser examinado utilizando
interface JTAG para permitir a insero de instrues no pipeline do ncleo e evitando o
uso de barramento de dados externo. O ncleo ARM7TDMI inclui uma unidade
funcional interna conhecida como Embbeded ICE Logic, que serve para monitorar
ativamente o ncleo ARM7TDMI para especificas buscas de instrues e acesso a
dados.

Arquitetura Harvard
A Arquitetura de Harvard baseia-se em um conceito mais recente que a de Von-
Neumann, tendo vindo da necessidade de por o microcontrolador para trabalhar mais
rpido. uma arquitetura de computador que se distingue das outras por possuir duas
memrias diferentes e independentes em termos de barramento e ligao ao
processador.
Baseia-se na separao de barramentos de dados das memrias onde esto as instrues
de programa e das memrias de dados, permitindo que um processador possa acessar as
duas simultaneamente, obtendo um desempenho melhor do que a da Arquitetura de Von
Neumann, pois pode buscar uma nova instruo enquanto executa outra.

A principal vantagem desta arquitetura dada pela dupla ligao s memrias de dados
e programa (cdigo), permitindo assim que o processador leia uma instruo ao mesmo
tempo que faz um acesso memria de dados.

A arquitetura Havard tambm possui um repertrio com menos instrues que a de


Von-Neumann, e essas so executadas apenas num nico ciclo de relgio.

Os microcontroladores com arquitetura Havard so tambm conhecidos como


"microcontroladores RISC" (Computador com Conjunto Reduzido de Instrues), e
os microcontroladores com uma arquitetura Von-Neumann, de "microcontroladores
CISC" (Computador com um Conjunto Complexo de Instrues).

A arquitetura Harvard de computadores se baseia na separao de barramentos de dados


das memrias onde esto as instrues de programa e das memrias de dados. Isto
permite que um processador possa acessar as duas simultaneamente, obtendo um
desempenho melhor do que a da Arquitetura de von Neumann, pois pode tambm estar
buscando uma nova instruo enquanto est executando outra.

Pipeline de instrues: o funcionamento do pipeline de instrues da arquitetura


Harvard semelhante ao da arquitetura von Neumann. Porm, ao invs da instruo ser
divida em 3 partes independentes, ela dividida em 5 partes (figura 2), sendo elas:
- IF: busca da instruo na memria
- ID: leitura dos registradores e decodificao da instruo
- EX: execuo da instruo/clculo do endereo
- MEM: acesso a um operando na memria
- WB: escrita de um resultado em um registrador

Figura 2 - ilustrao de um pipeline de instruo da arquitetura Harvard

Formato da memria: a interface de memria da arquitetura Harvard semelhante


da arquitetura von Neumann.
Modos de operao: semelhantes s da arquitetura von Neumann
Co-processador: semelhante ao da arquitetura von Neumann
Recursos de Debug: semelhantes s da arquitetura von Neumann

Comparao entre arquiteturas

A arquitetura Harvard um conceito mais recente que a de von Neumann. Ela adveio da
necessidade de se obter uma arquitetura que pudesse trabalhar mais rapidamente.

Em um computador baseado na arquitetura von Neumann, a CPU pode tanto ler uma
instruo ou ler/escrever um dado da/para a memria. Ambos no podem ocorrer ao
mesmo tempo, pois a instruo e o dado utilizam o mesmo sistema de barramento.

Num computador usando arquitetura Harvard, a CPU pode ler uma instruo e executar
um acesso de dado na memria ao mesmo tempo, mesmo sem um cach. Como seu
pipeline possui 5 estgios, esse tipo de arquitetura consegue processar um nmero maior
de instrues por ciclo de clock. Alm disso, pode ser mais rpido para um dado
circuito complexo porque as buscas de instrues e acesso a dados no so sustentados
por uma nica via de memria

You might also like