


























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
trabalho sobre processadores
Tipologia: Notas de estudo
1 / 34
Esta página não é visível na pré-visualização
Não perca as partes importantes!



























1.9 Termos utilizados para definir alguns conceitos sobre microprocessadores
Tab. 2.1 Diferenças entre 8086, 8088, 8286 13
Tab. 2.2: Freqüência da Placa Mãe 17
Tab. 2.3: Processador de 150 MHz com desempenho superior ao Pentium 200 20
Tab. 3.1: Comparação entre três máquinas CISC típicas com as três primeiras máquinas RISC 22
Tab. 3.2 - Características das máquinas RISC e CISC 23
Tab. 3.3: Uma máquina RISC com pipeline contendo LOAD (L) e STORE (L) atrasados 24
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.
Neste trabalho iremos abordar um vasto assunto relacionado aos microprocessadores, pois estes podem ser considerados o cérebro ou até mesmo o coração de um microcomputador. É nele que é feito o gerenciamento de todos os recurso disponíveis no sistema. Seu funcionamento é baseado em programas e procedimentos, tudo que acontece em um computador provém da CPU ou UCP, ou seja, Unidade Central de Processamento, também poder ser chamada e referenciada como processador ou microprocessador, no qual é o nosso assunto que iremos ver de agora em diante. No capítulo 1, poderemos saber quais são os dispositivos que fazem parte de um microprocessador. Com definições claras e objetivas poderemos saber e assimilar o que é uma UAL, um registrador, uma unidade de controle, os termos utilizados para definir conceitos sobre microprocessadores, bem como sua metodologia de linha de montagem, que é chamada Pipeline, que nada mais é que um composto de várias etapas de instruções do microprocessador, de forma seqüêncial (Cap. 1.10). No capítulo 2, veremos as categorias dos microprocessadores, como os fabricantes começaram a desenvolver essa tecnologia, que até nos dias atuais vem sendo modificada a cada dia. Em meados de 1978 a Intel fabricante de microprocessadores lança o 8086 um microprocessador duas vezes mais rápido que seu antecessor o 8080, que tinha várias vantagens em relação ao seu antecessor (Cap. 2.5). Desse ponto em diante, começa a evolução dos microprocessadores, de acordo com o surgimento de novas idéias e utilizações a Intel acrescentava nova tecnologia em seu 8086, passando para um processador com vantagens elevadas acima dele. Dessa forma ela vem chegando ao auge, sempre inovando o mundo dos microprocessadores. Em 1991 foi um ano bastante confuso para os usuários que estavam prestes a adquirir um microcomputador, foi o ano em que a Intel, fabricantes dos processadores Pentium atuais, dava continuidade na sua família de microprocessadores 80x486 (Cap. 2.5) que oferecia na época duas versões, na qual era o 486 SX e o 486 DX que vieram com um desempenho fantástico em relação aos seus antecessores. Na mesma época em que os microprocessadores da Intel reinava absolutamente o domínio da tecnologia de processamento, surgiu os concorrentes AMD e Cyrix, com versões que viriam baratiar os preços, e dar vantagens para nós usuários. Nos dias atuais os fabricantes estão se inovando a cada dia, tanto a Intel, AMD, Cyrix e a Celeron, uma família de novos processadores da própria Intel (Cap. 2.6) que é uma versão simplificada de um dos microprocessadores da Intel. Para fechar o nosso assunto, veremos os microprocessadores fabricados e destinados exclusivamente a servidores, máquina de grande porte. Esse microprocessador possui uma tecnologia a qual chamamos de RISC (Cap. 3). Que mais adiante veremos as definições CISC x RISC, bem como seu surgimento, princípios técnicos, arquiteturas e desempenhos.
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.
A unidade de medida usual para a freqüência dos relógios de UCP é o Hertz (Hz), que significa 1 ciclo por segundo. Como se trata de freqüências elevadas, abreviam-se os valores usando-se milhões de Hertz, ou de ciclos por segundo (MegaHertz ou simplesmente, MHz). Assim, por exemplo, se um determinado processador funciona como seu relógio oscilando 25 milhões de vezes por segundo, sua freqüência de operação é de 25 MHz. E como a duração de um ciclo, seu período, é o inverso da freqüência, então cada ciclo, neste exemplo, será igual ao inverso de 25.000.000 ou 1/25.000.000=0,00000004 ou 40 nanossegundos.
1.5 Registrador de Instrução (RI)
É o registrador que tem a função específica de armazenar a instrução a ser executada pela UCP. Ao se iniciar um ciclo de instrução, a UC emite o sinal de controle que acarretará a realização de um ciclo de leitura para buscar a instrução na memória, e que, via barramento de dados e RDM, será armazenada no RI.
1.6 Contador de Instrução
É o registrador cuja função específica é armazenar o endereço da próxima instrução a ser 0executada. Tão logo a instrução que vai ser executada seja buscada (lida) da memória para a UCP, o sistema providencia a modificação do conteúdo do CI de modo que ele passe a armazenar o endereço da próxima instrução na seqüência. Por isso, é comum definir a função do CI como sendo a de "armazenar o endereço da próxima instrução", que é o que realmente ele faz durante a maior parte da realização de um ciclo de instrução.
1.7 Decodificador de Instrução
É um dispositivo utilizado para identificar as operações a serem realizadas, que estão correlacionadas à instrução em execução. Em outras palavras, cada instrução é uma ordem para que a UCP realize uma determinada operação. Como são muitas instruções, é necessário que cada uma possua uma identificação própria e única. A unidade de controle está, por sua vez, preparada para sinalizar adequadamente aos diversos dispositivos da UCP, conforme ela tenha identificado a instrução a ser executada. O decodificador recebe na entrada um conjunto de bits previamente escolhido e específico para identificar uma instrução de máquina e possui 2N^ saídas, sendo N a quantidade de algarismos binários do valor de entrada.
1.8 Registrador de Dados de Memória - RDM e Registrador de Endereços de Memória - REM
São os registradores utilizados pela UCP e memória para comunicação e transferência de informações. Em geral o RDM possui um tamanho igual ao da palavra do barramento de dados, enquanto o REM possui um tamanho igual ao dos endereços da memória.
é 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:
· Int: É uma entrada que serve para que dispositivos externos possam interromper o microprocessador para que seja realizada uma tarefa que não pode esperar. Como existe apenas uma entrada INT, o microprocessador opera em conjunto com um chip chamado Controlador de Interrupções. Esse chip é encarregado de receber requisições de interrupção de vários dispositivos e enviá-las ao microprocessador, de forma ordenada, através do sinal INT. · NMI: É um sinal de interrupção especial para ser usado em emergências. Significa Interrupção não mascarável, ou seja, essa interrupção deve ser atendida imediatamente. Ao contrário do sinal INT, que pode ser ignorado pelo microprocessador durante pequenos intervalos de tempo, o sinal NMI é uma interrupção não mascarável. Nos PCs, o NMI é usado para informar erros de paridade na memória. · INTA: Significa reconhecimento de interrupção (Interrupt Acknowledge). É utilizada para que o microprocessador indique que aceitou uma interrupção, e que está aguardando que o dispositivo que gerou a interrupção identifique-se, para que seja realizado o atendimento adequado.
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.
Para que um microprocessador seja rápido, é preciso que ele seja capaz de manipular instruções em alta velocidade. Essas instruções são armazenadas na memória, e portanto, é preciso que a memória seja acessada em alta velocidade. Em conjunto com a execução de instruções, o microprocessador também lê e armazena dados na memória, o que é mais uma razão para que a memória seja rápida. A quantidade de bits que o microprocessador consegue transferir e recuperar da memória está diretamente relacionada com o número de bits externos. Por exemplo, o microprocessador 8088, usado nos primeiros PCs, operava internamente com 16 bits, e externamente com apenas 8. Já com o Pentium, ocorre o inverso: opera internamente com 32 bits e externamente com 64.
Ao descrever o funcionamento da UCP, na realização de seus ciclos de instrução observa-se que, embora o ciclo de instrução seja composto de várias etapas, ele é realizado basicamente de forma seqüencial, isto é, uma etapa se inicia após a conclusão da anterior. UCPs deste tipo vêm sendo usadas desde as primeiras gerações de computadores, e muitos aperfeiçoamentos tecnológicos foram introduzidos para reduzir o tempo de processamento de uma instrução, entre os quais o aumento tecnológico do relógio e a tecnologia de semicondutor, com seus sucessivos melhoramentos em fabricação e miniaturização. Uma outra metodologia, usada há muito tempo pelas fábricas de automóvel e por inúmeras outras indústrias, consiste em dividir o processo de fabricação em estágios independentes, que, por isso, podem se superpor uns aos outros, no tempo. Denomina-se linha de montagem ou pipeline. Em computação, a metodologia de construção da UCP composta de estágios permitiu que, também nestes sistemas, se adotasse esta técnica. A característica principal do processo de "pipelining" reside em duas premissas básicas:
a) a divisão do processo (seja o de fabricação de um automóvel, de uma TV ou ciclo de uma instrução na UCP) em estágios de realização independentes um do outro; e b) um novo produto inicia seu processo de fabricação ou execução depois de o anterior concluir seu processo.
Suponhamos que o processo de realização do ciclo de uma instrução seja dividido em dois estágios: o da leitura da instrução e o da execução da instrução lida. Para ler uma instrução, é necessário um acesso à memória, mas para executar a instrução nem sempre é necessário acessar a memória (na decodificação e na execução da operação não há acessos à memória). Portanto, é possível ler uma instrução, utilizando-se dos circuitos de um estágio, e transferir esta instrução para o estágio de execução. E, durante o período em que, neste estágio, não há atividade com a memória, pode-se ativar o estágio de leitura para buscar uma nova instrução e continuar o processo com novas instruções. Na realidade, pode não haver muita produtividade em um sistema destes ("pipelining" com 2 estágios), porque: a) o tempo de realização do estágio L não é igual ao do estágio E. Em geral, a execução consome mais tempo, devido principalmente à etapa de busca de operando. E, portanto, na maioria do tempo de execução (E) pode não ser possível haver outra busca de instruçã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.
2.0 Categorias de Microprocessadores:
2.1 8086
Lançado pela Intel em 1978, o 8086 tinha um desempenho dez vezes melhor que seu antecessor o 8080. Seus registradores tinham a largura de 16 bits, o barramento de dados passou de 8 para 16 bits e o barramento de endereços se tornou maior com 20 bits de largura, permitindo assim que fosse controlado mais de 1 milhão de bytes de memória. A memória passou a ser tratada de maneira diferente pois esse processador tratava a mesma como se fosse dividida em até 16 segmentos contendo 64 kilobytes cada, e não permitia que nenhuma estrutura de dados ultrapassasse a barreira entre os segmentos.
O 8088 surgiu da necessidade em se criar um processador com características parecidas com as do 8086 mas que tivesse um custo menor. Dessa forma, a Intel colocou no mercado um chip que só se diferenciava do 8086 pelo fato de Ter um barramento de dados de 8 bits. Em virtude de sua concepção menos avançada e do baixo custo de produção o 8088 foi escolhido pela IBM, para o projeto de seu computador pessoal, pois, além de possuir o projeto interno de 16 bits também pertencia à mesma linhagem do 8080.
2.3 80286
Comparado com seu antecessor imediato (o 8086), o 80286 apresentava diversas características particularmente adequadas aos computadores pessoais. Seu bus de dados possui 16 bits reais, o mesmo acontecendo com os registradores internos. E ainda foi projetado para trabalhar com maior velocidade, inicialmente 6 MHz, logo ampliados par 8 e, em seguida para 10. Com o tempo, versões deste microprocessador com velocidades de 12,5, 16 e até 20 MHz foram introduzidas pela Intel. Um dos aspectos mais importantes acabou sendo a maior capacidade de memória do 80286. Ao invés de 20 linhas de endereçamento, o 80286 possuía 24. As quatro linhas adicionais aumentam a quantidade máxima de memória que o chip é capaz de endereçar em 15 megabytes, elevando o total para 16 megabytes. O 80286 também permitia o uso da memória virtual. Que ao contrário do que se pensa, não se compõe de chips de memória. Ao contrário, as informações ficam armazenadas em outro meio de memória de massa, podendo ser transferidas para a memória física sempre que forem necessárias. Em conseqüência disso, o 80286 é capaz de controlar até 1 gigabyte (1024 Megabytes) de memória total, 16 megabytes físicos, e 1008 megabytes virtuais (Rosch (1993)). Para manter a compatibilidade com os chips mais antigos, os engenheiros da Intel dotaram o 80286 de dois modos operacionais. O Modo Real reproduzia quase que exatamente o esquema de operação do 8086. A cópia foi tão perfeita que o modo real herdou todas as limitações do 8086, inclusive a barreira de 1 megabyte de memória. Essa restrição era obrigatória para que o 80286 identificasse os endereços de memória da mesma maneira que o 8086. Para tirar partido dos maiores recursos do tratamento de memória da arquitetura 286, foi criado o Modo Protegido. Embora não fosse compatível com os
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). · Proteção de Memória: como o processador acessa muita a memória, podemos carregar diversos programas simultaneamente. Através da proteção da memória, o processador é capaz de isolar cada programa em uma área de memória bem definida, de modo que um programa não invada a área de memória que esteja sendo utilizada por outro programa. · Multitarefa: graças à proteção de memória, o processador é capaz de saber exatamente onde se encontra cada programa carregado na memória. Dessa forma, ele pode executar automaticamente uma instrução de cada programa, parecendo que os programas estão sendo executados simultaneamente. · Modo Virtual 8086: o modo protegido é, a rigor, incompatível com o modo real. Como poderíamos executar programas de modo real em modo protegido? Através do modo virtual 8086, o processador pode trabalhar como se fosse vários processadores 8086 com 1 MB de memória (ou seja, um XT) simultaneamente. isso significa que você pode ter, ao mesmo tempo, um ou mais programas de modo real rodando dentro do modo protegido simultaneamente, cada programa achando que está trabalhando em um processador 8086 “puro” e completamente “limpo”.
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.
O processador 80486 foi o sucessor para aplicações mais “pesadas”, sendo possível encontra-lo nos PCs no ano de 1991. Com uma versão inicial que operava com um clock de 25 MHz. Dessa maneira, a Intel criou o 486 que na realidade supera muito o desempenho de um 80386DX-25 em duas vezes, apesar de ter apenas seis instruções a mais, mas para que esse desempenho fosse justificado, o processador foi incorporado com circuitos em seu interior como:
· Coprocessador matemático; · Memória cache interna de 8 KB.
Estando integrados diretamente dentro do microprocessador, esses componentes fizeram com que o desempenho geral do PC subisse muito - um circuito externo é mais lento, pois os dados demoram a ir e vir na placa de circuito impresso. “O cache de memória, a partir do 80486 passou a possuir dois caches de memória; um dentro do processador, chamado cache de memória interno de 8 KB; e um na placa-mãe do micro, chamado de cache de memória externo que hoje varia na ordem de 256 KB e 512 KB.” [TOR98]
Fig. 2.3: Microprocessador 80486
O processador mais barato da família é o 80486SX, disponíveis nas versões de 25 e 33 MHz seguindo a mesma linha que seu processador antecessor. Este microprocessador é uma versão de custo mais acessível, sendo assim, não era dotado do coprocessador matemático interno. Para não haver confusão e manter a padronização, foram usados os mesmos diferenciadores, “DX” para a versão “standard” e “SX” para a versão “econômica”, que não tinha coprocessador matemático interno. Portanto, quando citamos a nomenclatura “ 80486 ” estamos nos referindo ao 80486DX trabalhando a 32 bits. Um usuário interessado em acrescentar um coprocessador matemático ao 486SX poderia perfeitamente fazê-lo. Bastava adquirir um 487SX, que para todos os efeitos, era o “coprocessador aritmético” do 486SX. As placas de CPU baseadas no 486SX em geral possuíam um soquete pronto para a instalação deste chip. Entretanto, este tipo de instalação não era nada vantajosa do ponto de vista financeiro. Era mais barato adquirir uma placa de CPU equipada com o 486DX. O 486SX tanto foi considerado um erro, que os concorrentes da Intel (AMD e Cyrix) não lançaram microprocessadores equivalentes. Surgiram o:
· 80486DX-50 ou 80486DX2; que se estabeleceu pelo aumento da freqüência de operação em que o processador é capaz de trabalhar, ou seja, 50 MHz processador resultante da multiplicação do clock, que trabalha internamente com o dobro da