Organização e Arquitetura de Computadores 2ºSemestre Aula 10 – Parte 2 Prof. Carlos Vinícius cvalves@senacrs.edu.br SERVIÇO NACIONAL DE APRENDIZAGEM.

Slides:



Advertisements
Apresentações semelhantes
Arquitetura de Computadores
Advertisements

Arquitetura e organização de computadores.
Entrada e Saída Introdução.
Organização de computadores Professora Marcela Santos Aula 7 – A arquitetura de von Neumann.
Autor: Salvador P. Gimenez
Arquitetura de Computadores
Software Básico Silvio Fernandes
ARQUITETURAS RISC E CISC
Unidades de Execução e de Controle Sistemas Digitais.
Arquitetura de Sistemas Operacionais
Sistemas Operacionais
Arquitetura de Computadores
Professor: Erivelto Tschoeke – UDESC/CEPLAN
Professor: Carlos Roberto da Silva Filho, M. Eng.
GERAÇÕES 1951/ Computadores de primeira geração:
Componentes do Computador e noções de Arquitetura de Computadores
Arquitetura de Computadores
Arquitetura de Computadores
2- Entendendo o que é Arquitetura e Organização
Introdução à Programação
Prof. João Paulo de Toledo Gomes
Computadores Tipos e estrutura interna
História do Computador Desde os idos tempos da humanidade os seres humanos procuram relacionar quantidades. Supõe-se que as primeiras tentativas de contagens.
Unidade Central de Processamento
Unidade Central de Processamento
Prof.: Vagner Pinto Borges Prof.: Vagner Pinto Introdução à Arquitetura e Organização.
Representação de Instruções
Nasceu: 23 de Junho de 1912 Morreu: 7 de Junho de 1954
Unidade Central de Processamento UCP
Organização de Computadores
Sistemas Operacionais
Sistemas Operacionais I
Laboratório I Mateus Raeder Material baseado nos originais da
Organização de um computador
Organização e Arquitetura de Computadores
Organização e Arquitetura de Computadores
Agenda - Aula 2 Introdução (Computador Digital) Processadores
Pet computação UFPE Aula de apoio aos feras: Arquitetura de Computadores.
Processamento de dados na UCP e memória UCP
Arquitetura de Computadores
Sistemas Operacionais
Unidade Central De Processamento: Processador
Fundamentos de Arquitetura da Computação
Organização e Arquitetura de Computadores
Microprocesadores x Microcontroladores
Tudo sobre o Processador
Centro de Informática - UFPE
Curso: Sistemas de Informação Tópico 5
Software Básico Introdução à Organização de Computadores Capítulo 1 Mitsuo Takaki
Algoritmos e Programação MC102
Processador André Santos nº1 Prof: Carlos Pereira
Introdução à Computação Componentes Básicos dos Computadores
SISTEMAS DE INFORMAÇÃO
Processadores.
Arquitetura de Computadores
TECNOLOGIA EM REDES DE COMPUTADORES INTRODUÇÃO A COMPUTAÇÃO Aula /02/2013 Professor Leomir J. Borba- –
Arquitetura de Microcomputadores
Funcionamento interno do computador
Introdução à Programação
Arquitetura de computadores
Introdução à Computação
Por: Lucas da Silva Montes, Marcos Ghesla e Vinícius Randon.
Arquitetura de Sistemas Operacionais
ARQUITETURA DE VON NEUMANN
O INÍCIO CIÊNCIA DA COMPUTAÇÃO por: André Aparecido da Silva Disponível em:
Sistemas Operacionais Arquitetura de Computadores
História dos computadores – O ENIAC
1 Arquitetura de Computadores Introdução. 2 Arquitetura de Computadores Conceitos – Arquitetura de Computador Trata do comportamento funcional de um computador.
 Evolução constante das linguagens de programação de alto nível (LAN) desde o Fortran (primeira LAN)  Surgimento de novos paradigmas como a OO, Orientação.
Transcrição da apresentação:

Organização e Arquitetura de Computadores 2ºSemestre Aula 10 – Parte 2 Prof. Carlos Vinícius cvalves@senacrs.edu.br SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIAL FACULDADE DE TECNOLOGIA SENAC PELOTAS

Resumo

Computador digital Computador digital consiste em um sistema interconectado de: - processadores; - memórias; - dispositivos de entrada e saída; Que utilizam codificação binária para se comunicarem. CPU Unidade de Controle Dispositivo de E/S ULA Memória principal Registradores Impressora Disco Barramento

Computador digital CPU Componentes Unidade de Controle Dispositivo de E/S ULA Memória principal Registradores Impressora Disco Barramento CPU = Cérebro - executa programas armazenados na memória principal buscando instruções, examinando-as e então executando-as uma após a outra. Componentes são interligados na CPU através de um barramento. Barramentos podem ser internos ou externos à CPU.

Computador digital CPU Componentes Unidade de Controle Dispositivo de E/S ULA Memória principal Registradores Impressora Disco Barramento Unidade de controle é responsável por buscar instruções na memória principal e determinar seu tipo. A Unidade Lógica Aritmética (ULA) é responsável por efetuar operações como adição e AND (E) booleano para executar instruções.

Computador digital CPU Componentes Unidade de Controle Dispositivo de E/S ULA Memória principal Registradores Impressora Disco Barramento Registradores servem para armazenar resultados temporários e controle de informações. O conjunto dos registradores compõe uma memória interna do processador de altíssima velocidade.

Computador digital Exemplo de Registradores: PC – Program Counter: registrador mais importante. Indica a próxima instrução a ser buscada para execução. IR – Registrador de Instrução: contém a instrução que está sendo executada no momento.

História...

Alan Turing Alan Mathison Turing OBE (23 de Junho de 1912 — 7 de Junho de 1954) foi um matemático, lógico, criptoanalista e cientista da computação britânico. Foi influente no desenvolvimento da ciência da computação e proporcionou uma formalização do conceito de algoritmo e computação com a máquina de Turing, desempenhando um papel importante na criação do moderno computador. Durante a Segunda Guerra Mundial, Turing trabalhou para a inteligência britânica em Bletchley Park, num centro especializado em quebra de códigos. Por um tempo ele foi chefe de Hut 8, a seção responsável pela criptoanálise da frota naval alemã. Planejou uma série de técnicas para quebrar os códigos alemães, incluindo o método da bombe, uma máquina eletromecânica que poderia encontrar definições para a máquina Enigma. Após a guerra, trabalhou no Laboratório Nacional de Física do Reino Unido, onde criou um dos primeiros projetos para um computador de programa armazenado, o ACE. EC: Identificar estrutura interna de um computador;

Máquina Universal Em 1936, quase dez anos antes da construção do primeiro computador, o matemático inglês Alan Turing propôs um modelo simples do que seria uma máquina para tratamento de informação. Trata-se de um gênero abstrato do computador digital, que em um processo de informatização se apresenta sob aspectos essenciais: Como máquina, isto é, objeto potencialmente material, e obedecendo enquanto tal apenas às leis da física; Como autômato, pois se posto em movimento, percorre seu percurso sem intervenção exterior; Como operador sobre símbolos de um cálculo. EC: Identificar estrutura interna de um computador;

Von Neumann John von Neumann Nascido Margittai Neumann János Lajos (Budapeste, 28 de dezembro de 1903 — Washington, D.C., 8 de fevereiro de 1957) foi um matemático húngaro de origem judaica, naturalizado estadunidense. Contribuiu na teoria dos conjuntos, análise funcional, teoria ergódica, mecânica quântica, ciência da computação, economia, teoria dos jogos, análise numérica, hidrodinâmica das explosões, estatística e muitas outras as áreas da Matemática. Um dos mais importantes matemáticos do século XX. Foi membro do Instituto de Estudos Avançados em Princeton, New Jersey, do qual também fazia parte Albert Einstein. Foi professor na Universidade de Princeton e um dos construtores do ENIAC. Faleceu aos 53 anos, vítima de um tumor cerebral.

Arquitetura de von Neumann A Arquitetura de von Neumann - de John von Neumann (pronunciado Nóimann) - é uma arquitetura de computador que se caracteriza pela possibilidade de uma máquina digital armazenar seus programas no mesmo espaço de memória que os dados, podendo assim manipular tais programas. Esta arquitetura é um projeto modelo de um computador digital de programa armazenado que utiliza uma unidade de processamento (CPU) e uma de armazenamento ("memória") para comportar, respectivamente, instruções e dados. A máquina proposta por Von Neumann reúne os seguintes componentes: Uma memória, uma unidade aritmética e lógica (ALU), uma unidade central de processamento (CPU), composta por diversos registradores, e uma Unidade de Controle (CU), cuja função é a mesma da tabela de controle da Máquina de Turing universal: buscar um programa na memória, instrução por instrução, e executá-lo sobre os dados de entrada.

ENIAC Possuía 17.468 válvulas, de 160 kW de potência; EC: Identificar estrutura interna de um computador; Possuía 17.468 válvulas, de 160 kW de potência; Esta máquina não tinha sistema operacional e seu funcionamento era parecido com uma calculadora simples de hoje. O ENIAC, assim como uma calculadora, tinha de ser operado manualmente. A calculadora efetua os cálculos a partir das teclas pressionadas, fazendo interação direta com o hardware, como no ENIAC, no qual era preciso conectar fios, relês e sequências de chaves para que se determinasse a tarefa a ser executada. A cada tarefa diferente o processo deveria ser refeito. A resposta era dada por uma sequência de lâmpadas.

ENIAC Possuía 17.468 válvulas, de 160 kW de potência; EC: Identificar estrutura interna de um computador; Possuía 17.468 válvulas, de 160 kW de potência; Esta máquina não tinha sistema operacional e seu funcionamento era parecido com uma calculadora simples de hoje. O ENIAC, assim como uma calculadora, tinha de ser operado manualmente. A calculadora efetua os cálculos a partir das teclas pressionadas, fazendo interação direta com o hardware, como no ENIAC, no qual era preciso conectar fios, relês e sequências de chaves para que se determinasse a tarefa a ser executada. A cada tarefa diferente o processo deveria ser refeito. A resposta era dada por uma sequência de lâmpadas.

De volta ao resumo...

Organização da CPU Caminho de dados da máquina de Von Neumann: A + B Registradores A O ciclo do caminho de dados é que define a velocidade da máquina. B Registrador de entrada da ULA A B Barramento de entrada da ULA ULA Registrador de saída da ULA A + B

Organização da CPU Ciclo: Busca -> Decodificação -> Execução Execução de uma instrução: Trazer a próxima instrução da memória até o registrador. Alterar o contador de programa para indicar a próxima instrução. Determinar o tipo de instrução trazida. Se a instrução utilizar uma palavra na memória, determinar onde essa palavra está. Trazer a palavra para dentro de um registrador da CPU. Executar a instrução. Voltar à etapa 1 para iniciar a execução da instrução seguinte. Ciclo: Busca -> Decodificação -> Execução Tudo isso é feito em hardware.

Organização da CPU Execução de uma instrução – em software: Public class Interpret { Static int PC, inst, inst_type, data_loc, data; Static boolean run_bit = true; Public static void interpret (int memory[], int starting_address){ PC = starting_address; While (run_bit) { Instr = memory[PC]; PC = PC + 1; Instr_type = get_instr_type(instr); Data_loc = find_data(instr, instr_type); If (data_loc >=0 ) Data = memory[data_loc]; Execute(instr_type, data); } Prova da equivalência entre hardware e software.

Arquiteturas CISC x RISC CISC (sigla para Complex Instruction Set Computer, ou, em uma tradução literal, "Computador com um Conjunto Complexo de Instruções"): é uma linha de arquitetura de processadores capaz de executar centenas de instruções complexas diferentes sendo, assim, extremamente versátil. Exemplos de processadores CISC são os 386 e os 486 da Intel. Os processadores baseados na computação de conjunto de instruções complexas contêm uma micro-programação, ou seja, um conjunto de códigos de instruções que são gravados no processador, permitindo-lhe receber as instruções dos programas e executá-las, utilizando as instruções contidas na sua micro-programação. Seria como quebrar estas instruções, já em baixo nível, em diversas instruções mais próximas do hardware (as instruções contidas no microcódigo do processador). Como característica marcante esta arquitetura contém um conjunto grande de instruções, a maioria deles em um elevado grau de complexidade.

Arquiteturas CISC x RISC Examinando do ponto de vista um pouco mais prático, a vantagem da arquitetura CISC é que já temos muitas das instruções guardadas no próprio processador, o que facilita o trabalho dos programadores de linguagem de máquina; disponibilizando, assim, praticamente todas as instruções que serão usadas em seus programas. Os processadores CISC têm a vantagem de reduzir o tamanho do código executável por já possuírem muito do código comum em vários programas, em forma de uma única instrução. Porém, do ponto de vista da performance, os CISCs têm algumas desvantagens em relação aos RISCs, entre elas a impossibilidade de se alterar alguma instrução composta para se melhorar a performance. O código equivalente às instruções compostas do CISC pode ser escrito nos RISCs da forma desejada, usando um conjunto de instruções simples, da maneira que mais se adequar. Sendo assim, existe uma disputa entre tamanho do código X desempenho.

Arquiteturas CISC x RISC RISC Reduced Instruction Set Computer ou Computador com um Conjunto Reduzido de Instruções (RISC), é uma linha de arquitetura de processadores que favorece um conjunto simples e pequeno de instruções que levam aproximadamente a mesma quantidade de tempo para serem executadas. A maioria dos microprocessadores modernos são RISCs, por exemplo DEC Alpha, SPARC, MIPS, e PowerPC. O tipo de microprocessador mais comum em desktops, o x86, é mais semelhante ao CISC do que ao RISC, embora chips mais novos traduzam instruções x86 baseadas em arquitetura CISC em formas baseadas em arquitetura RISC mais simples, utilizando prioridade de execução. Os processadores baseados na computação de conjunto de instruções reduzido não têm micro-programação, as instruções são executadas diretamente pelo hardware. Como característica, esta arquitetura, além de não ter microcódigo, tem o conjunto de instruções reduzido, bem como baixo nível de complexidade.

Arquiteturas CISC x RISC A ideia foi inspirada pela descoberta de que muitas das características incluídas na arquitetura tradicional de processadores para ganho de desempenho foram ignoradas pelos programas que foram executados neles. Mas o desempenho do processador em relação à memória que ele acessava era crescente. Isto resultou num número de técnicas para otimização do processo dentro do processador, enquanto ao mesmo tempo tentando reduzir o número total de acessos à memória. RISC é também a arquitetura adotada para os processadores dos videogames modernos, que proporcionam um hardware extremamente dedicado somente à execução do jogo, tornando-o muito mais rápido em relação a micro computadores com mais recursos, embora com processador x86.

Arquiteturas CISC x RISC CISC = 200 / 300 instruções Complex Instruction Set Computer RISC = 50 instruções Reduced Instruction Set Computer CISC = instrução_x = 10ns RISC = instrução_1 = instrução_2 instrução_x = 3ns = instrução_3

Projeto de computadores modernos Aproximação máxima ao modelo RISC. Maximizar a taxa de execução das instruções; Quanto mais instruções forem iniciadas por segundo (MIPS), melhor será o desempenho da máquina. Instruções devem ser fáceis de decodificar; Instruções com muitos campos são demoradas para se codificar. Somente LOAD e STORE devem referenciar a memória Qualquer outra instrução deve operar somente entre os registradores. Providenciar bastante registradores; Acesso a memória é lento, por isso usar registradores.