Diferença entre Von Neumann e Harvard Architecture

Existem dois tipos de arquiteturas de computadores digitais que descrevem a funcionalidade e a implementação de sistemas de computadores. Uma é a arquitetura de Von Neumann, projetada pelo renomado físico e matemático John Von Neumann no final da década de 1940, e a outra é a arquitetura de Harvard, baseada no computador original de retransmissão Harvard Mark I, que empregava sistemas de memória separados. armazenar dados e instruções.

A arquitetura original de Harvard costumava armazenar instruções em fita perfurada e dados em contadores eletromecânicos. A arquitetura Von Neumann forma a base da computação moderna e é mais fácil de implementar. Este artigo analisa as duas arquiteturas de computadores individualmente e explica a diferença entre as duas.

O que é a arquitetura Von Neumann?

É um projeto teórico baseado no conceito de computadores de programa armazenado, onde os dados do programa e os dados da instrução são armazenados na mesma memória.

A arquitetura foi projetada pelo renomado matemático e físico John Von Neumann em 1945. Até o conceito Von Neumann de design de computadores, as máquinas de computação eram projetadas para um único propósito predeterminado, que careceria de sofisticação devido à religação manual dos circuitos..

A idéia por trás das arquiteturas Von Neumann é a capacidade de armazenar instruções na memória junto com os dados nos quais as instruções operam. Em resumo, a arquitetura Von Neumann refere-se a uma estrutura geral que o hardware, a programação e os dados de um computador devem seguir.

A arquitetura Von Neumann consiste em três componentes distintos: uma unidade de processamento central (CPU), unidade de memória e interfaces de entrada / saída (E / S). A CPU é o coração do sistema de computador que consiste em três componentes principais: a Unidade Aritmética e Lógica (ALU), a unidade de controle (CU) e os registradores.

A ULA é responsável por executar todas as operações aritméticas e lógicas dos dados, enquanto a unidade de controle determina a ordem do fluxo de instruções que precisam ser executadas nos programas emitindo sinais de controle para o hardware.

Os registradores são basicamente locais de armazenamento temporário que armazenam endereços das instruções que precisam ser executadas. A unidade de memória consiste em RAM, que é a memória principal usada para armazenar dados e instruções do programa. As interfaces de E / S permitem que os usuários se comuniquem com o mundo externo, como dispositivos de armazenamento.

O que é arquitetura de Harvard?

É uma arquitetura de computador com caminhos de armazenamento e sinal fisicamente separados para dados e instruções do programa. Diferentemente da arquitetura Von Neumann, que emprega um único barramento para buscar instruções da memória e transferir dados de uma parte de um computador para outra, a arquitetura de Harvard possui espaço de memória separado para dados e instruções.

Ambos os conceitos são semelhantes, exceto pelo modo como acessam as memórias. A idéia por trás da arquitetura de Harvard é dividir a memória em duas partes - uma para dados e outra para programas. Os termos foram baseados no computador original de retransmissão Harvard Mark I, que empregava um sistema que permitia que dados e transferências e buscas de instruções fossem executadas ao mesmo tempo.

Os projetos de computadores do mundo real são baseados na arquitetura modificada de Harvard e são comumente usados ​​em microcontroladores e DSP (Digital Signal Processing).

Diferença entre Von Neumann e Harvard Architecture

Fundamentos da arquitetura de Von Neumann e Harvard

A arquitetura Von Neumann é um projeto teórico de computador baseado no conceito de programa armazenado em que programas e dados são armazenados na mesma memória. O conceito foi projetado pelo matemático John Von Neumann em 1945 e atualmente serve como base para quase todos os computadores modernos. A arquitetura de Harvard foi baseada no modelo de computador original baseado em retransmissão Harvard Mark I, que empregava barramentos separados para dados e instruções.

Sistema de memória da arquitetura Von Neumann e Harvard

A arquitetura Von Neumann possui apenas um barramento usado para busca de instruções e transferência de dados, e as operações devem ser agendadas porque não podem ser executadas ao mesmo tempo. A arquitetura de Harvard, por outro lado, possui espaço de memória separado para instruções e dados, que separam fisicamente os sinais e o armazenamento da memória de código e dados, o que, por sua vez, possibilita o acesso simultâneo a cada sistema de memória.

Processamento de instruções de Von Neumann e Harvard Architecture

Na arquitetura de Von Neumann, a unidade de processamento precisaria de dois ciclos de clock para concluir uma instrução. O processador busca as instruções da memória no primeiro ciclo e as decodifica e, em seguida, os dados são obtidos da memória no segundo ciclo. Na arquitetura de Harvard, a unidade de processamento pode concluir uma instrução em um ciclo, se houver estratégias de pipelining apropriadas..

Custo da arquitetura de Von Neumann e Harvard

Como as instruções e os dados usam o mesmo sistema de barramento na arquitetura Von Neumann, ele simplifica o design e o desenvolvimento da unidade de controle, o que acaba reduzindo o custo de produção ao mínimo. O desenvolvimento da unidade de controle na arquitetura de Harvard é mais caro que o anterior, devido à arquitetura complexa que emprega dois barramentos para obter instruções e dados.

Uso da arquitetura de Von Neumann e Harvard

A arquitetura Von Neumann é usada principalmente em todas as máquinas que você vê, desde computadores de mesa e notebooks até computadores e estações de trabalho de alto desempenho. A arquitetura de Harvard é um conceito relativamente novo usado principalmente em microcontroladores e processamento de sinal digital (DSP).

Arquitetura de Von Neumann vs. Harvard: Gráfico de comparação

Resumo da arquitetura de Von Neumann vs. Harvard

A arquitetura de Von Neumann é semelhante à arquitetura de Harvard, exceto que usa um único barramento para executar buscas de instruções e transferências de dados, portanto, as operações devem ser agendadas. A arquitetura de Harvard, por outro lado, usa dois endereços de memória separados para dados e instruções, o que torna possível alimentar dados nos dois barramentos ao mesmo tempo. No entanto, a arquitetura complexa apenas aumenta o custo de desenvolvimento da unidade de controle contra o menor custo de desenvolvimento da arquitetura Von Neumann, menos complexa, que emprega um único cache unificado.