Origem da arquitetura de Harvard, modelo, como funciona

4849
David Holt

O Arquitetura Harvard é uma configuração de computador em que os dados e instruções de um programa estão localizados em células de memória separadas, que podem ser endereçadas de forma independente. 

Ou seja, é o termo usado para um sistema de computador que contém duas áreas distintas: para comandos ou instruções e para dados. Portanto, a principal função dessa arquitetura é armazenar os dados separados fisicamente, fornecendo diferentes caminhos de sinal para as instruções e os dados..

Fonte: De Nessa los - Obra própria, CC BY-SA 3.0, commons.wikimedia

Nessa arquitetura, tanto o formato quanto a mídia desses dois segmentos do sistema podem ser desiguais, uma vez que as duas partes são compostas por duas estruturas distintas..

Alguns exemplos de arquiteturas de Harvard envolvem os primeiros sistemas de computador, onde as instruções do programa podem estar em um meio, por exemplo, em cartões perfurados, e os dados armazenados podem estar em outro meio, por exemplo, em fitas magnéticas..

Índice do artigo

  • 1 aplicativos
  • 2 Origem
  • 3 modelo
    • 3.1 Arquitetura Harvard modificada
  • 4 Como funciona a arquitetura de Harvard??
    • 4.1 Adições na arquitetura
    • 4.2 Endereços de memória
    • 4.3 Sistema de memória
  • 5 vantagens
    • 5.1 Nível de proteção
    • 5.2 Maior velocidade
  • 6 desvantagens
    • 6.1 Maior complexidade e custo
    • 6.2 Pouco uso
    • 6.3 Uso indevido de espaço de memória
  • 7 referências

Formulários

Esse tipo de arquitetura tem ampla aplicação em produtos de processamento de vídeo e áudio. Com cada ferramenta de processamento de vídeo e áudio, você poderá ver a figura da arquitetura de Harvard.

Dispositivos analógicos Os processadores Blackfin são o dispositivo específico onde ele encontrou seu uso principal. Em outros produtos baseados em chips eletrônicos, a arquitetura Harvard também é amplamente utilizada.

No entanto, a maioria dos computadores usa a arquitetura de von Neumann e emprega caches de CPU para obter uma sobreposição.

Fonte

Trabalho realizado na Universidade de Harvard na década de 1940 sob a liderança de Howard Aiken criou um computador baseado em relé original, chamado Harvard Mark I, que é o termo do qual surgiu o conceito de arquitetura de Harvard..

Este computador usa unidades de memória separadas para armazenar dados e instruções. Então, houve um desenvolvimento significativo com esta arquitetura.

Aiken encorajou o uso de memórias separadas para dados e para instruções de programa, com barramentos separados para cada uma..

A arquitetura original de Harvard normalmente armazenava instruções em fitas perfuradas e dados em contadores eletromecânicos..

O armazenamento de dados dessas primeiras máquinas era inteiramente dentro da unidade de processamento central. Por outro lado, não permitiram que as instruções fossem armazenadas como dados. Um operador teve que carregar os programas.

Uma arquitetura Harvard pode processar dados e executar instruções ao mesmo tempo, porque cada um deles tem seu próprio barramento de endereços.

Modelo

Este modelo é caracterizado pelo fato de que os barramentos de informação e o armazenamento são fisicamente separados para os dados e o código do programa..

Como os barramentos operam de forma autônoma, os dados e as instruções do programa podem ser obtidos ao mesmo tempo, melhorando assim a velocidade em relação ao projeto de barramento único..

Portanto, o modelo de Harvard acaba sendo mais complexo. No entanto, ter os ônibus de forma independente evita o gargalo produzido pela arquitetura de von Neumann.

Um computador pode ser mais rápido para um circuito de certa complexidade, pois buscar instruções e acessar dados não precisa brigar por um único barramento de memória..

Para funcionar, existem dois endereços de memória. Portanto, há um registro de memória para instruções da máquina e outro registro de memória para dados..

Ao contrário da arquitetura de von Neumann, que usa um barramento para mover instruções e dados na memória, a arquitetura de Harvard usa uma área de memória para dados e outra para instruções..

Arquitetura Modificada de Harvard

Nos computadores de hoje, não há desintegração física das áreas de memória usadas por programas e dados. Por isso, pode-se dizer que tecnologicamente eles possuem uma arquitetura Von Neumann..

No entanto, a arquitetura modificada de Harvard serve para representar melhor os computadores de hoje..

Embora as unidades de processamento atuais compartilhem memória, elas têm certos elementos, como instruções exclusivas, que evitam que os dados se misturem com as instruções. Isso é chamado de arquitetura Harvard modificada..

Assim, a arquitetura Harvard modificada tem dois barramentos separados, um para código e outro para dados, mas a própria memória é um elemento fisicamente compartilhado..

O controlador de memória é onde fica a mudança, porque este dispositivo é aquele que controla a memória e como ela deve ser usada.

Os projetos de computadores modernos são suportados pela arquitetura modificada de Harvard. Usado em microcontroladores e processamento de sinal digital.

Como funciona a arquitetura de Harvard?

A arquitetura Harvard tem diferentes áreas de endereço de memória para o programa e para os dados.

Isso resulta na capacidade de projetar um circuito de tal forma que um barramento e um circuito de controle possam ser usados ​​para lidar com o fluxo de informações da memória do programa e um circuito separado para lidar com o fluxo de informações para a memória de dados..

O uso de barramentos separados significa que é possível que um programa seja recuperado e executado sem ser interrompido pela transferência ocasional de dados para a memória de dados..

Por exemplo, em uma versão simples desta arquitetura, a unidade de recuperação do programa poderia estar ocupada recuperando a próxima instrução na sequência do programa e, em paralelo, executando uma operação de transferência de dados que poderia ter sido parte da instrução do programa anterior..

Neste nível, a arquitetura Harvard tem uma limitação, pois geralmente não é possível colocar o código do programa na memória de dados e executá-lo a partir daí.

Adições na arquitetura

Muitas variantes existentes mais complicadas podem ser adicionadas à forma simples da arquitetura de Harvard..

Uma adição comum é adicionar um cache de instrução ao barramento de dados do programa, o que permite à unidade de execução de instrução acesso mais rápido à próxima etapa do programa, sem ter que ir para uma memória mais lenta para chegar à etapa. obrigatório.

Endereços de memória

Um computador com arquitetura Harvard tem diferentes áreas de dados e endereços de instrução: o endereço de instrução um não é a mesma área que o endereço de dados um.

O endereço de instrução um pode conter um valor de vinte e quatro bits, enquanto o endereço de dados um pode indicar um byte de oito bits, que não faz parte desse valor de vinte e quatro bits..

Sistema de memória

Como existe uma área de memória separada para instruções e dados, separando os sinais e o armazenamento na memória do código e dos dados, é possível acessar cada um dos sistemas de memória simultaneamente..

Vantagem

- Há menos chance de corrupção na transmissão, pois os dados e as instruções são transferidos por meio de diferentes ônibus.

- Dados e instruções são acessados ​​da mesma maneira.

- Permite diferentes mídias de armazenamento para instruções e dados. Por exemplo, você pode colocar as instruções em uma ROM barata e os dados em uma RAM cara..

- As duas memórias podem usar diferentes tamanhos de células, fazendo uso efetivo dos recursos.

- Ele tem uma largura de banda de memória maior, que é mais previsível por ter memórias separadas para instruções e dados..

Nível de proteção

Em sistemas que não possuem unidade de gerenciamento de memória, oferece um nível adicional de proteção, pois não será possível iniciar a execução de dados como se fossem código, o que exporia o sistema a inúmeros problemas, como estouro de buffer.

É por isso que é popular com pequenos sistemas embarcados, como micro-ondas ou relógio..

Velocidade mais alta

A arquitetura de Harvard pode ler uma instrução e também realizar o acesso à memória de dados simultaneamente em uma velocidade rápida.

Oferece maior performance, pois permite a obtenção simultânea de dados e instruções, sendo salvos em memórias separadas e percorrendo diferentes barramentos..

Uma arquitetura Harvard geralmente ajudará um computador com um certo nível de complexidade a funcionar mais rápido do que uma arquitetura Von Neumann, desde que não seja necessário compartilhar recursos entre dados e memórias de código..

Se as limitações dos pinos ou outros fatores forçarem o uso de um único barramento para acessar os dois espaços de memória, tais vantagens provavelmente serão amplamente anuladas.

Desvantagens

Maior complexidade e custo

O problema com a arquitetura de Harvard é sua grande complexidade e custo porque, em vez de um barramento de dados, agora são necessários dois.

Produzir um computador de dois barramentos é muito mais caro e demorado para fabricar. Requer uma unidade de controle para dois ônibus, que é mais complicada, demorada e cara de desenvolver.

Isso significa uma implementação mais complexa para os fabricantes. Requer mais pinos na CPU, uma placa-mãe mais complexa e ter que duplicar os chips de RAM, bem como um design de cache mais complexo.

Pouco uso

A arquitetura Harvard não é amplamente utilizada, tornando-a mais difícil de implementar. É por isso que raramente é usado fora da CPU.

No entanto, essa arquitetura às vezes é usada dentro da CPU para lidar com seus caches..

Uso indevido de espaço de memória

Quando há espaço livre na memória de dados, ele não pode ser usado para armazenar instruções e vice-versa.

Portanto, as memórias particulares que são dedicadas a cada um deles devem ser cuidadosamente balanceadas em sua fabricação..

Referências

  1. Diferenças de lista (2019). Diferença entre a arquitetura de Von Neumann e Harvard? Retirado de: listdifferences.com.
  2. Revista PC (2019). Definição de: Arquitetura de Harvard. Retirado de: pcmag.com.
  3. Techopedia (2019). Harvard Architecture. Retirado de: roofpedia.com.
  4. Scott Thornton (2018). Qual é a diferença entre as arquiteturas de Von-Neumann e Harvard? Dicas de microcontrolador. Retirado de: microcontrollertips.com.
  5. Wikipedia, a enciclopédia livre (2019). Arquitetura de Harvard. Retirado de: en.wikipedia.org.
  6. The Crazy Programmer (2019). Diferença entre Von Neumann e Harvard Architecture. Retirado de: thecrazyprogrammer.com.

Ainda sem comentários