DragonFly On-Line Manual Pages

Search: Section:  


NPX(4)		    DragonFly/i386 Kernel Interfaces Manual		NPX(4)

NAME

npx -- Numeric Processing Extension coprocessor and emulator

SYNOPSIS

device npx0 at nexus? port IO_NPX flags 0x0 irq 13 For hosts without a FPU coprocessor add: options MATH_EMULATE

DESCRIPTION

The npx driver enables the use of the system's Numeric Processing Exten- sion coprocessor, if one is present. Numeric processing extensions are present in systems with 486DX CPUs and in systems with 487SX coproces- sors. The npx driver is required for proper system functioning regard- less of whether or not a NPX is present. If there is no NPX present in the system, the MATH_EMULATE option must be defined in the kernel configuration file. It will provide support for the instructions normally executed by the NPX. If there is no NPX in the system and the kernel is not built with math emulation, the system will not boot. The GENERIC kernel configuration uses the MATH_EMULATE option. For a description of the possible "flags" values see the LINT kernel con- figuration file.

CAVEATS

The emulator is much slower than the NPX coprocessor. This will result in poor floating-point math performance if the emulator must be used. The emulator does not support the whole set of npx instructions. It is sufficient for booting and configuring a system, but it cannot support a system with normal workload unless care is taken to compile the whole system (including third-party packages) with compiler options that avoid the use of the non-emulated instructions.

BUGS

There are lots of them, especially on old cheap motherboards. In partic- ular, some motherboards do not have the interrupt lines from the NPX to the CPU wired properly. If this is the case, the emulator must be used if consistent system operation is desired. When using the MATH_EMULATE option, transcendental function instructions are not implemented. Emulation of other instructions is suspect. DragonFly 4.3 August 28, 1993 DragonFly 4.3

Search: Section: