The next PC enhancement

Copyright Dr Alan Solomon, 1987-1995

On April 2nd, 1987, IBM announced the revolutionary MCA bus, with 32
bit architecture;  simultaneously, Microsoft announced OS/2, which
would eventually take advantage of this 32 bit system.  I remember the
HP3000, a room-sized minicomputer that was a 16 bit machine.  So where
does computing go from here - to 64 bits?  128 buts?  Parallel
processing?

Just three years, all but a day, after the announcement of MCA and the
PS/2, we get a clue from a US company called "Twelve Bit Computing".
They have come up with the ingenious idea that instead of increasing
the number of bytes processed in parallel, you increase the number of
bits per byte.  This is very similar to the idea of the "Dos Extender"
programs that give Dos access to 16 mb of memory.

Twelve bit bytes give you several advantages.  For example, instead of
a character set of 256, you can have 4096 characters, enough for every
alphabet in the world including Chinese, Japanese and the pound sign.
Even better, the address space of the 8088 processor is extended from
20 bits (2 1/2 bytes wide) giving 1 mb (and a severe Dos memory
limitation), to 30 bits (2 1/2 of the larger bytes wide), giving
addressing to 1 gigabyte.

So how can such a thing be done in software?  Simple - by compression.
You have to wonder why no-one thought of it before.  Just as PKZIP and
similar programs compress files, giving an average of 50% saving in
space;  just like MNP level 7 modems compress data on the fly, making
a 2400 baud modem run at an apparent 4800 baud.  This program uses
Lempel-Zev encoding for sparse structures, Huffman (just like a fax)
for dense.

The twelve-bit bytes are compressed on the fly by a memory resident
device driver, to eight bits.  From there, the hardware treats it as a
normal byte, making it possible to run the system even on an 8088
8-bit machine.  When the byte arrives at its destination, it is
decompressed back to twelve bits;  one side benefit of this is the
faster bus throughput that you get, giving an 8 mhz bus and effective
speed of 12 mhz.

The downside of this, of course, is the processor time consumed by all
the compression/decompression.  Twelve Bit have thought of this,
though, and you can get a special co-processor card to do this on the
fly (called the Far I/O Poll board).

I tried one of these in my workhorse computer, Dobbin.  The effect was
amazing.  You've probably heard about the Intel Inboard 386
accelerator - the Far I/O Poll leaves it standing.  The most
noticeable effect was the immediate increase in memory space;  instead
of 640 kb with 560kb free, I had 981 kb, with 899 kb free.  This meant
that even after loading the network drivers, over 800 kb of available
memory remained, and that alone would have meant that Dataease, which
does a lot of disk swapping when it runs out of memory, ran like the
wind.  Also, as the data compression made the data move faster, the
speed of processing seemed faster, and when I benchmarked it, I found
that Dobbin had gone from his normal 7.65 mhz to a sprightly 11.6 mhz.

Our next test was to use the additional addressing capability of the
system.  I added a 2 mb expanded memory card, and booted up with the
device driver installed.  This re-configures the expanded memory as
twelve-bit memory, giving a total of almost 4 mb, including the 640 kb
on the motherboard.  But the really nice thing about this, is that you
still get nearly 800 kb of conventional Dos memory even after loading
the IBM PC Lan drivers.

I've been looking at a beta test version of the product;  it should be
available to the general PC user fairly soon now, and I expect it will
be available from any good dealer in the very near future.  Make sure
that your dealer tells you about it as soon as it is available.