National Defense Industry Press and Springer Nature Singapore Pte Ltd. 2018
Xiujian Li , Zhengzheng Shao , Mengjun Zhu and Junbo Yang Fundamentals of Optical Computing Technology
1. Summary of Optical Computing Technology
1.1 Phylogeny and Trend of Computing
To understand and grasp the technology of optical computing and its hardware development present situation, development trend, and future, it is necessary to understand the history of computing.
So far, the chronological division computing age went through the primal computing age, handwrought computing age, mechanical computing age, electromechanical computing age, and the electronic computing age.
1.1.1 Primal Computing Age
About 3 million years ago, the primitive people began to count by the knots in the ropes, which gradually established the concept of number. With the gradual abstraction of the number of concepts, the realization of conversion between the image and number, the number calculations began to appear. Besides the rope knots way, the primitive people also tried to achieve number calculations by fingers, stones, and woods, as shown in Fig.. Among them, the mans first calculation tool is considered the human breaking fingers count which is still used today, which also is regarded as the origin of the most familiar decimal today. However, these computational methods are limited in the fields of number operations and statistics, rather than truly computing tools.
Fig. 1.1
Primal computing forms a records of ancient Egypt rope knot counting in 3000BC b records of Mesopotamian clay tablet counting in 2000BC c finger counting record in Iran stamp
1.1.2 Handwrought Computing Age
The real special computing tools appear in the handwrought computing age, which can realize more complicated calculation process to meet the requirements of civilization progress.
At about 2000 years ago, i.e., the SpringAutumn and Warring States period, Chinese invented the abacus which is one of the worlds earliest computing tools still in use today, as shown in Fig. a, b, c.
Fig. 1.2
Typical computing tools of the handwrought computing age
Based on the decimal counting system of the counting rod, Chinas famous ancient mathematician Zu Chongzhi accurately calculated the value of pi to the level between 3.1415926 and 3.1415927. Some other Chinese ancient astronomers also used the counting rod to sum up the precision of the astronomical calendar.
The abacuses were evolved from the China counting rod about six to seven hundred years ago and are still in use so far. Long long ago at the end of the Han Dynasty in the period of the Three Kingdoms, the book Shu Shu Ji Yi written by Xu Yue said: the abacus, control four, Jingwei God, which is the earliest written record of the abacus. It combines decimal counting method and a set of calculation formulas, which is considered to be the first digital computer system, and the corresponding algorithm is also the earliest.
In 1700s, the slide rule was invented, which created a precedent for analog computing. The slide rule can perform more complicated calculation than the Chinas abacus and the counting rod, such as square root, index, logarithm, and trigonometric functions. Up till to 1960s, the applications of the slide rules in the engineering fields are replaced by the pocket electronic calculators. However, the circle calculating rulers shown as Fig. are still used in the aviation field.
Fig. 1.3
Circle calculating ruler
Anyway, the main characteristics of the manual calculation tools is that, simple and easy to realize the calculation function, which played a major role in daily work and life, and the abacus and the calculating rule have been used till today.
1.1.3 Mechanical and Electromechanical Computing Age
Though the manual calculation tools are simple and easy to be realized, they cannot meet the needs of the development of natural science and engineering technology. Especially, the Medieval Renaissance greatly promoted the development of natural science and engineering technology, which needs the computing machines to replace the manual computing tools. The Medieval Renaissance activated the computing requirements and eventually led the computing age into mechanical and electromechanical computing age.
The first mechanical computer design was appeared in Da Finchs manuscripts, and the first mechanical computer was implemented by the French mathematician, physicist and philosopher Pascal in 1642, as shown in Fig. a. Pascal also believed that the mechanical computer could be used to simulate humans thinking activities, which now appears to have a certain degree of parochialism, but is helpful for the future development of the computer.
Fig. 1.4
Typical computing tools of the mechanical and electromechanical computing age a mechanical computer by Pascal b multiplication machine by Leibniz c Babbage machine
In 1671, Gottfried Leibniz, a German, firstly proposed the binary algorithm and then designed and implemented the first multiplication machine, which is the first computing machine to run the full four arithmetic operations, and the maximum output value can be about 16, as shown in Fig. c). The Babbage machine firstly could carry out 6-bit arithmetic operations and then was upgraded to 40-bit. The Babbage machine size was almost the same of a building.
The Babbage machine stored the program and data in the read-only memory (i.e., punched card), which realized the basic idea of the control center (CPU) and the stored program. Furthermore, the program can jump according to the condition, which can make the addition operation in a few seconds, the multiplication and division in a few minutes, and results in an output in the form of perforation.
Although completely based on mechanical design theory to achieve arithmetic operations, the Babbage machine was based on advanced design theory, in which the registers are used to store the data, which reflects the early beginning of program design. Therefore, the Babbage machine has a prototype of the computer at present; some structure design and design concept were still adopted by current computer designs. Three devices with modern significance in the Babbage machine: (1) Register for saving data (gear-type device), (2) device to read out data from the register for arithmetic operations and to realize multiplication by repeated addition operations, and (3) devices for controlling operation sequence, selecting data required for processing and output the results.