Arquitetura de Computadores

Slides:



Advertisements
Apresentações semelhantes
Capitulo 6: Entrada e Saída
Advertisements

Arquitetura e organização de computadores Aula 02 Conceitos Gerais Prof. Diovani Milhorim.
A Interface entre Processadores e Periféricos
Arquitetura e organização de computadores
Arquitetura e organização de computadores
Arquitetura e organização de computadores.
Barramentos Introdução.
Entrada e Saída Introdução.
Técnicas para operações E/S
Arquitetura de Computadores
ARQUITETURAS RISC E CISC
Unidades de Execução e de Controle Sistemas Digitais.
Problemas com Entrada e Saída
Comunicação local Assíncrona
Rganização de Computadores A Interface entre o Processador e os Periféricos Capítulo 8 – Patterson & Hennessy (seções 8.4 e 8.5) Organização de Computadores.
Arquitetura e organização de computadores - Entradas e saídas – i/o
Sistemas Operacionais
Professor: Erivelto Tschoeke – UDESC/CEPLAN
Esquema básico do hardware
Arquitetura de Sistemas Operacionais
USB – Universal Serial Bus
Threads.
Sinais e tipos de transmissão;
INTRODUÇÃO À COMPUTAÇÃO
Arquitetura de Computadores
Redes – Unidade 1 Aula 4 Professor: Marcelo Maia.
Prof.: Vagner Pinto Borges Prof.: Vagner Pinto Introdução à Arquitetura e Organização.
AULA 1.
Sistemas Operacionais
Disciplina: Redes de Computadores I Prof. João Paulo de Toledo Gomes
Fundamentos da arquitetura de computadores
Sistemas Operacionais I
Organização e Arquitetura de Computadores
Entrada e Saída (E/S ou I/O)
Estudo de Comunicação Serial (UART)
Pet computação UFPE Aula de apoio aos feras: Arquitetura de Computadores.
Arquitetura de Computadores
POLIMIG Curso Técnico em Informática Disciplina: Hardware
Protocolos de Janela Deslizante
Sistemas Operacionais
Capítulo 5 Entrada/Saída 5.1 Princípios do hardware de E/S
Um glossário de termos indispensáveis...
Barramentos em Microcomputadores
Entrada e Saída (E/S).
Organização e Arquitetura de Computadores
Organização e Arquitetura de Computadores 2ºSemestre Aula 11 – Parte 2 Prof. Carlos Vinícius SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIAL.
FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO
TRABALHO REALIZADO POR: Ricardo costa
Subsistema de Entrada e Saída do Kernel
Transmissões de Dados 2014/2015 Comunicação de Dados
Processador 2014/2015 Comunicação de Dados Ricardo Bento 12ºL.
Introdução à Computação Componentes Básicos dos Computadores
Introdução à Engenharia de Computação
Memória.
Trabalho realizado por: Nuno bandola
Arquitetura de Computadores
Processadores.
Arquitetura de Microcomputadores
Funcionamento interno do computador
Arquitetura de computadores
Introdução à Computação
Sistemas Operacionais IV – Gerenciamento de E/S
Diagrama em blocos: Hardware de Computadores
Por: Lucas da Silva Montes, Marcos Ghesla e Vinícius Randon.
Arquitetura de Sistemas Operacionais
ARQUITETURA DE VON NEUMANN
1 Redes de computadores e a Internet  1.1 Evolução Histórica das Redes de Dados  1.2 Terminologia de Teleprocessamento  1.3 Formas de Utilização do.
Pet computação UFPE Arquitetura Von Neumann. pet computação UFPE 1.Definição e tipos de arquitetura Quando falamos em arquitetura temos dois tipos a considerar:
Modelos de Troca de Dados em Nível Elétrico ARQUITETURA DE COMPUTADORES II Prof. César Augusto M. Marcon.
BARRAMENTO Caminho de Dados.
Transcrição da apresentação:

Arquitetura de Computadores Prof.: Bruno Rafael de Oliveira Rodrigues

O ciclo de busca, decodificação e execução

Durante a fase de busca a unidade de controle solicita que a memória principal forneça a próxima instrução a ser executada. A unidade de controle, que pode se comunicar com a memória principal, sabe qual é a próxima instrução porque mantém o ponteiro de instrução sempre apontando para o valor da instrução ainda não lida da RAM. A unidade de controle, então, copia o valor armazenado no endereço de memória apontado pelo ponteiro de instrução para dentro do registrador de instrução. Por fim, a unidade de controle passa o apontador de instrução para o próximo endereço e aguarda a etapa de decodificação.

Na decodificação o dado recém chegado da memória RAM é analisado Na decodificação o dado recém chegado da memória RAM é analisado. É um dado comum? É uma instrução? Dependendo da resposta ele é copiado para o registrador apropriado.

Feita a decodificação, a unidade de controle entra na fase de execução, onde ativa os circuitos necessários para a realização da tarefa. Se for um pedido de soma, a porção aritmética da ULA atenderá. Se for um pedido para que o processador receba, em um de seus registradores genéricos, os dados de uma outra posição de memória, a própria unidade de controle atenderá. Tudo depende, enfim, do programa de computador em execução.

Quando a instrução estiver completamente executada, o ciclo recomeçará partindo da fase de busca. O apontador de instrução já estará apontando para o próximo endereço da memória que contém a nova instrução. A etapa de busca é a mais demorada. Para ajudar na performance, os projetistas de processador incorporaram o conceito de Pipeline.

Pipelining É uma técnica desenvolvida para melhorar o desempenho de processadores. O pipelining permite que um processador sobreponha a execução de diversas instruções de modo que mais instruções possam ser executadas no mesmo período de tempo.

Com este sistema existe a chance de que a próxima instrução já esteja no tubo para ser copiada para dentro de um registrador, acelerando dramaticamente a vazão dos dados.

O motivo de não ser possível prever exatamente quais serão as próximas instruções reside no fato de haver no processador a estrutura de condição. O processador, em sua linguagem de máquina, faz esses desvios alterando a ordem de execução das instruções. Por isso a impossibilidade de sabermos, de antemão, quais regiões da memória devem ser copiadas para o tubo.

Um dos overheads associados à operação de um pipeline é decorrente da necessidade de se transferir dados entre os estágios. Há duas estratégias básicas para controlar a transferência de dados entre os estágios de um pipeline: o método assíncrono e o método síncrono.

Overhead geralmente considerado qualquer processamento ou armazenamento em excesso, seja de tempo de computação, de memória, de largura de banda ou qualquer outro recurso que seja requerido para ser utilizado ou gasto para executar uma determinada tarefa.

CISC (Complex Instruction Set Computing) Reconhece mais de uma centena de instruções É mais lento na execução das instruções (quanto > número de instruções > tempo) A maioria dos microprocessadores são CISC

RISC (Reduced Instruction Set Computing) Reconhece no limitado de instruções otimizadas para que sejam executadas com mais rapidez Conjunto de instruções mínimo: instruções não disponíveis são executadas como combinações das existentes Desempenho de 50-75% superior a um CISC

Múltiplos processadores e múltiplos núcleos O termo multiprocessamento faz referência ao uso de dois ou mais processadores para a realização de tarefas em paralelo. O desafio é conseguir coordenar os processadores para trabalharem sem que um danifique os dados do outro, pois a memória principal geralmente é compartilhada entre eles. Ter dois processadores não significa ter 200% de velocidade, um deles pode ficar esperando o cálculo do outro.

Processadores com mais de um núcleo Um só processador, porém com dois ou mais núcleos de cálculo. Fica-se com um computador contendo um único microchip. Internamente, este processador é capaz de realizar duas ou mais operações de cálculo por ciclo, dependendo da quantidade de núcleos presentes.

As estruturas auxiliares, como os registradores e o próprio pipeline, são compartilhadas entre esses núcleos.

Alguns nomes de mercado para este recurso são: Hyperthreading, Core Duo e Multi Core.

Entradas e Saídas Funções: a comunicação do usuário com o computador a comunicação do computador com o meio ambiente (dispositivos externos a serem monitorados ou controlados) armazenamento (gravação) de dados.

Os dispositivos de entrada e saída são muito mais lentos que o computador, característica essa que impõe restrições à comunicação, de vez que o computador precisaria esperar muito tempo pela resposta do dispositivo.

A UCP não se comunica diretamente com cada dispositivo de E/S e sim com "interfaces", de forma a compatibilizar as diferentes características. O processo de comunicação ("protocolo") é feito através de transferência de informações de controle, endereços e dados propriamente ditos. Inicialmente, a UCP interroga o dispositivo, enviando o endereço do dispositivo e um sinal dizendo se quer mandar ou receber dados através da interface. O periférico, reconhecendo seu endereço, responde quando está pronto para receber (ou enviar) os dados. A UCP então transfere (ou recebe) os dados através da interface, e o dispositivo responde confirmando que recebeu (ou transferiu) os dados (acknowledge ou ACK) ou que não recebeu os dados, neste caso solicitando retransmissão (not-acknowledge ou NAK). As interfaces de entrada e saída são conhecidas por diversos nomes, dependendo do fabricante: Interface de E/S = Adaptador de Periférico, Controladora de E/S, Processador de Periférico, Canal de E/S Por exemplo, os computadores de grande porte da IBM chamam de "I/O channel".

A compatibilização de velocidades é feita geralmente por programa, usando memórias temporárias na interface chamadas "buffers" que armazenam as informações conforme vão chegando da UCP e as libera para o dispositivo à medida que este as pode receber.

Formas de Comunicação - Comunicação em Paralelo Na comunicação em paralelo, grupos de bits são transferidos simultaneamente (em geral, byte a byte) através de diversas linhas condutoras dos sinais. Desta forma, como vários bits são transmitidos simultaneamente a cada ciclo, a taxa de transferência de dados ("throughput") é alta. No entanto, o processo de transferência em paralelo envolve um controle sofisticado e é razoavelmente complexo, o que o torna mais caro. Um dos problemas importantes diz respeito à propagação dos sinais no meio físico, isto é, no cabo de conexão entre o dispositivo e a interface.

As restrições citadas contribuem para que a utilização da comunicação em paralelo se limite a aplicações que demandem altas taxas de trasferência, normalmente associadas a dispositivos mais velozes tais como unidades de disco, ou que demandem altas taxas de transferência, como CD-ROM, DVD, ou mesmo impressoras, e que se situem muito próximo do núcleo do computador. Em geral, o comprimento dos cabos paralelos é limitado a até um máximo de 1,5 metro.

Comunicação Paralela

Formas de Comunicação - Comunicação Serial Na comunicação serial, os bits são transferidos um a um, através de um único par condutor. Os bytes a serem transmitidos são serializados, isto é, são "desmontados" bit a bit, e são individualmente transmitidos, um a um. O controle é comparativamente muito mais simples que no modo paralelo e é de implementação mais barata.

A transmissão serial não é afetada por irregularidades do meio de transmissão. No entanto, a transmissão serial é intrinsecamente mais lenta

Como os bits são transmitidos seqüencialmente um a um, sua utilização é normalmente indicada apenas para periféricos mais lentos, como por exemplo teclado, mouse, etc. ou quando o problema da distância for mandatório

Comparativamente, a transmissão serial tem recebido aperfeiçoamentos importantes (seja de protocolo, de interface e de meio de transmissão) que vem permitindo o aumento da velocidade de transmissão por um único par de fios, cabo coaxial ou de fibra ótica. Como o aumento da velocidade de transmissão em interfaces paralelas ocasiona mais skew, a tendência tem sido no sentido do aperfeiçoamento das interfaces seriais que hoje permitem taxas de transferência muito altas com relativamente poucas restrições de distância. Em microcomputadores, a interface USB - Universal Serial Bus permite hoje ligar até 128 dispositivos a taxas muito altas (centenas de kbps).

Tabela Comparativa Característica Paralelo Serial Custo maior menor Distância curta sem limite Throughput alto baixo

TRANSMISSÃO SÍNCRONA E ASSÍNCRONA Na transmissão síncrona, o intervalo de tempo entre dois caracteres subseqüentes é fixo. Nesse método, os dois dispositivos - transmissor e receptor - são sincronizados, pois existe uma relação direta entre tempo e os caracteres transferidos. Quando não há caracteres a serem transferidos, o transmissor continua enviando caracteres especiais de forma que o intervalo de tempo entre caracteres se mantém constante e o receptor mantém-se sincronizado.

Já na transmissão assíncrona, o intervalo de tempo entre os caracteres não é fixo. Como o fluxo de caracteres não é homogêneo, não haveria como distinguir a ausência de bits sendo transmitidos de um eventual fluxo de bits zero e o receptor nunca saberia quando virá o próximo caractere, e portanto não teria como identificar o que seria o primeiro bit do caractere.

TRANSMISSÃO SIMPLEX, HALF-DUPLEX E FULL-DUPLEX Uma comunicação é dita simplex quando permite comunicação apenas em um único sentido, tendo em uma extremidade um dispositivo apenas transmissor (transmitter) e do outro um dispositivo apenas receptor (receiver). Não há possibilidade do dispositivo receptor enviar dados ou mesmo sinalizar se os dados foram recebidos corretamente. Transmissões de rádio e televisão são exemplos de transmissão simplex.

Uma comunicação é dita half-duplex (também chamada semi-duplex) quando existem em ambas as extremidades dispositivos que podem transmitir e receber dados, porém não simultaneamente. Durante uma transmissão half-duplex, em determinado instante um dispositivo A será transmissor e o outro B será receptor, em outro instante os papéis podem se inverter.

Uma transmissão é dita full-duplex (também chamada apenas duplex) quando dados podem ser transmitidos e recebidos simultaneamente em ambos os sentidos. Poderíamos entender uma linha full-duplex como funcionalmente equivalente a duas linhas simplex, uma em cada direção. Como as transmissões podem ser simultâneas em ambos os sentidos e não existe perda de tempo com turn-around, uma linha full-duplex pode transmitir mais informações por unidade de tempo (maior throughput) que uma linha half-duplex, considerando-se a mesma taxa de transmissão de dados.

Atividade Faça comparações entre as portas de comunicação: USB, Firewire, Serial e Paralela. Cite equipamentos utilizados nestas portas.