The NexGen Nx586-P90 System

In 2015 I acquired a NexGen system from a generous donator. The original ASI Computer desktop case looked rather used and included some very low end speakers as it was common due to the multimedia hype in the early 90ies. The sticker on the back showed that it was sold as generic "586 / 90" computer and had a Quantum 850 MB drive which was not present anymore.

The original ASI Computer case (top), with low end speaker, a missing button and various turn knobs. After some early cleaning... The removed board with CPU. The fan was likely replaced once before and fixed with some wires only.

The board is Baby-AT form factor and has two VESA Local Bus slots and seven ISA slots. The chipset is NexGen NxVL as ceramics IC. The CPU is a NexGen NX586-P90 running at 84 MHz with 256 kB cache. The six PS/2 RAM slots allow up to 192 MB. The BIOS is an American Megatrends NexGen Nx586 ISA BIOS which is internally one of the infamous WinBIOSes (graphic windows, mouse control). The CMOS is backed luckily by two CR2325 cell batteries, so no battery damage here. The board has no socket for a FPU. Everything is dated to late 1994.

The new case looks rather unimpressive:
My choice was a rather generic Mini Tower case. Back side of the new system.

Let's have a look inside:
Full side view CPU area. Extension cards.

Component table:
NexGen NxVL mainboard with new 40mm fan on CPU and 128 MB PS/2 RAM. The board shows it's origins in the 486 age. The two RAM slots in the middle are not working when fully equipped, which is also reported by other users of this board.
Graphics card miro miroCRYSTAL 20SD VLB with S3 Vision864 2 MB DRAM, DAC with 16 bit interface. As the VLB runs at CPU/2 = 42 MHz not every graphics card works flawless at zero wait states. I did some extensive performance tests that showed a S3 Vision968 with VRAM is not faster, a ET4000W32i requires additional wait states, a S3 Trio64 does not work with 42 MHz at all and so on. The S3 Vision864 works with S3 VBE20 and has even drivers that support DirectX5.
The seconds VLB card is an Adaptec AHA-2842A SCSI controller with floppy disk support. The controllers BIOS supports max. 8 GB. I added a rather modern SCSI hard disk drive that requires no active cooling, a Maxtor Atlas 10K V. The optical drive is a Plextor PX-40TSi (40x CD-ROM). Speedsys shows a linear read speed of nearly 4.8 MB/s (5.8 MB/s buffered) from HDD. The floppy drive is a regular 3.5" HD disk drive.
The 3Com Etherlink III 3C905B-C is a very common 10 Mbps ISA network card that can be configured by software and/or ISA-PnP. It is also well supported by various operating systems.
The last sound card from Ensoniq with revised 2 MB ROM and effects board. In DOS it is compatible to SB 2.0, WSS and FM is rendered through the wavetable. The FM translation is actually not as bad and gives a quite interesting sound e.g. in Commander Keen. With the wavetable the cards synthesizer appear as internal MPU-401 interface and can be set to GM, GS and MT-32. In Windows the AD SoundPort codec allows up to 16 bit/48 kHz playback. The card is nearly full size. The card runs at the regular IRQ 5, DMA 1, Port 220, MPU-401 at 330.
A Gravis Ultrasound completes the sound standards in this system. The ACE is a short card and does not block the CPU region of the mainboard. The Gravis "Audio Card Enhancer" has no additional codecs or CD-ROM interfaces, thus it uses only minimum required resources for GUS. The card runs at ULTRASND=240,7,7,7,7.
Since the Adaptec controller covers only floppy disk, I needed a controller card for the serial, parallel, game port. Here a common noname 8 bit ISA card suffices. It has two serial ports that are connected with internal cables on a separate shield, parallel port and a game port.

A look at system information/benchmarks:

Speedsys seems to be unable to identify this CPU and shows a 386DX at 93 MHz - a good guess. The memory bandwidth of ~37 MB/s shows the 486 age origin. This is in line with the Memory throughput score in the lower right panel at 32 MB/s. As reference my 486DX2-66 VLB shows there 29.5 MB/s and my 486DX2-66 PCI system 38 MB/s. The HDD performance is good with 4.8 MB/s linear read. The memory performance curve shows that speedsys has problems to measure the speed within the 256 kB cache reliably.

CacheCheck V7

PC Player Benchmark in VGAMODE

3DBench 1.1

NSSI detects the CPU, however is wrong for the clock.

Cache size is detected wrong.

Dhrystones are very close to a Pentium 75 MHz.

You can rely on Quarterdeck Manifest for the CPU detection.

PC Player Benchmark with Turbo Off.

3DBench 1.1 with Turbo Off.

The Nx586 CPU is internally a superscalar CPU that decodes first into micro-ops (RISC86) prior actual execution, like the Pentium Pro or AMD K5. The Nx586 implements as well two 16K-byte on-chip caches (Code/Data), dynamic branch prediction using an adaptive branch predictor, speculative execution and register renaming (22 physical registers). The core has three function units for integer with multiply/divide, integer and address generation. An interesting feature is that the CPU can also be fed with RISC86 instruction directly and it has a small area for loadable microcode to implement or replace opcodes.

More information
The 'super-486' development of NexGen was already mentioned in Infoweek 29th Oct 1990.

My personal impression is that integer performance is notable better than a 486 at the same clock. Newer applications that require a FPU are not working (Quake, Windows 98 etc.). Compatibility problems occur mostly because more or less no program detects the CPU correctly. There is a tool that patches microcode in to add the CPUID instruction that the Nx586 appears as Cyrix 486DLC. This helps e.g. for games likes Duke Nukem 3D, but also for some drivers in Windows 95 (like Video decoders). DOS programs linked to PMode/W crash in plain DOS, but work when run from Windows 95. In some games it shows that the Nx586 performance drops considerable when unsuitable code is executed. (most likely reservation station stall) This shows e.g. in Duke Nukem 3D when inclined surfaces are visible fps drops to 14, whereas it is 30 to 60 fps in areas without.
I don't want to stress the issues too much as other CPUs had their own compatibility problems at that time. All the regular programs run, Windows 95 runs and even rather modern games (for the platform) like Diablo play very decent.
It was most likely as office computer a good alternative in 1994.

25th of Oct 2016, NexGen Nx586 system is running fine. This page may see some updates.