Monday, March 21, 2011

The Light Computer

The idea of computer systems based on pulses of light moving along fiber optic cables, rather than electrical pulses through conventional wiring, has been around for a number of years. I would like to add my input to it and also to describe my vision of a computer based on light moving beyond the usual binary encoding altogether. (Note-I will alternate the two global spellings of "fiber" and "fibre", and also "color" and "colour", to avoid continuous use of parenthesis).

Light has actually been gaining ground on traditional magnetic and electrical computation and communications for quite some time. The most obvious examples are fiber optic cables replacing copper wire in long distance telephone service and optical storage, first CDs then DVDs, being used to store data instead of magnetic media. In the newest generation of DVDs, blue lasers are being used because their shorter wavelength makes possible the storage of much more data in the same space, in comparision with that if a red laser were used.

The great advantage of fibre optic cable over electrical wires for communication is the lack of electrical interference. Metal telephone wires also act as antennae, picking up all kinds of electromagnetic waves, which results in random noise and static that degrades the quality of the signal. Fiber optic cable suffers no such interference. However, in the U.S. the "local loop" is still copper wire, fibre optic is used mainly in long distance service.

A great amount of effort goes into doing all that is possible to protect the flow of data from interference. Telephone wires are twisted together because it better protects against interference. Computer network cable like Unshielded Twisted Pair (UTP) is twisted for the same reason. Coaxial cable uses the outer shell as a shield against interference.

Communications cables often have grounded wires included that carry no data but help to absorb electrical interference. Parallel data cables, such as the printer cable, are limited in how long they can be because the signals on each wire will create electrical interference which may corrupt the signals on the other wires. Modems were designed to test the lines and adjust the baud rate accordingly.

Inside the computer, every electrical wire and circuit trace also acts as antennae picking up radiation given off by nearby wires. This degrades the quality of the signal and may make it unreliable. If we make the current carrying the signal stronger to better resist interference, then it will only produce more interference itself to corrupt the signals on other wires.

Designing a computer bus nowadays is a very delicate balancing act between making the signal in a given wire strong enough to resist interference, but not strong enough to interfere with the signals on other wires. The complexity of the computer bus only makes this dilemma worse.

As we know, computing is based on electrical pulses or magnetic bits which are either on or off, representing a 1 or a 0. This is called binary because it is a base-two number system. Each unit of magnetic storage because the possibility of being either a 1 or a 0 make it one bit of information.

Eight such bits are defined as a "byte". The two possibilities of a bit multiplied by itself eight times gives 256 different possibilities. This is used to encode the letters of the alphabet, numbers, punctuation and, unprinted control characters such as carriage return. Each of these is represented by one of the 256 possible numbers. This system is known as ASCII, you can read more about it on http://www.wikipedia.org/ if you like. The great thing about this binary system is that it is easily compatible with both boolean logic and the operation of transistors. This is what makes computers possible.

But, once again, so much of the design of computers and the use of signal bandwidth goes into making sure that the signal is reliable in that it has not been corrupted by electrical interference. The eighth bit in a byte is sometimes designated as a parity bit to guard against such interference. For example, if there is an even number of 1s in the other seven bits the parity bit would be set to 0. If there is an odd number of 1s in the seven bits, the parity bit would be set to 1. The parity bit technique takes up bandwidth that could otherwise be used for data transfer, but it provides some rudimentary error checking against electrical interference.

The TCP/IP packets that carry data across the internet can be requested to be resent if there is any possibility of data corruption along the way. A new development in computer buses is to create a negative copy of data, by inverting 1s and 0s, and send it along with the positive version in the theory that interference will affect the negative and positive copies equally.

The tremendous advantage of fiber optic is that we do not have to worry about any of this. With fibre optic cables carrying data as pulses of light, instead of electrical current, we can have hundreds of cables in close proximity to one another and there will not be the least interference between them. This is what makes the concept of computers based on light so promising.

If we could implement a data system using eleven fine lasers, each a different color, the computer could work with ordinary decimal numbers instead of binary. This would not only make computing far simpler, but would provide a five-fold increase in efficiency. We would use pulses of laser light representing 0 through 9 instead of electrical pulses representing 0s and 1s.

The eleventh colour would be a "filler" pulse to be used only when there were two or more consectutive pulses of the same color. This filler pulse would help to avoid confusion about how many pulses there are, in the event of attenuation or other distortion of the data. In addition, multiple filler pulses in a row could be used to indicate the end of one document and the beginning of another.

This new system need not change the existing ASCII coding, we could simply express a letter, number or, control code by it's number out of the 256 possibilities of a byte, rather than it's binary code of the eight bits in a byte. But this would make possible a new "extended ASCII" of 999 possibilities, instead of the current 256. It would also require only three bits, instead of the usual eight. The extra symbols could possibly be used to represent the most common words such as "the", "this", "that", "those", "we", etc.

There would be no 1s and 0s, as in binary. There would only be a stream of pulses of different colours with no modulation or encoding of information, such as the laser light carrying the sound of a voice in fibre optic non-digital telephone communication. All that would be necessary is to keep one color distinguishable from another and to keep them in the proper sequence. If we could do this, any attenuation in the length of the pulses would make no difference. As our technical capabilities increase, we could increase the data transfer rate by making the pulses shorter.

When you dial a telephone number, the sound pulses that you can hear have different frequencies to represent each number on the dialpad. This would be using exactly the same concept to handle the data in a computer using light.

It probably is not a good idea to try to use more than eleven colours at this point, because that would make it increasingly difficult to distinguish one pulse from another. This old binary and ASCII system is really antiquated and I think fiber optics gives us the opportunity to move beyond it. This is yet another example of how we make much technical progress while still using a system designed for past technology so that we end up technologically forward but system backward.

DATA STORAGE USING LIGHT

Computing is a very old idea, but it's progress is dependent on the technology available. Prehistoric people counted using piles of pebbles. Later, a skilled user of an abacus could quickly do arithmetical calculations. In the industrial era, Charles Babbage built the mechanical programmable computers that are considered as the beginning of computing as we know it. I have seen some of his work, and modern reconstructions of it, at the Science Museum in London.
The development of vacuum tubes opened the possibility of computing electronically. But since such tubes use a lot of power, generate a lot of heat, and have to be replaced on a regular basis, it was only when transistors and other semiconductors were developed that modern computers really became a possibility.

Thus, we can see that there has always been steady progress in the development, but this progress has been dependent on the materials and technology available at the time. This brings the question of what the next major step might be.

I think that there are some real possibilities for the future in the pairing of lasers and plastics. The structure of plastic is one of long polymers, based on carbon, which latch together to create a strong and flexible material that is highly resistant to erosion. Fuels are made of the same type of polymers, the main difference being that those in plastics are far longer so that they latch together to form a solid, rather than a liquid.

As we know, light consists of electromagnetic waves in space. Each color (colour) of light has it's specific wavelength. Red light has a long wavelength, and thus a low frequency, while blue light has a shorter wavelength and a higher frequency.

The difference between light from a laser and ordinary light is that the beam from a laser is of a sharply single wavelength and frequency (monochromatic) so that the peaks and troughs (high and low points) of the wave are "in step". This is not the case for non-laser light, which is invariably composed of a span of frequencies, which cannot be "in step" in the same way because their wavelengths vary.

This is why a laser can exert force on an object, the peaks and troughs of the light strike the object at the same instant. With ordinary light, this does not occur because the peaks and troughs are "out of step" due to the varying wavelengths of the light. Laser light can also cross vast distances of space without broadening, and dissipating, as does the ordinary light from a flashlight.

Now, back to plastics. Suppose that we could create a plastic of long, fine polymers aligned more in one direction than the perpendicular directions. You might be thinking that this would defeat the whole idea of plastics, since such a plastic could be more easily torn along the line of polymer alignment.

But what if the light from a laser could permanently imprint the wavelength of the light on the fine polymers of this plastic? If an ordinary beam of white light, which is a mix of all colours (colors), was then shone on the spot of plastic, it would have taken on the color (colour) of the laser and thus would relect this colour back.

We could refer to the plastic as a "photoplastic", because it's polymers would take on the color of whatever laser light was last applied to it. It would, of course, be required that the polymers of the plastic be considerably longer than the wavelengths of the laser light.

This photoplastic would not be useful for any type of photography, because the wide range of wavelengths of light falling on it would dissipate one another's influence on the polymers of the plastic. But it could be extremely useful for storing data.

In use of magnetic storage of data there are only two possibilities for each magnetic bit, either "off" and "on" or 1 and 0. Eight such bits are known as a "byte", and since 2 multiplied by itself eight times gives us 256 possible combinations, the ASCII coding which is the foundation of data storage is based on this.

But if we could use this photoplastic with lasers of eleven different colours, each bit would have eleven different possibilities rather than only two. Just as we can convey much more information with color images, rather than simple black and white, we can store far more data per density using this method instead of magnetic storage.

The processor of a computer processes data by using the so-called "opcodes" that are wired into it. A processor might have several hundred, or more, opcodes wired in. These opcodes are designated by using the base-sixteen hexadecimal number system, which uses the digits 0-9 and also the numbers A-F to make a total of sixteen characters.

These "hex" numbers as designators of the opcodes built into the processor are known as "machine code". Assembly Language is a step above machine code and uses simple instructions to combine these opcodes into still more operations. All of the other higher-level computer languages do the same thing, combine together the opcodes wired into the processor to accomplish the desired operations.

Until we can develop a "light processor" to work with the light storage and light transmission of data that I have described here, the actual processing will still have to be done with electrons. But it is clear to see that the use of light in computing would be the next step forward from what we have today.

No comments:

Post a Comment