- A FPU implementada leva em consideração a estrutura de numeros de precisão simples (32 bits) conforme o padrão IEEE 754:
- 1 bit para sinal (bit 31): 0 - positivo; 1 - negativo
- 8 bits são para expoente (bits 30 à 23): o valor do expoente é acrescido de 127 para não ter informações negativas no expoente e considerar possíveis números fracionários negativos como inteiros para fins de comparacão, sendo assim, o valor do expoente está entre -127 e +127
- 23 bits para representar a parte fracionária do número, também chamada de mantissa (bits 22 à 0)
- op[1:0]: seleciona qual operação será utilizada (soma ou subtração)
- out[31:0]: número equivalente a saída da operação no padrão 754
- sinalização de overflow: quando não tem bits suficientes para representar o número
- sinalização de underflow: quando não tem precisão suficiente para mostrar o número (caso do número ser muito pequeno)
- Soma: TODO explicação
- Subtração: TODO explicação
- Na entrada do circuito, foi colocada uma entrada de 1 bit para o seletor, que indica qual operação será realizada (soma ou subtração)
- Na entrada e saída do circuito, há registradores que para armazenar as entradas e o resultado da operação
- Registradores de entrada ativos na borda de subida do clock
- Registradores de saída ativos na borda de descida do clock
- 00 -> soma
- 01 -> subtração