HeadlinesBriefing favicon HeadlinesBriefing.com

Reverse-Engineering do Microcódigo FSCALE do Intel 8087

Hacker News •
×

Na década de 1970, a aritmética de ponto flutuante carecia de padronização, causando instabilidade numérica em hardware diverso. O coprocessador de ponto flutuante 8087 da Intel, lançado em 1980, resolveu isso implementando um padrão consistente e preciso, alcançando ampla adoção quando integrado ao IBM PC. O microcódigo do chip, recentemente reverse-engineered pelo Opcode Collective, revela a complexidade por trás de operações aparentemente simples.

A instrução FSCALE, projetada para escalar números por potências de dois mais rápido que a multiplicação, utiliza mais de 140 micro-instruções e três níveis de chamadas de subrotinas para gerenciar casos de borda. Este microcódigo ilumina a arquitetura interna do 8087, especificamente os circuitos do deslocador, somador e conversor de expoente. Para facilitar a análise, a equipe imageou o chip sob um microscopio, mapeando o grande ROM de microcódigo e a circuiteria do caminho de dados.

A descoberta de uma função oculta no design do 8087 adiciona mais intrigue ao exame deste componente fundamental da matemática computacional moderna.