In summary: The Power of
"Everything should be made as
simple as possible, but not simpler." -- Albert Einstein.
The WIZ watchword: Simplicity!
The processor is very
simple. It is basically little more than a register
file and a few independent arithmetic and logical backend circuits.
It has but one function, to copy one register to another. A first
year engineering student could understand the complete circuit.
It is very fast.
The processor is asynchronous: each register signals when it is done.
Thus an instruction "takes as long as it takes".
Register-to-register transfers run at a very great speed with no
instruction decode and very few levels of logic between them. Being
very simple and having nothing on the buses but the registers, bus
loads are light and lengths are short. And those operations which
are by nature not so fast are implemented in backend logic whose
architecture allows parallelism to be maximally exploited.
It has no clock.
There is no need for clock or power gating: functions that are not
active use absolutely no power.
It is highly customizable. It is very simple to add custom
backend circuits. Any kind of IP block can be embedded in a WIZ, placed
behind one or more registers.
It is highly scalable. Any size,
speed and functionality WIZ can be created, from a tiny "mote" up to
a very large WIZ with supercomputer functionality and speed.
It is highly suited for extreme multi-processing. It is very
easy to put numerous WIZes onto a single chip and numerous such
chips into a single system. The WIZ provides a very efficient
WIZ-to-WIZ communication capability, and the nature of the design
makes it optimal for creating parallelism. Instruction-level
parallelism, processor-level parallelism, chip-level parallelism,
even multi-chip-level parallelism.
All WIZ hardware is completely
compatible and inter-operable. Any WIZ can be
interfaced with any other WIZ, with absolute compatibility. Even
unusual technologies or process chemistries can be encapsulated
behind WIZ registers and thus become absolutely compatible from the
WIZ point of view.
All WIZ software is completely
compatible and inter-operable. Any ZOZ sequence can
run on any WIZ, and within the limits of the particular WIZ's
configuration, will run as optimally as is possible.
It is easy to implement in any technology,
especially future technologies. The WIZ's circuit is
very simple; the gate count is very low; there are almost no
internal timing dependencies or potential race conditions; there are
no complex interactions between the various parts. The schematic is
simple, the place-and-route is simple, the verification is simple.
When the next technology comes around (DNA transistors?) the WIZ
will be the first to port.
It is easy to test.
Because registers and their backend circuits operate independently,
there are almost no interactions between them. We can therefore test
each device separately, and get very high fault coverage on most
devices merely by exercising them with software. No built-in
hardware self-test is required or desired -- a software self-test is
all that is needed.
It can be supported with a small
engineering effort. Because of its simplicity, the WIZ
doesn't need to be continuously re-designed every year to add new
"features". We don't need to waste a huge amount of engineering
resource making each year's model more complex or overcoming the
complex problems of the complex interactions between the parts
introduced in the last year's model.
It can be made very cheaply.
Because it is so simple, there is almost no NRE. Because it small
and lacks timing complexity, it will have a very high yield. Because
it is asynchronous, it will easily tolerate wide manufacturing
variances. Indeed, because of its tremendous redundancy of
processors it can tolerate a significant few being taken off-line
after failing self-test, and yield therefore becomes almost
irrelevant. A complete WIZ chip could sell for a penny.
It can be ubiquitous. Because
it can be scaled from very tiny to very large and everything in
between, with complete compatibility and interoperability of all
hardware and software, the WIZ is the processor for ubiquity. We
can have a single type of chip and use it everywhere, from tiny
embedded applications to large computational applications, all
sharing a single software base. The economies of scale will take
over. We won't need separate compilers, operating systems,
manufacturing plants, etc. WIZes may still come in many models, but
they will be much more similar than they are different.
I rest my case. Now let's do it!!