MEMS and Hardware Specialization
In a few years most of our mobile devices will only need to be charged every six months
and this innovation will be due to MEMS (Micro
Electro-Mechanical Systems) which are microengines a few millimetres wide that
use hydrocarbon fuel. Have you ever looked at an aircraft engine and said "How can
that generate 500 tons of thrust and lift this that this hunk of metal into the air?"
Well MEMs are micro equivalenent. Hydrocarbon fuels have a huge storage density between
40 and 50 MJ/kg where nickel metal hydride batteries commonly used in laptop
computers provide only 0.4 MJ/kg. Hence microengines can produce 30 times as
much energy for weight as standard batteries because of this high energy density in
the fuel. What is interesting about this technology is that the latest innovations
are using conventional UV lithography but, in the reverse. The lithography must create
huge structures on the micrometer size so that the combustion can take place in the
microengine rather than the nanometer size small for transistors.
Software was not my first choice of a career. I spent a number of years design digital
hardware for the first GSM base stations in the UK among crazed microwave engineers.
As a result I still spend much of my time building hardware devices usually with PIC
micocontrollers. In the XML industry there is a continual emergence of XML hardware
acceleration devices from the likes of Tarari and DataPower.
The interesting aspect is that there is a trade off between the capabilities
of a software engineer writing for a general purpose processor vs software on
a specialized board, with the developement model following very
much along the lines of the video card acceleration industry. The interest in XML
acceleration is due to the apparent three ineffeciencies of XML - bandwidth, storage
and parse time. This can result in XML parser and writer implementations attempting
to cheat the W3C XML 1.0 standard in order to reduce at least one of these, typically
the parse time, by say ignore the valid range of character values in the names. Bandwidth
is a non-issue. Simply use a compression technique like gzip on
the wire and your done. Storage is also a non-issue with tera-byte disk just a few
years away. Joshua claims to me to
be capturing his life digitally as an example! Parse time is an issue and this is
where XML accelerators have some hold. However since general purpose processors
are improving in clock cycles and the cost of them reducing by the day, there is
only a certain window of opportunity for XML acceleration devices before they are
the same price as adding another general purpose box to your server farm. When you
combine other services such as encryption onto these specialist hardward boards then
they do start to look very attractive again.
My final note on hardware is when will applications be developed onto silicon? Imagine
having the Office 2003 suite burnt into specialized silicon. Not only would the cost
be cheaper, the device could be tiny with all the power of a current desktop
machine and just like the old Atari
consoles, software piracy would be completely eliminated.