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:
cpu I586_CPU
is an option
- the CPU is an i586 (perhaps not a Pentium)
- the probe for npx0 succeeds
- 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.