



























Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Processadores
Tipologia: Notas de estudo
1 / 35
Esta página não é visível na pré-visualização
Não perca as partes importantes!




























MICROPROCESSADORES
O presente trabalho visa fornecer informações conceituais e práticas sobre
microprocessadores. O microprocessador também conhecido como CPU ou UCP é um
chip que mantém as funções de processamento e controle de instruções, está localizado
sobre a placa mãe do computador. Esse chip sofreu transformações tecnológicas ao
longo dos anos, proporcionando aos computadores um aumento considerável em seu
poder computacional e na sua flexibilidade de uso. Paralelamente à evolução das CPUs,
os computadores passaram a ser utilizados por um número cada vez maior de pessoas,
pois a medida em que as máquinas passaram a ter uma alta demanda o preço sofreu
considerável redução, sendo essa uma tendência seguida até os dias atuais. Dessa forma,
os microprocessadores tem conduzido a evolução tecnológica da computação, pois
assim que novos chips são lançados no mercado, são também lançados softwares e
dispositivos mais poderosos, com o intuito de proporcionar maior rapidez, flexibilidade
e confiabilidade na execução de tarefas.
The present work provider concepts and pratics informations about
microprocessors. The microprocessor knowledgeable too as CPU or UCP is a chip that
support the functions processing and control of instructions, is located on the mother
board of the computer. This chip suffered tecnologics transformations of long in the
years, providing in the computers a increase considerable in your power
computacionable and your use flexible. Paraleling the CPU’s evolution, the computers
were used for the number gradualing greatter of the peoples, so while machines
spending to have a high demand the price suffered considerable reduction, like this a
tendency continuous until the current days. So, the microprocessors have to leaded the
computacion’s evolution tecnology, so that new chips are lanced in the marketing, are
too lanced softwares and peripherals powerfull, with the aim to provide greater speed,
flexibility and entrustable in the jobs execution.
1. Introdução Sobre Microprocessadores
A primeira característica a considerar num computador é sua unidade central de processamento, que poderá fornecer uma série de indicações sobre o equipamento. A UCP ou CPU (Central Processing Unit) , também pode ser chamada de processador ou microprocessador, os quatro termos são equivalentes. Tudo o que acontece num computador provém da UCP, que gerência todos os recursos disponíveis no sistema. Seu funcionamento é coordenado pelos programas, que indicam o que deve ser feito e quando. Basicamente, a UCP executa cálculos muito simples como somas e comparações entre números, mas com uma característica muito especial: uma velocidade extremamente elevada. A função das UCPs é sempre a mesma. O que as diferenciam é sua estrutura interna e, o mais importante, o fato de cada uma ter seu conjunto de instruções próprio. Ou seja, um programa escrito para uma UCP dificilmente poderá ser executado diretamente em outra - esse é um dos principais motivos da incompatibilidade entre os computadores. A UCP trabalha diretamente com a memória principal. O conteúdo da memória principal é uma combinação de informações e instruções. As instruções que o processador central pode executar diretamente estão na linguagem de máquina da UCP. O processamento é feito pela Unidade Central de Processamento utilizando o ciclo busca-execução regulado pelo clock (relógio). A seqüência desse ciclo é:
Estas etapas compõem o que se denomina ciclo de instrução. Este ciclo se repete indefinidamente até que o sistema seja desligado, ou ocorra algum tipo de erro, ou seja encontrada uma instrução de parada. As atividades realizadas pela UCP podem ser divididas em duas grandes categorias funcionais (Monteiro (1995)):
A área de controle é projetada para entender o que fazer, como fazer e comandar quem vai fazer no momento adequado. Os dispositivos básicos que devem fazer parte daquela área funcional são: unidade de controle, decodificador, registrador de instrução, contador de instrução, relógio ou "clock" e os registradores de endereço de memória e de dados da memória.
1.1 Unidade de Aritmética e Lógica - UAL
A UAL é o dispositivo da UCP que executa realmente as operações matemáticas com os dados. A UAL é um aglomerado de circuitos lógicos e componentes eletrônicos simples que, integrados, realizam as operações já mencionadas. Ela pode ser uma parte pequena da pastilha do processador, usada em pequenos sistemas, ou pode compreender um considerável conjunto de componentes lógicos de alta velocidade. A despeito da grande variação de velocidade, tamanho e complexidade, as operações aritméticas e lógicas realizadas por uma UAL seguem sempre os mesmos princípios fundamentais.
1.2 Registradores
Para que um dado possa ser transferido para a UAL, é necessário que ele permaneça, mesmo que por um breve instante, armazenado em um registrador. Além disso, o resultado de uma operação aritmética ou lógica realizada na UAL deve ser armazenado temporariamente, de modo que possa ser utilizado mais adiante ou apenas para ser, em seguida, transferido para a memória. Para entender a estes propósitos, a UCP é fabricada com uma certa quantidade de registradores, destinados ao armazenamento de dados. Servem, pois, de memória auxiliar da UAL. Há sistemas nos quais um desses registradores, denominados acumulador , além de armazenar dados, serve de elemento de ligação da UAL com os restantes dispositivos da UCP.
1.3 Unidade de Controle
É o dispositivo mais complexo da UCP. Além de possuir a lógica necessária para realizar a movimentação de dados e instruções de e para a UCP, através dos sinais de controle que emite em instantes de tempo programados, esse dispositivo controla a ação da UAL. Os sinais de controle emitidos pela UC ocorrem em vários instantes durante o período de realização de um ciclo de instrução e, de modo geral, todos possuem uma duração fixa e igual, originada em um gerador de sinais usualmente conhecido como relógio. Ao contrário de circuitos integrados mais comuns, cuja função é limitada pelo hardware, a unidade de controle é mais flexível. Ela recebe instruções da unidade de E/S, as converte em um formato que pode ser entendido pela unidade de aritmética e lógica, e controla qual etapa do programa está sendo executado.
1.4 Relógio
É o dispositivo gerador de pulsos cuja duração é chamada de ciclo. A quantidade de vezes em que este pulso básico se repete em um segundo define a unidade de medida do relógio, denominada freqüência , a qual também usamos para definir velocidade na UCP.
1.9 Termos utilizados para definir alguns conceitos sobre microprocessadores
Palavra- Quantidade de bits que é tratada em cada ciclo do processador. Não confundir com BYTE, que é de 8 bits para todos da tabela. Fisicamente, corresponde à quantidade de "fios" da via de dados do processador.
Via de E/S - Quantidade bits acessados a cada ciclo de interação com um dispositivo de E/S (entrada/saída). Via de regra, é igual a uma palavra, mas existem casos em que é igual a ½ palavra, como é o do 8088, e outros que é igual ao dobro do palavra para determinadas operações como num Pentium. Fisicamente, corresponde a quantidade de "fios" da via de E/S do computador. A unidade de E/S liga o microprocessador aos outros circuitos do computador, transmitindo informações de programa e de dados para os registradores da unidade de controle e da unidade de aritmética e lógica. A unidade de E/S faz uma correspondência entre os níveis de sinal e a sincronização dos circuitos internos de estado sólido do microprocessador com os outros componentes contidos no PC. Por exemplo, os circuitos internos de um microprocessador são projetados para serem econômicos com a eletricidade, de modo a operar mais rápido e gerar menos calor. Esses delicados circuitos internos não são capazes de lidar com as correntes mais altas necessárias para ligação com componentes externos. Consequentemente, cada sinal que sai do microprocessador passa por um buffer de sinal da unidade de I/O, que eleva sua capacidade de lidar com correntes. A unidade de E/S pode ter apenas alguns poucos buffers ou pode envolver muitas funções complexas. Nos microprocessadores Intel usados mais recentemente em PCs com grande capacidade de processamento, a unidade de E/S inclui o cache de memória e a lógica de duplicação de clock para adequar a alta velocidade operacional do microprocessador a memória externa mais lenta.
Via de endereços - Quantidade de bits que podem ser enviados para representar um endereço de uma posição na memória. Fisicamente, corresponde ao número de "fios" da via de endereços.
Memória RAM - É conseqüência direta da via de endereço. A memória RAM máxima é igual a 2 elevado ao número de bits (fios) da via de endereço. Note que entre o 68020 e o 486 há estruturas com as três características de 32 bits, palavra, entrada/saída e endereçamento.
Clock - Velocidade dos ciclos por segundo que regulam o funcionamento da UCP. Computadores trabalham de acordo com um padrão de tempo, com o qual podem gerenciar as transmissões de informações entre os vários dispositivos do sistema, uma vez que as informações são convertidas em sinais elétricos. Sem um padrão de tempo seria difícil diferente uma informação de outra. Esse padrão de tempo é indicado pela freqüência do clock em MHz - Milhões de ciclos por segundo. Os microprocessadores até o 486 realizavam uma operação básica por ciclo; No Pentium já podem ser até 2 e no PowerPC MPC601 até 3. O clock só é uma indicação precisa da capacidade de processamento quando se compara UCPs iguais ou semelhantes.
MIPS - Milhões de instruções por segundo. Até o início da década era a unidade mais utilizada para indicar capacidade do processamento da UCP. Apesar de criticada, ainda
é usada para sistemas. Para os de maior porte, a unidade passou a ser o Mega-flops. A tendência é utilizar outros índices mais complexos. A capacidade de processamento é função direta do conjunto dessas características: Palavra, barramento (via ou bus), memória, velocidade do clock, capacidade (MIPS ou outro índice), e também de outros fatores como arquitetura do microprocessador, seu conjunto de instruções básica, arquitetura do Sistema e, em especial, como esse conjunto se comporta em cada tipo de aplicação. É comum durante a vida de um modelo de microprocessador que a sua velocidade seja aumentada com novos modelos; Um exemplo é o 8086, cujos primeiros modelos operam com um clock de 4,77 MHz e alguns anos depois vários fabricantes já o utilizavam com um clock de 8 MHz e depois de 10 MHz. A velocidade do microprocessador começa com o valor recomendado que é, na realidade, o valor mínimo garantido, pela estrutura de projeto do Chip. Com o passar do tempo, novos modelos aumentam esse valor; O 486 tem modelos de 16, 25, 33, 40, 50 e 66 MHz.
1.10 Interrupções
O barramento de controle forma juntamente com o barramento de dados e de endereço o conjunto de barramentos do microprocessador. O barramento de controle armazena uma miscelânea de sinais digitais com diversas finalidades. Alguns exemplos de sinais digitais desse barramento são:
1.11 Bits internos e externos Dentro de um microprocessador, existem vários circuitos que armazenam, transportam e processam dados. Nos microprocessadores 386 e 486, tais circuitos operam com 32 bits de cada vez. Quanto maior o número de bits internos de um microprocessador, mais veloz poderá realizar cálculos e processamento de instruções em geral. Abaixo são apresentados os limites de números inteiros positivos que podem ser manipulados com 8, 16 e 32 bits: 8 bits 0 a 255 16 bits 0 a 65. 32 bits 0 a 4.294.967.
b) Pode não ser possível buscar nova instrução antes da execução completa da anterior. Em uma instrução de desvio, o endereço de desvio só é conhecido após a execução da operação e, nesse caso, não há como "buscar" uma nova instrução durante o estágio de execução. Assim, o estágio de busca não foi superposto ao de execução, e o de execução da instrução seguinte também vai acontecer somente após sua busca. Ou seja, nada se ganhou em termos de tempo. Para obter produtividade e rapidez do sistema, deve-se construir a UCP com mais estágios. Quanto maior a quantidade de estágios, mais superposição e aumento de velocidade. É importante ressaltar que o tempo de duração de cada estágio deve ser o mais semelhante possível, de modo que um estágio, não espere o término do outro para iniciar a execução seguinte.
1.13 EXECUÇÃO PARALELA DE INSTRUÇÕES
Desde os primórdios da computação, os projetistas tentam construir máquinas mais rápidas. Até certo ponto, as máquinas podem ser aceleradas simplesmente aumentando a velocidade do hardware. Infelizmente computadores rápidos produzem mais calor que os lentos e a montagem do computador em um volume pequeno torna difícil a dissipação desse calor. Os supercomputadores são, muitas vezes, submersos em fréon líquido, um refrigerante, para retirar o calor o mais rápido possível. Considerando tudo isso, produzir computadores cada vez mais rápidos está-se tornando cada vez mais difícil, e também cada vez mais caro. Entretanto, existe outra abordagem. Em vez de uma única CPU de alta velocidade, é possível construir uma máquina com muitas ALUs mais lentas (e mais baratas) ou mesmo CPUs completas para se obter o mesmo poder computacional a um custo menor. As máquinas paralelas podem ser divididas em três categorias (Flynn IN: Monteiro (1995)), baseando-se no número de fluxos de instruções e de dados que elas têm:
A máquina tradicional de von Neumman é SISD. Ela tem apenas um fluxo de instruções (i. é, um programa), executado por uma única CPU, e uma memória conectando seus dados. A primeira instrução é buscada da memória e então executada. A seguir, a Segunda instrução é buscada e executada. Máquinas SIMD, ao contrário, operam um múltiplos conjuntos de dados em paralelo. Uma aplicação típica para uma máquina SIMD é a previsão do tempo. Imagine o cálculo da temperatura média diária a partir de 24 médias horárias para muitos locais. Para cada local, exatamente o mesmo cálculo precisa ser feito, porém com dados diferentes. A terceira categoria de Flynn é a MIMD, na qual CPUs diferentes executam programas diferentes, às vezes compartilhando alguma memória em comum. Por exemplo, no sistema de reserva de passagens aéreas, reservas simultâneas múltiplas não
prosseguem em paralelo, instrução por instrução, e assim temos fluxo múltiplo de instrução e fluxo múltiplo de dados. Outros sistemas multiprocessadores usam não apenas um barramento, mas vários para reduzir a carga. Outros usam ainda uma técnica chamada cache , que consiste em manter as palavras de memória freqüentemente referidas dentro de cada processador.
programas existentes para o 8086, o modo protegido permitia o uso de todos os 16 megabytes de memória real, além de 1 gigabyte de memória virtual, por qualquer programa que fosse escrito especificamente para utilizar esses recursos. No entanto, embora permitisse o uso de mais memória, ele continuava operando com segmentos de memória de 64 kilobytes. A utilização da palavra "protegido" no nome do modo sugere que ele provê alguma proteção. Isso é correto, pois é possível inicializar as tabelas de segmentos de tal maneira que quando o 80286 é utilizado para um sistema de multiprogramação, cada processo pode ser impedido de acessar segmentos pertencentes a outro processo. A tabela abaixo, exibe algumas diferenças entre os processadores 8086, 8088 e 80286:
Processador Largura Registradores (bits) Barramento (bits) Endereçamento (bits) 8086 16 16 20 8088 16 8 20 80286 16 16 24 Tab. 2.1 Diferenças entre 8086, 8088, 8286
2.4 80386
A grande evolução nos micros PC se deu na introdução do processador 80386, com ele os fabricantes de processadores, como a Intel tiveram base para seus projetos futuros. No entanto, hoje todos os processadores disponíveis no mercado possuem o funcionamento compatível com o processador 386 [TOR98]. Três características, inovações técnicas, formaram a base para o projeto do processador 386. A primeira delas é que há tantas instruções para ir do modo protegido quanto para voltar ao modo real; a segunda delas é a criação do modo virtual 8086, programas escritos no modo real pudessem ser utilizados diretamente dentro do modo protegido; e por sua vez a terceira característica que se baseia na manipulação de dados a 32 bits o dobro da plataforma anterior. Além disso, estando no modo protegido, o 80386 consegue acessar até 4 GB de memória (RAM) muito mais que qualquer micro necessita. Isto ocorreu em meados dos anos 80, mas somente por volta de 1990 tornaram-se comuns nos PCs que utilizavam este microprocessador.
Fig. 2.1: Microprocessador 80386. O da esquerda produzido pela AMD e o da direita, pela Intel.
Vamos descrever alguns recursos importantes do modo protegido do 80386 segundo [TOR98]:
se baseia no ato de conseguir um arquivo do disco rígido de tamanho qualquer para utilizar como uma memória extra, chamado arquivo de troca (swap file).
O encaixe o processador 80386SX tem um packaging inteiramente diferente do 80286, e os dois chips não se encaixam no mesmo soquete. Com isso, alguns PCs utilizaram uma placa adaptadora com circuitos auxiliares de multiplexação para poder fazer com que o 80386SX se encaixe no soquete de um 80286. Além da Intel, vários outros fabricantes produziram microprocessadores 386SX e 386DX. O principal deles foi a AMD. Foram lançadas versões de 16, 20, 25, 33 e 40 MHz. “A velocidade desses processadores se originou-se de um funcionamento de 16 MHz, embora a primeira possibilidade tenha sido solenemente esnobada pelos projetistas de computadores, para as quais a velocidade nunca é suficiente. Logo após, uma versão de 20 MHz foi colocada no mercado. Em 1988, o limite chegou aos 25 MHz, e logo depois passou para 33 MHz. Atualmente, algumas empresas produzem chips que operam a 40 a 50 MHz.” [ROS93] A Intel lançou o 80386SX como irmão menor do 80386. Internamente, o 80386SX é praticamente idêntico as 80386, com registradores de 32 bits reais e todos os mesmos modos operacionais. Apenas uma diferença significativa separam o 80386 do 80386SX. Em vez de interfacear com um bus de memória de 32 bits, o 80386SX foi projetado para um bus de 16 bits. Seus registradores de 32 bits têm que ser preenchidos e duas etapas a partir de um canal de I/O de 16 bits. Com isso, o 386SX é mais barato para o fabricante, embora no mercado daquela época o seu preço não era tão baixo. Sempre que citarmos o processador 80386, estamos nos referindo ao modelo 80386DX que o seu sufixo significa “double word” (32 bits), ao contrário do modelo anterior SX representando “single word” (16 bits)
Fig. 2.2: Processador 80386SX, um 80386 de baixo custo.