1 / 25

Dos sistemas digitais aos computadores e aos  Ps

Dos sistemas digitais aos computadores e aos  Ps. Organização: Arquitecturas pré- von Neumann O paradigma do programa residente em memória Sobre o uso da memória Arquitectura básica da unidade de processamento central Etapas elementares na execução de uma instrução

Download Presentation

Dos sistemas digitais aos computadores e aos  Ps

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Dos sistemas digitais aos computadores e aos Ps • Organização: • Arquitecturas pré- von Neumann • O paradigma do programa residente em memória • Sobre o uso da memória • Arquitectura básica da unidade de processamento central • Etapas elementares na execução de uma instrução • O impacto da microelectrónica • Conceitos básicos sobre os microprocessadores de 8 bits

  2. Arquitecturas pré von Neumann • Computadores electro-mecânicos: • Konrad Zuse (Z1 a Z3) • Howard Aiken (Mark I) • Computadores baseados em válvulas • John Atanasoff e Clifford Berry (ABC) • John P. Eckert e John W. Mauchly (ENIAC)

  3. Arquitecturas pré von Neumann: O ENIAC • Apresentado ao público em 1945, o ENIAC foi o primeiro computador electrónico (Electronic Numerical Integrator And Computer) • As suas 18.000 válvulas permitiam-lhe executar 5.000 adições por segundo (mas o recorde de funcionamento ininterrupto foi de apenas 20 horas...)

  4. O paradigma do programa residente em memória • Uma das principais desvantagens do ENIAC consistia no facto de a programação do computador ser efectuada por recablagem da sua unidade de controlo • Foi ainda durante o desenvolvimento do ENIAC que o conceito de programa residente em memória tomou forma, com base no célebre documento de John von Neumann, First Draft of a Report on the EDVAC (que compilava o trabalho de um grupo de 32 pessoas)

  5. A “arquitectura de von Neumann” • As principais características da arquitectura proposta no First Draft of a Report on the EDVAC são as seguintes: • Usava o sistema binário para representar os dígitos • Advogava o processamento em série, bit a bit • Propunha que as operações a executar fossem armazenadas em memória, em vez de serem definidas pelo estabelecimento de ligações físicas

  6. John von Neumann (cont.) • Nas arquitecturas de von Neumann, • O programa a executar é definido pelo conjunto de instruções suportadas pela unidade de processamento central, sendo a introdução do programa em memória e a saída de resultados asseguradas pela unidade de E/S • A execução do programa tem lugar pela repetição de um ciclo com as seguintes etapas: i) leitura da instrução a executar, ii) obtenção dos operandos, iii) realização da operação e iv) armazenamento do resultado

  7. O uso da memória e o von Neumann bottleneck

  8. Ainda sobre o uso da memória • Na apresentação anterior omitiram-se explicitamente vários pormenores: • Como são gerados os endereços? • Como é que é indicado à ALU qual a operação a realizar em cada instante? • Como é que se indica aos vários registos quando devem carregar um novo conteúdo?

  9. Ainda sobre o uso da memória (cont.) • O CPU necessita por vezes de suspender temporariamente o “programa principal”, para executar um outro segmento de programa: • Quando se efectua a chamada a uma “subrotina” • Quando um evento exterior requer a “atenção” do CPU • Após esta suspensão, a execução do programa principal deve ser retomada no mesmo ponto (o que obriga naturalmente a guardar esta informação...)

  10. Ainda sobre o uso da memória (cont.) • O programa principal só pode ser retomado no local onde foi suspenso se o endereço da instrução que iria ser executada a seguir for armazenado em memória (de leitura e escrita) • À zona de memória que é usada para armazenar o endereço da instrução seguinte é dada a designação de stack (“pilha”)

  11. Arquitectura básica da UPC • Para facilitar a nossa abordagem, começaremos por considerar a arquitectura mínima que nos permite a execução de um programa residente em memória:

  12. Arquitectura básica da UPC (cont.) • Assumindo que se pretende apenas executar uma instrução que permita a carga de um operando em memória, deverá ser fácil concluir porque é que a arquitectura apresentada é de facto a mínima...

  13. Etapas elementares na execução de uma instrução • Instrução LD R1,#55H:

  14. Etapas elementares (cont.) • O diagrama de estados para a execução da instrução LD R1,#55H tem uma correspondência directa com o seguinte diagrama temporal:

  15. O impacto da microelectrónica • Na época posterior aos computadores baseados em válvulas electrónicas, os principais marcos tecnológicos foram os seguintes: • 1947: O transístor (primeiro computador baseado em transístores: NCR 304, em 1957) • 1958:O circuito integrado (primeiros computadores baseados em CI: IBM System 360, DEC PDP-8, em 1965) • 1971: O microprocessador (primeiro computador baseado num microprocessador: Micral, em 1973)

  16. O i4004: O primeiro microprocessador • O Intel 4004 foi o primeiro microprocessador, tendo sido inventado por Ted Hoff (a quem tinha sido dado o encargo de projectar uma calculadora para uma firma Japonesa) • Com 2.300 transístores, o i4004 baseava-se numa arquitectura de 4 bits e apresentava um custo unitário de 200 dólares (o i4004 não chegou no entanto a constituir o CPU de nenhum computador)

  17. Conceitos básicos sobre Ps de 8 bits • Apesar das arquitecturas de 32 e 64 bits serem hoje em dia comuns, os componentes de 8 bits continuarão a existir por tempo indeterminado, já que: • Muitas aplicações (em particular em domínios com o controlo de máquinas, electrodomésticos, etc.) não obtêm benefícios de um maior número de bits • Passar de 8 para 16 bits representa em princípio maior área de silício e maior número de pinos, logo maior custo, sendo que o baixo custo é fundamental para o sucesso

  18. Conceitos básicos sobre Ps de 8 bits (cont.) • Repare-se que a arquitectura apresentada abaixo, face à arquitectura mínima analisada, acrescenta dois blocos: o stack pointer e a ALU

  19. Transferência interna de dados • Repare-se que o bloco acumulador é necessário para nos permitir aplicar às entradas da ALU os dois operandos em simultâneo, uma vez que temos apenas um barramento interno de dados • Pela mesma razão, é necessário um registo para armazenar temporariamente o resultado

  20. Controlo de estado nas saídas dos registos • A solução apresentada na transparência anterior requer que as saídas dos registos possam ser colocadas em terceiro estado, para garantir a inexistência de conflitos no acesso ao barramento

  21. A comunicação com o exterior • A unidade de processamento central comunica com o exterior através de três barramentos: • Endereços, onde se especifica qual a posição (de memória ou E/S) a aceder • Dados, pelo qual circula a informação de / para o CPU • Controlo, que reúne as linhas que codificam o tipo de operações a executar (e.g. se o CPU pretende ler ou escrever na memória)

  22. A memória revisitada: Subrotinas e interrupções • Referimos já que a suspensão temporária do programa principal pode ocorrer em duas situações: • Por chamada a uma subrotina • Por ocorrência de um evento assíncrono com a execução do programa principal, que o interrompe para poder ter a “atenção” do CPU • A sequência de acções que tem lugar é no entanto idêntica em ambos os casos e será agora analisada

  23. Subrotinas e interrupções (cont.) • A progressão na execução de um programa, temporariamente suspensa por uma das razões apontadas na transparência anterior, pode ser ilustrada como se apresenta à direita:

  24. O uso da stack • Assumindo que a stack cresce para baixo, o que nem sempre acontece, o seu uso começaria assim:

  25. Conclusão • Objectivo principal do capítulo: Efectuar a ponte entre as duas alternativas principais de projecto • Hardware dedicado (com funções pré-definidas ou DLP) • Código residente em memória • Pistas para a continuação do estudo: • Arquitectura de computadores (princípios gerais e evolução desde von Neumann) • Impacto da tecnologia

More Related