FreeBSD manual
download PDF document: npx.4.pdf
NPX(4) FreeBSD Kernel Interfaces Manual (i386) NPX(4)
NAME
npx - Numeric Processing Extension coprocessor
SYNOPSIS
device npx
hint.npx.0.at="nexus"
hint.npx.0.port="0x0F0"
hint.npx.0.flags="0x0"
hint.npx.0.irq="13"
DESCRIPTION
The npx driver enables the use of the system's Numeric Processing
Extension coprocessor. Numeric processing extensions are present in
systems with 486DX CPUs and in systems with 387 or 487SX coprocessors.
The npx driver is required for proper system functioning. If there is no
NPX in the system, the system will not boot.
The flags for npx0 are:
0x01 do not use the NPX registers to optimize bcopy.
0x02 do not use the NPX registers to optimize bzero.
0x04 do not use the NPX registers to optimize copyin or copyout.
The NPX registers are normally used to optimize copying and zeroing when
all of the following conditions are satisfied:
1. cpu I586_CPU is an option
2. the CPU is an i586 (perhaps not a Pentium)
3. the probe for npx0 succeeds
4. INT 16 exception handling works.
Then copying and zeroing using the NPX registers is normally 30-100%
faster.
The flags can be used to control cases where it does not work or is
slower. Setting them at boot time using hints works correctly (the
optimizations are not used until later in the bootstrap when npx0 is
attached).
BUGS
There are lots of them, especially on old cheap motherboards. In
particular, some motherboards do not have the interrupt lines from the
NPX to the CPU wired properly.
FreeBSD 14.2-RELEASE August 28, 1993 FreeBSD 14.2-RELEASE