A Arquitetura De Von Neumann
Artigos Científicos: A Arquitetura De Von Neumann. Pesquise 862.000+ trabalhos acadêmicosPor: schenoor • 12/1/2014 • 5.495 Palavras (22 Páginas) • 1.259 Visualizações
A arquitetura de Von Neumann, hoje considerada clássica, para quem atua na área de computadores digitais com programa armazenado na própria memória e, portanto, passível de automodificação e de geração por outros programas.
Von Neumann teve contribuições importantes nas áreas de arquitetura de computadores, princípios de programação, análise de algoritmos, análise numérica, computação científica, teoria dos autômatos, redes neurais, tolerância a falhas, sendo o verdadeiro fundador de algumas delas.
A aceleração no desenvolvimento de máquinas automáticas de cálculos na década de 1930 coincidiu-se com o apoio de agências militares durante a segunda guerra mundial, fator esse decisivo tanto para os EUA quanto para a Europa
O envolvimento direto de von Neumann com a Computação teve início naquela época
Von Neumann foi cativado pela possibilidade de automatizar os cálculos e entrou em contato com alguns construtores. Entretanto, o contato mais importante e mais frutífero foi com o trabalho de construção do computador chamado ENIAC desenvolvido por J. Presper Eckert e John Mauchly, na Escola Moore da Universidade de Pensilvânia, sob contrato do Laboratório de Pesquisas Balísticas. O encontro de von Neumann com a equipe do ENIAC materializou-se, nos meados do ano de 1944, através de Herman H. Goldstine, um matemático que, recrutado pelas forças armadas, era na época tenente e oficial de ligação entre o Laboratório e a equipe. Este evento deu início à colaboração muito íntima e duradoura entre von Neumann e Goldstine.
O projeto do ENIAC já estava então congelado e von Neumann contribuiu apenas para que os cientistas de Los Alamos fossem os primeiros usuários da máquina. Na mesma época, a Universidade de Pensilvânia celebrou um contrato suplementar para a construção de uma nova máquina, denominada EDVAC, proposta pouco antes por Eckert e Mauchly, mas cujas características ainda eram muito vagas. O novo projeto despertou enorme interesse de von Neumann que iniciou uma série de visitas regulares à Escola Moore, participando de reuniões relativas ao projeto, juntamente com Eckert, Mauchly, Goldstine e outros.
Arquitetura de computadores
Todas as máquinas construídas até o início do projeto do EDVAC eram programadas através de meios externos como cartões perfurados, fitas perfuradas, painéis, cabos de conexão etc, e dispunham de muito pouca memória para armazenar os dados e os resultados intermediários dos cálculos. Mesmo assim, a construção do ENIAC, cuja capacidade de armazenamento era de 20 números decimais de 10 dígitos (cerca de 700 bits), consumiu mais de 17 mil válvulas eletrônicas. Um fator decisivo para viabilizar o projeto de uma nova máquina foi a idéia de Eckert de utilizar linhas de atraso para implementar elementos de memória de custo muito mais baixo do que se fossem utilizadas válvulas. Com esta idéia, tornou-se possível pensar numa máquina com dezenas ou centenas de milhares de bits.
Como resultado das reuniões com a equipe de projeto e da frequente troca de correspondência, Von Neumann ficou encarregado de produzir um documento descrevendo os detalhes da organização da nova máquina. O documento nunca passou da fase de rascunho, publicado na íntegra somente vários anos mais tarde, sob forma ligeiramente editada (von Neumann, 1993).
Existe controvérsia quanto a quem teria sido o primeiro a propor o conceito de programa armazenado (Randell, 1994; Rosen, 1969; Stern, 1980; Wilkes, 1995). O trabalho teórico de Turing (1936), com o qual von Neumann estava familiarizado, já indicava essa possibilidade. Por outro lado, existem algumas referências ao assunto, bastante obscuras e ambíguas, em algumas fontes anteriores ao documento produzido por von Neumann, além das afirmações posteriores de Eckert, Mauchly e outros. Não há dúvida de que a idéia de programa armazenado estava no ar e é bastante provável que tenha sido sugerida por mais de uma pessoa ou nascido no meio de discussões sobre o novo projeto. Apesar da notoriedade desta controvérsia, não nos parece que a sua importância seja mais do que simbólica. Independentemente de quem tenha sido primeiro a sugerir a idéia de programa armazenado na memória, o fato é que o documento redigido por von Neumann é a primeira descrição minunciosa e quase completa da arquitetura de um computador desse tipo, com repertório de operações que permitiriam a utilização plena dos seus recursos. O documento é resultado, sem dúvida, das várias reuniões realizadas e das trocas de correspondência entre os pesquisadores, mas o próprio fato de ter sido von Neumann, consultor do projeto, encarregado da sua redação indica a importância e o grau da sua contribuição. De acordo com depoimentos de alguns dos seus colaboradores, o projeto lógico do computador deve-se principalmente a von Neumann, enquanto Eckert e Mauchly foram os principais responsáveis pelo projeto de circuitos de alta velocidade, linhas de atraso e outros detalhes físicos. Todos eles deram contribuições fundamentais ao projeto.
O relatório de von Neumann nunca foi completado. O texto contém muitas referências a seções que estavam planejadas mas não foram descritas, principalmente no que se refere à programação (maiores detalhes no item Programação de computadores). Mesmo assim, a leitura do relatório é muito instrutiva. Nota-se que não existia naquela época linguagem adequada para descrever muitos dos conceitos que estavam sendo introduzidos, o que dá ao texto um certo sabor medieval sob o ponto de vista da Computação. Além disso, os interesses de von Neumann incluíam sistemas neurais de McCulloch e Pitts, o que gerou uma tendência de explicar os vários dispositivos do computador em termos de analogia com o sistema nervoso. Por outro lado, é surpreendente a riqueza de idéias, muitas das quais continuam válidas até hoje. Von Neumann separa claramente o conceito de arquitetura lógica do computador da sua execução física. Apesar da hipótese de que linhas de atraso seriam utilizadas para implementar a memória da máquina, toda a descrição é feita em termos de blocos lógicos e suas interconexões. A própria divisão do projeto em unidades de controle, aritmética, memória e de entrada e saída é precursora de todos os projetos posteriores. Na realidade, quase todos os conceitos ainda nos parecem familiares.
As decisões de projeto apresentam justificativas, se possível, quantitativas, como por exemplo, o comprimento da palavra de 32 bits, o tamanho da memória de 2.048 ou 8.196 palavras, a decisão de construção de dispositivos aritméticos seriais. O repertório de instruções é suficiente para implementação
...