Baixe o app para aproveitar ainda mais
Prévia do material em texto
pag. 1 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Como funciona o processador? pag. 2 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Cérebro de computador • É a parte mais importante do computador, o "cérebro" da máquina. • É o processador que controla as outras partes do PC e faz com que consiga executar funções como operações matemáticas, elaboração de textos e armazenamento de dados. • Para fazer esses trabalhos, o processador utiliza uma linguagem numérica, chamada de binária, que transforma em 0’s e 1’s toda a informação que circula pelo computador, sejam números, letras ou instruções. • Quanto mais sofisticado for o processador, mais funções consegue realizar e com maior velocidade. • As tarefas e os componentes na figura seguinte são comuns a todos os processadores. pag. 3 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Para executar tarefas, o processador trabalha em conjunto com outras partes do computador: 1- DISPOSITIVO DE SAÍDA (monitor): mostra a execução da operação que está sendo realizada 2- FONTE DE ALIMENTAÇÃO: por onde entra a energia eléctrica necessária ao funcionamento do computador 3- MEMÓRIA: Armazena dados, programas e sequências de instruções 4- INTERFACE DE ENTRADA (teclado, mouse): por onde são enviados os comandos ao processador COMPONENTES INTERNOS: 5 - INTERFACE DE BARRAMENTOS EXTERNOS: É a porta de entrada e saída de dados do processador 6- CONTROLADOR: Controla a execução de todas as operações, de acordo com a instrução a ser executada 7- APONTADOR DE INSTRUÇÃO: É onde fica guardada a informação que diz para o processador qual a próxima tarefa que ele deverá executar 8- REGISTOS DE DADOS: As informações são deslocadas da memória e dos dispositivos de entradas para esses locais, onde são executadas as tarefas solicitadas. Feito isso, o dado é transferido novamente para a memória, ou para os dispositivos de saída 9- ACUMULADOR: É um registo especial de dados, onde as instruções de alteração aritmética ou lógica de dados são realizadas 10- UNIDADE LÓGICA ARITMÉTICA (ALU): É onde são feitas as operações matemáticas básicas (adição, subtracção etc.) 11- BARRAMENTO DE DADOS: São as vias físicas por onde os dados são transferidos, tanto internamente ao processador quanto externamente (neste caso são chamados barramentos externos). Os barramentos interligam todos os componentes que tenham acesso aos dados pag. 4 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Máquina em acção Como o computador faz a soma de dois números inteiros • O processador procura na memória RAM externa, através do barramento de dados (7) e do controlador (4), o primeiro número a ser somado • Este número é guardado no acumulador (6), um registo especial para operações aritméticas e lógicas • O processador procura o segundo número, também na memória RAM externa, pelo mesmo caminho. A diferença é que o segundo número está numa posição diferente de memória • O segundo número é somado ao primeiro e guardado no próprio acumulador • O resultado presente no acumulador é transferido de volta para a memória RAM, pelo mesmo caminho • A sequência das operações acima chama-se programa. É uma relação de instruções ordenadas adequadamente. Esta sequência de instruções também é armazenada em memória, numa área diferente daquela onde ficam guardados os números a serem somados. pag. 5 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Arquitectura dos processadores Outra arquitectura foi desenvolvida pela Motorola para os Apple Macintosh.(incompatível com o PC - IBM). Passaram a existir duas arquitecturas de processadores: • CISC (Complex Intruction Set Computing) • RISC (Reduced Intruction Set Computing) Voltar pag. 6 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Ciclos do processador • Relógio (Clock): - Gera impulsos para o processador - A cada impulsos o processador efectua uma operação (instrução simples). Voltar pag. 7 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula ESTRUTURA BÁSICA DE UM COMPUTADOR PERIFÉRICOS DE ENTRADA PERIFÉRICOS DE SAÍDA C.P.U. MEMÓRIA AUXILIAR Aquisição / Descodificação U.C. A.L.U. Memória Principal PERIFÉRICO MISTO pag. 8 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Processadores • O processador é o cérebro do computador. Sua função é executar os programas armazenados na memória principal, buscando cada uma das instruções do programa, examinando-as, e executando-as uma após a outra. • Os componentes de tal computador são interligados por meio de um barramento, um conjunto de fios paralelos que permite a transmissão de dados, endereços e sinais de controle. pag. 9 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Processadores • O processador é constituído de diversas partes distintas: – ULA – UC – Memória pequena e de alta velocidade, formada por registradores (Ex. PC (Program Counter), IR (Registrador de Instruções) pag. 10 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Processadores pag. 11 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Organização do Processador • A figura a seguir mostra em detalhes a organização de parte de um típico processador de Von Neumann. • Essa parte do processador é conhecida como caminho de dados e é constituída dos registradores, da ULA e de um conjunto de barramentos que interligam seus diversos componentes. • Os registradores alimentam as duas entradas da ULA (A e B). A ULA realiza operações de soma e subtração, além de outras operações muito simples sobre suas duas entradas, permitindo que o resultado da operação seja armazenado no registrador de saída. pag. 12 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Organização do Processador pag. 13 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Execução das Instruções • Para ser executada pelo processador, uma instrução precisa ser dividida numa série de passos pequenos. A grosso modo, tais passos são: 1. Procura a próxima instrução na memória e armazenamento da instrução no registo de instruções (IR); 2. Actualização do valor do program counter (PC), fazendo-o apontar para a instrução seguinte; 3. Determinação do tipo da instrução que está armazenada no registo de instruções; 4. Se a instrução precisar de uma palavra armazenada na memória, nesse passo deve ser determinado onde essa palavra está armazenada; 5. procura a palavra, se necessário, e armazenamento num dos registos do processador; 6. Execução da instrução; 7. Retorno ao passo 1 para iniciar a execução da instrução seguinte. pag. 14 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula RISC versus CISC • Nos últimos anos da década de 1970 a técnica dominante para projecto de processadores privilegiava as instruções muito complexas, cuja implementação era muito simples com o emprego do interpretador. • Os projectistas estavam a tentar minimizar o chamado “gap semântico”, a distancia entre aquilo que a máquina podia realizar e aquilo que as linguagens de programação de alto nível exigiam. • Na época ninguém pensava em projectar máquinas mais simples. • Em 1980 alguns investigadores desenvolveram chips processadores que não usavam interpretação. pag. 15 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula RISC versus CISC • RISC: Reduced Instruction Set Computer – Pequeno número de instruções. • CISC: Complex InstructionSet Computer – Instruções muito complexas que são implementadas com o auxílio do interpretador. pag. 16 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula RISC versus CISC • Começou então uma guerra entre os adeptos da filosofia RISC atacando a ordem estabelecida CISC (IBM, Intel...). • Eles defendiam a tese de que a melhor maneira de projectar um processador era com um pequeno número de instruções, todas muito simples. • O argumento dos adeptos da filosofia RISC era que, mesmo que uma máquina RISC precisasse de 4 ou 5 instruções para fazer o que uma máquina CISC faria em apenas uma, se as instruções RISC fossem 10 vezes mais rápidas (por não serem interpretadas), a máquina RISC venceria pag. 17 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula RISC versus CISC • Com base nisto, é lícito pensar que, em função da melhor performance da tecnologia RISC, as máquinas projectadas com esta tecnologia (chip Alpha da DEC) se tornava num sucesso de vendas. Nada disso aconteceu....Porquê??? • Existe a questão da compatibilidade com máquinas antigas. • A Intel tem se esforçado para utilizar as ideias básicas do projecto RISC nas suas máquinas com tecnologia CISC. • A partir do 486, a Intel passou a projectar os processadores com um núcleo RISC (responsável pela execução das instruções mais simples) , enquanto as instruções mais complexas são interpretadas na filosofia CISC. pag. 18 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Paralelismo • Os arquitectos dos computadores estão sempre a ser desafiados para melhorar cada vez mais a performance das máquina que eles projectam. • Uma maneira de se obter isso é fazer com que os chips rodem cada vez mais rápido, aumentando a velocidade do clock, mas existe um limite tecnológico para isso. • Como consequência os investigadores voltam-se, na sua maioria, para o paralelismo (executando duas ou mais operações ao mesmo tempo) como forma de obter uma performance ainda melhor, para uma dada velocidade do clock. pag. 19 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Paralelismo • O paralelismo manifesta-se de duas formas: – No nível das instruções: O paralelismo é explorado dentro das instruções individuais, de maneira a conseguir que a máquina execute mais instruções por segundo. – No nível do processador: Vários processadores trabalham juntos na solução do mesmo problema pag. 20 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Paralelismo no Nível das Instruções • O paralelismo é explorado dentro das instruções individuais, de maneira a conseguir que a máquina execute mais instruções por segundo. • Execução em Pipeline – O maior gargalo para a velocidade de execução de instruções é o acesso a memória. – Para tentar minimizar este problema, as máquinas foram projectadas com a capacidade de buscar antecipadamente instruções da memória, de maneira a encontrá-las já no processador quando chegar o momento de executá-las. pag. 21 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Paralelismo no Nível das Instruções • Execução em Pipeline – Tais instruções eram armazenadas num conjunto de registos denominados buffer. – Um Buffer divide a execução das instruções apenas em duas partes: procura e efectiva execução. – O conceito de pipeline leva esta estratégia bem mais além. Em vez de dividir a execução das instruções em apenas duas partes, o processamento do pipeline divide a execução das instruções em várias partes. A execução das partes ocorre em paralelo. pag. 22 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Paralelismo no Nível das Instruções • Arquitecturas Superescalares: – Se um pipeline é bom, com certeza dois serão ainda melhor. – Nesse caso, uma única unidade de procura de instrução procura pares de instruções juntos e coloca cada um deles no seu próprio pipeline, permitindo a execução das instruções em paralelo. – Para que seja possível a execução das instruções em paralelo, não pode haver conflito pela utilização de recursos durante a execução e o resultado de uma instrução não pode depender da execução da outra. pag. 23 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Paralelismo no Nível das Instruções • Arquitecturas Superescalares: – Apesar do processamento em pipeline, simples ou duplo, ser mais empregue nas máquinas RISC, a partir do 486 a Intel passou a usar o pipeline nos seus processadores. – O 486 tinha um pipeline e o Pentium tinha dois pipelines de cinco estágios – A existência de quatro pipelines, duplica o hardware necessário à sua implementação. – Portanto, em vez de quatro pipelines, as máquinas de alta performance usam outra metodologia pag. 24 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Paralelismo no Nível das Instruções • Arquitecturas Superescalares: – A ideia básica é ter um único pipeline, com diversas unidades funcionais (ex. Pentium II). A expressão arquitectura superescalar foi cunhada para designar esta metodologia. pag. 25 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Memória Principal • Bits: – A unidade básica de memória é o dígito binário, conhecido como bit. Um bit pode ter valor 0 ou 1. Ele é a unidade de memória mais simples possível. • Endereços de Memória: – A memória é formada por um conjunto de células, cada uma das quais podendo guardar uma informação. Cada célula tem um número associado a ela, o endereço da célula. É por meio desse endereço que os programas podem referenciar a célula. pag. 26 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Memória Principal • Endereços de Memória: – A célula é a menor unidade endereçável em um computador. Quase todos os fabricantes padronizaram o tamanho da célula em 8 bits (byte). Os bytes são agrupados em palavras. Um computador com palavra de 32 bits tem 4 bytes/palavra, enquanto um computador com palavra de 64 bits tem 8 bytes/palavra. pag. 27 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Memória Principal • Memória Cache: – A idéia básica que há por trás do conceito de memória cache é simples: as palavras de memória mais usadas pelo processador devem permanecer armazenadas na cache. Quando o processador precisar de uma palavra, ele primeiro busca essa palavra na cache. Somente no caso de ela não estar armazenada na cache é que a busca se dará na memória principal. Se uma parte substancial dos acessos for satisfeita pela cache, o tempo médio de acesso será muito pequeno, próximo ao da cache. pag. 28 I.P.C.A. E.S.T. Arq. de Comp. e Redes SIG II 3ªA ula Memória Principal • Memória Cache: – Portanto, o sucesso depende fundamentalmente da fração dos acessos satisfeitos pela cache. – Os programas não acessam a memória de modo totalmente aleatório. Se o endereço A acabou de ser referenciado por um programa em execução, é muito provável que o próximo acesso seja na vizinhança de A . – Se quando uma palavra for referenciada pelo processador e trazida para a cache, vierem junto com ela da memória principal algumas de suas vizinhas, que com certeza serão usadas em breve, o tempo de acesso a essas palavras será bastante reduzido. Como funciona o processador? Cérebro de computador Para executar tarefas, o processador trabalha em conjunto com outras partes do computador: Máquina em acção Como o computador faz a soma de dois números inteiros Arquitectura dos processadores Ciclos do processador ESTRUTURA BÁSICA DE UM COMPUTADOR ProcessadoresProcessadores Processadores Organização do Processador Organização do Processador Execução das Instruções RISC versus CISC RISC versus CISC RISC versus CISC RISC versus CISC Paralelismo Paralelismo Paralelismo no Nível das Instruções Paralelismo no Nível das Instruções Paralelismo no Nível das Instruções Paralelismo no Nível das Instruções Paralelismo no Nível das Instruções Memória Principal Memória Principal Memória Principal Memória Principal
Compartilhar