Unidade de ponto flutuante

Bem-vindo ao artigo sobre Unidade de ponto flutuante. Neste escrito iremos mergulhar no emocionante mundo de Unidade de ponto flutuante, explorando suas características, significado e relevância em diferentes áreas. Unidade de ponto flutuante é um tema que desperta o interesse e a curiosidade de muitas pessoas, pois tem um impacto significativo na sociedade contemporânea. Nessa linha iremos nos aprofundar nos aspectos mais relevantes relacionados a Unidade de ponto flutuante, com o objetivo de fornecer uma visão abrangente e completa deste tema. Da sua origem à sua evolução, incluindo a sua influência hoje, abordaremos diferentes facetas de Unidade de ponto flutuante para fornecer uma análise completa e enriquecedora.

Unidade de ponto flutuante ou Unidade de Vírgula Flutuante (também abreviado por FPU, do inglês Float Point Unit) é o hardware dedicado a executar operações matemáticas de dados representados em ponto flutuante em um computador. Esta unidade pode estar integrada na unidade central de processamento, como acontece na generalidade dos processadores modernos, ou pode ser implementada através de um co-processador matemático externo.

Exemplos de co-processadores matemáticos não integrados:

  • 8087 - Co-processador matemático para trabalhar com o 8086.
  • 80287 - Co-processador matemático para trabalhar com o 80286.
  • 80387 - Co-processador matemático para trabalhar com o 80386SX.

Exemplos de processadores com Unidade de Vírgula Flutuante integrada:

FPU do processador SPARC

Esta unidade é otimizada para o uso de instruções de precisão simples e para ocupar uma área menor no chip . As instruções de precisão dupla também são implementadas, mas demoram aproximadamente de duas a quatro vezes mais ciclos que instruções de precisão simples .

A construção da Unidade de Ponto Flutuante utiliza um caminho de dados de 32 bits para uma máquina microcodificada . A cada ciclo, o seqüenciador de microcódigo coloca uma micropalavra no caminho de dados e monitora a condição de desvio retornada para determinar a próxima palavra . É possível observar que as dependências de controle são limites importantes para a máquina de microcódigo, pois cada microinstrução depende da anterior - há uma condição de desvio a cada microinstrução.

A Unidade de Ponto Flutuante segue a norma IEEE-754, suportando underflow gradual . Desta forma, a mantissa torna-se não-normalizada, levando a erros menores quando manuseando números muito pequenos.

É possível não utilizar a Unidade de Ponto Flutuante em uma implementação, por motivos de economia de área ou energia. Para tanto, as instruções de ponto flutuante devem ser capturadas por interrupções de software e tratadas em microcódigo.

FPUs como co-processador adicional

Do início de 1980s a meados de 1990s, era comum em microcomputadores IBM PC, qua a FPU fosse completamente separada da CPU, e tipicamente vendida como um acessório opcional. Ela só seria comprada se fosse necessária para acelerar ou habilitar programas matemáticos intensivos.

O IBM PC, o XT, e a maioria dos compatíveis baseados no 8088 e 8086 tinham um soquete para um co-processador 8087. O AT e o sistemas baseados no 80286 tinham um soquete para o 80287, e 80386/80386SX máquinas baseadas no 80387 e 80387SX respectivamente, embora as primeiras tinham soquetes para o 80287, visto que o 80387 ainda não existia.

Referências

Ver também