sexta-feira, 7 de janeiro de 2011

3.5.2. 8087

Embora seja um coprocessador aritmético e não um microprocessador, não ficará fora de contexto falar-se dele aqui.

Foi desenhado para executar operações matemáticas complexas. A primeira vantagem da sua utilização é o aumento da velocidade de execução de programas que usem cálculo matemático intensivo. Mas também pode ter algumas desvantagens, tais como suporte de software, custo, consumo de potência e aumento da temperatura da máquina.

A primeira desvantagem é que somente alguns programas tiram partido do coprocessador, isto é, o programa tem de ser escrito de modo a tirar partido do coprocessador, embora mesmo esses programas nem sempre tirem o devido partido das vantagens de ter um coprocessador aritmético. Dentro desses programas, temos as folhas de cálculo, programas de estatística, de CAD e software de engenharia que tiram o devido partido do coprocessador. Como é lógico, um processador de texto não necessita dele para nada.

Como já se disse, mesmo os programas que fazem uso do coprocessador não o fazem em todas as operações. Tomemos como exemplo uma folha de cálculo clássica, o Lotus 1-2-3, que não faz uso do coprocessador para operações simples, tipo adição, subtracção, etc. senão vejamos o seguinte teste.

Temos duas folhas de cálculo, cada uma com 8000células. A primeira tem operações de divisão, subtracção, adição e multiplicação espalhadas pelas 8000 células. A segunda folha tem 8000 células com fórmulas que usam as funções SQRT, SIN, CÓS e TAN. Analisemos os resultados da tabela 3.6, com um computador com e outro sem coprocessador.

XT sem 8087

XT com 8087

Folha 1

21 segundos

21 segundos

Folha 2

195 segundos

21 segundos

Tabela 3.6 – Tempo de cálculo com e sem processador

Por aqui podemos ver que não valia o investimento, a não ser que fosse estritamente necessário.

O 8087, assim como mais tarde o 80387, tem de trabalhar sempre à mesma velocidade do processador, seja qual for a sua velocidade. Isto porque o processador e o coprocessador trabalham sincronizadamente. No caso do XT, a 4,77 MHz, o 8087 tinha de trabalhar pelo menos a essa velocidade e o mesmo aconteceria mais tarde com o 80386. Se trabalhasse a 20 MHz, o 80387 teria de trabalhar a essa velocidade ou superior, caso contrário, não funcionaria correctamente. No entanto, com o 80286 já não era assim, pois tanto o 80286como o 80287 eram assíncronos.

Sem comentários:

Enviar um comentário