Showing posts with label engineering. Show all posts
Showing posts with label engineering. Show all posts

Friday, July 08, 2011

Thinking Outside the Box

Synopsis
First, I'll explain how, I think, the expression "thinking outside the box" originated.  Then I'll give two examples of how great strides in math / science / engineering were accomplished by "thinking outside the box".  But the most important point that I want to make is that evolutionists are stuck inside the box of materialism because they are afraid to think outside the box.  I discuss a vibrating string as an example of the limitations of materialism.  Outside the box of materialism (but not outside science) is information theory, and in particular, the structured information of design.  Here, the evolutionists are "out of their element".

The Puzzle
I think that the expression "thinking outside the box" was inspired by the following puzzle.  You are presented with an array of nine spots arranged as shown below on the left, and are challenged to draw a sequence of four connected straight lines such that they will pass over all of the spots, touching each spot only once.  The lines must be connected end-to-end, and are allowed to cross over each other, for example, as shown on the right.


It was reported that the puzzle is difficult for most people because they mentally think of the array of nine spots as defining a square area as depicted in the next diagram, and they assume that the puzzle operates within this area.


The puzzle does not require the lines to stay inside this assumed 'box'.  Adding this restriction prevents a solution, because the puzzle solution must go "outside the box", as shown next.


Science and mathematics have grown by "thinking outside the box".

Imaginary Numbers
For example, it was once thought that it was meaningless to speak of the square root of a negative number.  It could be proved, for example, that the square root of minus one, if it had a value, could not equal any known numeric value.  But if we IMAGINE that it had a value -- call this value 'i' (for Imaginary) -- then, logically, we could compute the square root of any other negative number.  The square root of -9 would equal the square root of 9 (that is, 3) times i.  So 3i would be an "imaginary" number, while 4 is a "real" number.

But then it was reasoned that we could think of these out-of-the-box numbers as newly discovered numbers rather than "imaginary" numbers.  We could even add "real" and "imaginary" numbers to create "complex" numbers.  It all made sense (it didn't lead to contradictions), and it opened up a new world of mathematical discovery.  At first, it appeared that this branch of mathematics was an abstract, theoretical-only world unrelated to the physical world; but scientists and engineers found that it could precisely describe the behaviour of resonant electronic circuits.  Our modern electronic devices could not be designed without the aid of this out-of-the-box mathematics.

Finite Numbers
I'll give one more example from mathematics and engineering, but I'll keep it extremely simple.  We are all familiar with doing arithmetic with integers (whole numbers), and we know that we have an infinite supply of integers, because no matter how large an integer we might be given, we can always add one to it and get a larger integer.  Wouldn't it be weird if we had a finite supply of numbers, and no matter what arithmetic operation (add, subtract, multiply, or divide) we did with any two of them, the result would be found in our finite supply of numbers?  Well, mathemeticians have discovered how to construct a finite set (of any size) of 'numbers' with associated arithmetic operations that operate like this.  (They are called finite fields, a kind of finite algebras.  Math geeks, see http://mathworld.wolfram.com/Ring.html)  The arithmetic is weird, but easy to learn to do in most cases.

Like the "imaginary" numbers, these weird systems of arithmetic seem like mathematical toys or games that bear no resemblance or relationship to the real world.  Why don't we stick to normal math that describes how the real world operates?  But engineers have used this weird math to construct codes used to detect and correct errors that occur in the communication or storage of digital data.  For example, CDs and DVDs would not function without Reed-Solomon error-correction codes, which are based on these "finite fields".

The Box of Materialism
Evolutionists don't want to think outside the box of materialism.  One of the definitions of science (from dictionary.com), is "systematic knowledge of the physical or material world gained through observation and experimentation", which limits the scope of science to the material world.

Of course, evolutionists have a problem with the "observation" part, because nobody has observed genetic changes from one kind of creature to a completely different kind (such as dog to horse, rather than dog to another kind of dog).  So they mostly content themselves with inferring (by theory) past events from current observations.

And of course, evolutionists also have a problem with the "experimentation" part, because a true experiment requires control over the conditions of the experiment.  Their experiments only show things such as that one can breed flies just like one can breed dogs, not major changes of kind.  Even by broadening the concept of experiment so that "predictions" can be made and tested regarding past events fails.  For example, evolution predicts that there should be millions of intermediate forms ("missing links"), but none are found.

But the evolutionist argues, and rightly so, that the creationist also has similar problems with the "observation" and "experimentation" parts of the definition of science, and thus feels that he is on a 'level playing field' with his game of 'my story is more plausible than your story'.  (He considers this story-telling to be "science", but if it weren't based on a theological / philosophical battle, it would be called "science fiction" instead.)

But the evolutionist thinks that the "physical or material world" part of the definition of science works to his advantage, because it rules out the supernatural, which is the essential part of the creationist's "theory".  And, after all, his main objective is to rule out God.  But is it honest to 'win' an argument by virtue of a definition?

Vibrating String Example
Consider, for example, the vibration of a guitar string.  If we know certain characteristics of the string, we can apply the laws of physics by means of a branch of mathematics called differential calculus to determine how the string will vibrate, and the nature of the sound that it will produce.  We need to know:

(1) the weight (such as ounces per foot) of the string
(2) the tension (such as pounds of force) of the string
(3) the length (between fixed points: a fret and the bridge) of the string

These, which can all be measured, suffice to compute the 'steady state' vibration of the string.  To determine the initial 'transient' component of the vibration that quickly fades before settling into the 'steady state', we would also need to know if the string were plucked or struck, and where on the string.  To know the intial amplitude and how quickly the vibration will fade, we would also need to know how hard the string was plucked or struck, and other details.

So by observing (measuring) a guitar string, we can use science to predict precisely what will happen when we pluck the string.  But what if we are not in control?

First, we have a 'future' problem.  We might observe the string vibrating and make a prediction, only to find that the guitarist (the one in control) stops the vibration, without our permission, before our prediction can be fulfilled.

Second, we have a 'past' problem.  If our observation of the string began after the 'transient' component of the vibration has faded, we will have insufficient data to determine when the vibration started, and we will be unable to determine if it were plucked or struck, or were given its inital energy some other way.

Note that our problem, essentially, is not that the guitarist is a material object too complex for us to analyze, but rather that the guitarist has a mind outside of the scope of our observation and control.  If the guitarist were a robot, our problem would be difficult, but not impossible.

So what do we learn from this vibrating string parable?

We realize that the size and age of the material world makes nearly all of it beyond the scope of our observation and control.  And science that is limited by definition to apply only to the material world is, by definition, limited in its application.  Defining this box does not prove that there is nothing outside the box.  If there is a Creator outside the box who is ultimately in control, and if you want to be the one in control, you may be inclined to hide inside your box, but you can't make God go away.

A Broader Definition of Science
Dictionary.com gives a broader definition of science, one that precedes the definition that we quoted earlier: "a branch of knowledge or study dealing with a body of facts or truths systematically arranged and showing the operation of general laws: the mathematical sciences."  So more generally, science is not limited to material things, but anything that can be studied "systematically" such that it can be explained in terms of "the operation of general laws".  For greater clarity, "mathematical sciences" is mentioned, indicating that there should be sufficient precision that the language and methods of mathematics can be applied.

So what is immaterial that can be included in this broader definition of science?  Information is immaterial, and is studied systematically and operates in accordance with specific laws with sufficient precision so that the language and methods of mathematics are applied.  This area of science consists of information theory and related theories of formal languages, algorithms, etc., and the corresponding applied science consists of the technologies of information storage, communication, and processing.

In a previous blog, ALL Things, I made the case that the material world consists of four interrelated elements: matter, energy, space, and time.  Then in a later blog, Is Encoded Information an Essential Part of the Universe?, I made the case that encoded information is an optional fifth element, not required by the laws of physics, but nonetheless present where (and only where) life is present.  The reason why information is found only where life is found is that the design paradigm of life is chemistry guided by DNA information, as I explained in the blog, Life is more than chemistry.  Without the guiding information, chemistry can only make inorganic molecules.  DNA information is needed to make organic molecules, which are much larger and more complex.  (Some simple molecules such as certain amino acids are traditionally classified as 'organic' if they are used as components of large organic molecules, but that is like listing raw iron as a machine part, along with the nuts, bolts, and cotter pins.)

Information Outside the Box
Before the functions of DNA and RNA, and the genetic code were discovered, evolutionists could take advantage of the mystery of genetics to tell imaginative stories of how evolution might operate.  But these discoveries irreversibly brought information theory into the scientific arena of the creationism / evolutionism debate.  Just as someone caught in a lie feels forced to tell new lies or to modify the first lie to maintain credibilty, the evolutionists felt compelled to change their story; and just as a gang of liars are not likely to agree except on their innocence, the evolutionists don't agree except that God is not involved.

Some evolutionists insist that there is no information in DNA and RNA, as though closing their eyes will make the information bogeyman go away.  Some insist that information theory is not a valid science (because information is not material).  Some claim that information can come from nothing, or from randomness (which is zero information according to information theory), attempting to prove this by equating patterns and information.  And some claim that new information can be generated by random re-arrangements of scraps of information, as though it were possible that if you scrambled parts of the Koran long enough, you might end up with the Bible.  Even those that admit that information always originates from intelligence deny that God is a plausible source of that intelligence, but prefer an "extraterrestrial" source, replacing the question "How did life information originate on earth?" with the question "How did life information originate on planet X?"  (Do I need to explain the fallacy of that logic?)

So the evolutionists that dare to wander outside the box of materialism either flounder like someone diving into water without learning to swim first, or they retreat to the more comfortable zone of materialism.

But that is only the beginning of the problems for the materialists.  The information in DNA is not just information, but more specificly, DESIGN information.  And here the evolutionists are completely lost in an unfamiliar world.  Most of the contributors to the science of intelligent design have a background in the applied science of engineering, because this is familiar territory that they understand.

Structured Information (Top-Down Design) Outside the Box
The key to understanding the evolutionary problem is that design information is structured information.  Let me give a simple example to make this clear.  In a book, whether fiction or nonfiction, letters are arranged to make words, words arranged to make phrases, phrases arranged to make clauses, clauses arranged to make sentences, sentences arranged to make paragraphs, and paragraphs arranged to make make chapters.  Does any author start with letters and play with different sequences to make words, etc., finally making chapters?  No, the author starts with an array of related concepts, and starts at some high level of organization and works downward, finally working out the details of how best to arrange a sentence and how to spell the words.  Rarely does the author accomplish the final work in one pass, but each revision starts with a new concept at some level and works downward.

Does a designer start with an assortment of parts, like a box of legos, and wonder what he might do with them?  No, he starts with a concept, such as using suction to remove household dirt, and designs a vaccuum cleaner "top down", as designers like to say.  He may begin with a simple set of features, and add features such as exchangeable attachments, but additions and revisions are always "top down".  For example, when he decides that he needs a hose to connect attachments to the vaccuum pump, he first determines its desired properties (lightweight, flexible, does not collapse like a fire hose, etc.) and then works out the details, such as using a wire coil to keep the hose from collapsing.

Unlike the book example, a design typically mixes different technologies.  For example, the engineer needs to choose appropriate materials, and so depends on experts in metallurgy, plastics, etc.  Or he needs a motor, and orders one meeting his specications designed by a specialist.

Living things, even single-celled organisms, are likewise complex designs, systems made of subsystems that are made of sub-subsystems, etc.  And they mix mechanical, chemical, electrical, communication, etc. 'technologies' to acheive coordinated purposes.

So, the evolutionist, in re-telling his story to adapt to the undeniable presence of design, imagines that accidental genetic changes can modify designs to make new designs.  But experienced designers recognize this as "bottom-up" design: that is, a foolish, unworkable strategy.  Fiddling with the details never makes a truly new design; it only 'tunes up' or adjusts a design.

For example, the first television sets had about a dozen adjustment knobs in front, which was dangerous, because people that had no clue about the internal technology would fiddle with them with disasterous results.  It took a while for the engineers to design automatic adjustment mechanisms to replace all of those knobs except for the channel selector and the volume control.  But note that a billion adjustment knobs on the television will never suffice to make it function like a cell phone or a vaccuum cleaner.

Complex systems generally require many automatic adjustment mechanisms.  And that is exactly what scientists observe in biology.  Genetic adjustment (adaptation) is just one category of these mechanisms.  So species are designed to adapt to environmental changes, and we can influence the process by breeding (outside intelligence).  But breeding dogs to make horses takes a leap of imagination, and supposing that inorganic matter can turn into human beings with no outside intelligence in something less than an eternity takes a enormous leap of faith.

So if and when evolutionists dare to wander outside the box of materialism, they are likely to discover that evolution is a religion, after all, not a science.  That is, if they are willing to be honest with themselves.

Thursday, March 18, 2010

The First Digitally-Controlled Designs

Since the discovery of DNA and RNA and the Genetic Code, it is indisputably clear to biologists that the structure and function of all living things is determined by the information stored in the DNA. The interpretation of the DNA information according to the Genetic Code creates a enormous set of specific proteins and other complex organic molecules that implement the structure and function of a particular organism. (See The Genetic Code - how to read the DNA record and More About the Genetic Code.) Some of these complex molecules are building blocks of the living structure; some are the tools or 'workmen' that build the structure; other organic molecules function more like supervisors that control when and where and how this work of construction is done. Still others supervise various functions of the living structure, such as digestion, breathing. sight, growth, etc. All of these complex functions are guided not exclusively by chemical laws, but also by the information from the DNA. (See Life is more than chemistry and Can Chemical Evolution Work?) This is true of all living things, whether a single-celled organism or a much larger plant or animal such as an oak tree or an elephant. Such a complex, coordinated interplay of material and function at multiple levels is clearly DESIGN.

I ought to explain that I understand and appreciate this from experience. I worked for 43 years as a designer and inventor of computers and other digital systems, acquiring 45 patents in that time; and in my retirement years, I have been studying organic chemistry. When I started my career, a typical computer was a roomful of refrigerator-sized cabinets. but less powerful than today's pocket calculator; and I have seen the technology grow functionally and shrink physically since then. In between then and now, the Quintrel computer that I designed, one of the first to do speech processing (like speech recognition) in real time (that is, as fast as you can talk) was the size of a cookie baking pan. Inside all GPS satellites, the computer system that controls all the signals is my design. So I know a design when I see one.

I especially appreciate the advantages of a digitally-controlled design over a design that is just digital. The old-fashioned mechanical adding machines did digital calculation, but the control was manual; that is, the operator had to select the sequence of operations as well as the input data. I remember the company used to have one with a typewriter-like shifting carriage so that it could do multiplication and division; but it was still manually controlled.

In human history, digitally controlled designs started with things like the 'player piano', where the keyboard was controlled by a roll of paper with punched holes to specify the sequence and timing of the notes, and the Jacquard loom, where punched holes caused threads to be raised or lowered to create intricate designs such as brocade and damask. Herman Hollerith adapted the punched cards of the weaving industry for data input for his Tabulating Machines, and Charles Babbage planned to use punched cards for his Analytical Engine, which began the age of computers. (See The Development of Information Processing.)

Let me tell a story that illustrates how "I especially appreciate the advantages of a digitally-controlled design" as I said earlier.

There was a period in my career when we designed digital devices for communication of digital messages. No calculation in the ordinary sense of the word was needed, but the digital logic needed to be 'smart'. For example, before sending a piece of a message (called a packet), an error-checking code needed to be generated and attached to the message, along with a packet number. When receiving a packet, the error-checking code needed to be checked to see if the packet had any errors. (Most errors were detectable.) If the packet had no errors, an 'ack' (acknowledgement) message was returned to the sender; but if errors were detected, a 'nak' (no-acknowledgement) message was returned. Both ack and nak messages included the number of the good or bad packet that had been checked. A nak message was a request to resend the packet (hoping to get it right on the next try), and an ack message told the sender that it no longer needed to keep a copy of the packet. A communication protocol like this was controlled by logic hardware similar to that used to construct a computer, but there was no computer and no software involved. The designs were digital, but not digitally-controlled as computers are controlled by software.

A major problem with this style of design was that if a design error needed to be corrected, or a new design feature added, new parts would need to be added, and the layout and wiring of the parts modified. The parts might not fit, so even the mechanical design might need to be redone.

An obvious solution to this problem is to include an 'embedded' computer in the design, so that software can define the functions of the design, because software is far more easily changed than the hardware. Once the software is thoroughly tested and no longer needs to be changed, it is typically embedded in read-only memory (ROM) and is called 'firmware'. This tactic is commonplace today, with embedded computers in automobiles and in nearly every electrical household appliance. That's easy today, because electronic circuits have shrunk enough for small computers, including all memory and other supporting logic, to be placed in one small, low-cost chip. But back then, electronics had shrunk only enough for simple circuits such a counter to fit in one chip. An embedded computer would require at least several chips.

We couldn't buy a general-purpose computer chip (they didn't exist then), but had to design a computer made of several chips. But this gave us the freedom to design a smaller 'custom' computer with only the functions actually needed. For example, we didn't need to add, subtract, multiply or divide; the only 'arithmetic' needed was to count the bits of a packet. Mostly, the computer needed to make decisions based on a specialized set of conditions. If such a design primarily controlled not a sequence of calculations, but a sequence of other operations (such as those needed for a communications protocol), it was usually called a 'controller' rather than a computer. Often, such a simplified computer / controller could be made with only a half-dozen parts. This 'custom' controller would thus have a 'custom' set of instructions that it could execute. (Each instruction is a group of binary codes and data that tell the computer / controller what to do for each step of its actions.)

Theoretically, a programmer (software writer) could write out the sequence of instructions (the software, or program) in the form of the ones and zeros that the hardware actually reads. But this would be very error-prone, because it is hard for people to memorize these codes, or even to copy them from a list without making mistakes. So, instead, equivalent codes that look more like English are invented, thus creating a special language that is much easier to learn and understand. Then a program called an 'assembler' is used to translate the semi-English to the ones and zeros that the hardware uses. (Also, decimal numbers are translated to binary numbers.)

Thus, almost every computer / controller design would have a different instruction set, and a correspondingly different 'assembly language', and a different assembler program. The assembler is what connected the software design to the hardware design.

Mostly, there were two kinds of designers: hardware logic designers that knew at least how to design parts of the computer hardware, and software designers that knew how to write software. A third kind of designer was a relative minority: the 'system designer', who understood both hardware and software -- the whole system, or the 'big picture'. (See The Start of System Engineering.) A few of these, who also knew the theory of formal languages, were able to write assembler programs, and even 'compilers', which can translate more abstract software languages. With my insatiable curiosity and willingness to self-educate myself in related fields on my own time, I became part of that minority.

The engineering supervisors resisted the idea of embedding computers in a design. Their reasoning was that we had hardware designers and software designers, but nobody that knew how to make a custom assembler. We would have to give such a job to outside specialists, which would be too expensive and troublesome.

It irked me that this judgement was hindering us from making compact and flexible designs. So, on my own time, I designed what I called the "General-Purpose Assembler". It was a step beyond a custom assembler, because before assembling a program, it first read a "language table", which defined the custom assembly language. So, the next time that a supervisor tried to veto a proposal for a design with an embedded computer / controller, I explained that I "happened to have" an assembler that could do the job. I did the extra work on my own time because I knew that digital control of a design was an optimum design paradigm.

I wrote an instruction manual for how to construct a "language table" and how to use the "General-Purpose Assembler", and soon other departments and projects were using it. A few years later, I estimated that about two dozen language tables had been written, creating that many custom assemblers for that many different embedded controllers. The "General-Purpose Assembler" also became a component of the assembler for the Quintrel processor that I mentioned earlier. These were all digitally-controlled designs.

Now, this story may seem like an utter digression from my initial discussion of DNA and RNA and the Genetic Code, but it was all to underscore and emphasize the following point:

I used to think of digitally-controlled designs as a modern phenomena -- but this is true only if you are limited to designs made by humans. But when I started to study organic chemistry and the workings of the Genetic Code, I soon realized that the greatest Engineer of all, God, got there first. For indeed, all living things of all kinds are digitally-controlled designs. The DNA is the read-only memory (ROM) that holds the genome, which is the software (firmware) that controls the chemistry that plays the role of 'hardware'. Each unit of DNA (nucleotide) is equivalent to two bits, having one of four values, and each codon (three DNA units) is equivalent to six bits, with one of 64 values. It compels one to ask "Where did all that DNA-software come from?" (See In The Beginning Was Information .) The reason why there is only one universal genetic code, and why so many life-forms share common design structures is not because all descended from a single common ancestor (unlikely if evolution is inevitable, as Richard Dawkins claims), but because all have a single Creator.

I know that some readers will dismiss my comparison of life designs to man-made designs as mere analogy. But my argument rests on more than analogy. It involves what in category theory is called isomorphisms. Rather than getting too technical, I will illustrate the principles involved by a simple example:

If two species have sufficient similarities (putting them in the same category), we can expect them to have similar locomotion. For example, cats and dogs both have four legs of nearly equal lengths, and the knees bend in the same directions; so we can expect them to walk and run in similar ways. Frogs, kangaroos, and apes also have four legs, but not all four of equal length, so the locomotion is different. There is greater similarity of function when there is greater similarity of structure.

With similar logic methods, we can show that DNA-controlled life forms are more similar to embedded controllers than personal computers. For example, in both, the completed design has no capability of loading new software (not true for PCs). In both computers and controllers, the same hardware with completely different software will have completely different functionality. In life, the same chemical laws, chemical resources (food, air, water, etc) and same genetic code with a completely different genome will have completely different functionality.

As an experienced designer, I not only know a design when I see one, I know a digitally-controlled design when I see one; and I appreciate that it is an optimum design paradigm. No wonder that people are using the term "Intelligent Design" to describe living things.

For more on this subject, see The Digital Control of Life.

Saturday, October 17, 2009

My Favorite Invention

(UPDATE: I've added some photos to the end of this blog.)

My favorite invention is my Phase Meter (U.S. Patent 6,441,601), for a number of reasons:
  • It began as a simple insight, which led to further discoveries, and then to more complex implementation.

  • Its performance seems almost magical to me.

  • About a half dozen of these phase meters are being put into all new GPS satellites, where they will improve GPS accuracy, especially for military guided weapons.

  • It exemplifies how designs grow top-down rather than bottom-up.
Also, a number of friends and relatives have asked me to explain at least one of my inventions. With the help of some video demonstrations, I will explain the basic concepts of this invention in simple terms and how it gradually leads to more complex details (but I won't get into the details). The reader will get an understanding of how basic concepts are developed into working designs.

The Phase Meter compares the timing of two very different clocks with a surprising degree of accuracy. In a GPS satellite, accurate clock timing is necessary for accurate measurement of global positions, that is, for accurate navigation. The Phase Meter is accurate to within five picoseconds. (How small is that? Well, if you had a rocket that could go from New Jersey to California in one second, it would go only a hair's breadth in five picoseconds.)

Some Clock Basics

Basically, a clock is a device for counting oscillations. For example, a pendulum clock keeps track of the passage of time by using gears to count the swings of a pendulum. Traditionally, we divide each day into 24 hours, each hour into 60 minutes, and each minute into 60 seconds. So we adjust the length of the pendulum as best we can so that each swing to the left and right takes exactly one second; then we count 60 swings for each minute, and 60 minutes for each hour, etc.

The more precise digital watch uses digital counters to count the oscillations (vibrations) of a quartz crystal. (Instead of tick, tock, tick, tock, etc., digital oscilators create a 1010.. repeating sequence.) The rate of oscillation can be set by the cut of the crystal (and other factors), and good performance is obtained at about ten million oscillations per second (10 megahertz). So the crystal oscillator is typically set to 10 megahertz as accurately as possible, and ten million oscillations are counted to measure one second before counting off minutes and hours.

The most precise clocks now are atomic clocks, so called because they are based on the oscillation of atoms, typically rubidium or cesium atoms. However, the oscillation rate cannot be set to some convenient figure such as 10 megahertz. Instead, the rate is set by the laws of nature. For example, the oscillation rate of the cesium atoms in an atomic clock is 9,192,631,770 oscillations per second. The figure for a rubidium atomic clock is also an 'odd-ball' number.

The GPS Clock Situation

In each GPS satellite, a crystal oscillator with 10,230,000 oscillations per second is used to control the timing of the signals sent to GPS receivers. The timing accuracy of these signals determines the accuracy of all GSP navigation. The 10,230,000 rate is a convenient number for generating the signals, but the crystal oscillator isn't nearly as accurate as the atomic clocks on each GPS satellite. So the crystal oscillator clock needs to be compared to the atomic clock and then adjusted to make it just as accurate as the atomic clock.

But comparing these clocks with very different rates is tricky -- it's like comparing a poorly made yard stick, with inch markings, with a more accurate meter stick with centimeter markings.

Here is a video showing two rulers representing two clock signals. One ruler is represented by alternating blue and green line segments of equal length, equivalent to the 101010.. sequence of one of the GPS clocks. The other is represented by marks at equal intervals on a red line, each mark equivalent to a moment when the other GPS clock changes from 1 to 0. As you play the video, notice how the marks on the red ruler sometimes align with a blue section on the other ruler, and sometimes a green section. Suppose we colored the marks to match the color opposite it on the other ruler. Then we would get a sequence of blue and green marks in a seemingly random sequence. In a similar manner, whenever one GPS clock changes from 1 to 0, the state of the other clock is sampled, generating a seemingly random sequence of ones and zeros.



Observations Leading to the Invention

Sometimes a mark on the red ruler comes very close to a blue-green boundary, so that a small shift of one ruler relative to the other will change the color sequence. Likewise, a small shift of the timing of one GPS clock relative to the other changes the seemingly random sequence of ones and zeros (the 'sample' sequence). Because the sample sequence is sensitive to timing shifts, I tried to discover some way to decipher the sample sequence to measure the timing shift. The next videos illustrate the method that I discovered.

Suppose the blue/green ruler were wrapped around a circle with a diameter such that the blue segments always fall on one half of the circle and the green segments always fall on the other half of the circle. Suppose that the red ruler is also wound around the same circle. (Imagine that the rulers are so thin that they don't stack up on the circle, not making the path around the circle progressively longer.) Actually, we don't need to wrap the blue/green ruler around the circle; we can just mark the two halves of the circle blue and green to indicate where the blue/green ruler lands on the circle. When we wind the red ruler around the circle, we can see where the marks land on either the blue or green half.

In the video, the halves of the circle are marked as blue and green; and as the circle 'wheel' turns, winding on the ruler, the marks are moved slightly inside the circle when they land on the blue half, and are moved slightly outside the circle when they land on the green half. When you play this next video, notice that even though the marks are fairly far apart on the ruler, they become spread around the circle and eventually become closely spaced. It is this close spacing that allows more precise measurement than expected, because it is normally expected that the precision is the same as the ruler spacing.



So how can we calculate the offset alignment of the rulers from the positions of the green and red (one and zero) samples? Here is an analogous example that may suggest a method:

Suppose the famous "Old Faithful" geyser in Yellowstone Park in Wyoming erupts every one hour and 13 minutes exactly. (Actually, that's close to the average interval, but it varies, usually between 65 and 92 minutes, and sometimes about 45 or 125 minutes.) Now, suppose that the first eruption on some day is 41 minutes after midnight, and some one records a list of all the eruption times starting on that day and for one week, using a digital watch. They give us a copy of the list that doesn't include any of the numbers, but only the am/pm indicators, and ask us to figure out the time of the first eruption.

It's really simple to find the answer. We assume that the first eruption is at midnight, and advancing around a 24-hour circle at intervals of one hour and 13 minutes, we mark these locations on the circle "am" or "pm" according to the list. Unknowingly, we have started our list 41 minutes early, but when we look at our circle and see that the "am" marks begin at 11:19pm instead of midnight (12am on digital watches and clocks), it becomes obvious that our list started 41 minutes early, so we conclude (correctly) that the first eruption must have been at 12:41am.

How the Phase Meter Works

The phase meter uses a similar method. Starting at a "zero" position on the circle, positions are computed that are associated with "one" and "zero" samples (analogous to the "am" and "pm" marks). An early version of the invention used a list of these samples, which would become more costly with more samples. A later improvement reduced this cost by eliminating the list, making it practical for millions of samples to be processed.

In this later version, the circle is divided into three equal parts, and the number of "one" samples falling in each third of the circle are counted, using three counters. We figured out how to estimate the angle of the line that best divides the region of the 'one' samples from the region of the "zero" samples from these three counts. (This is a little tricky, but we will skip these details.)

In the next video, you can see these three counts increasing as the samples arrive on the circle, and you can see the estimated angle (computed from these counts) becoming more accurate as the counts increase. The marks outside the circle represent "one" samples, which are counted, and the marks inside the circle represent "zero" samples, which are not counted. The thirds of the circle are divided by black lines, and the estimated angle is indicated by a magenta line.



You can see that the result is not perfect, but in this demonstration, we have only 50 samples. A phase meter in a GPS satellite can process about 30 million samples every 1.5 seconds, and the error is about one ten-thousandth of the circle.

Conclusion

When all the details are worked out, we get something fairly complex, even though the initial concepts were relatively simple. The following is a "block diagram" of the final design; there are more details inside each rectangular block:


The yellow area and the blue area below it do most of the operations illustrated by the last video above, exept that the computation of the estimated angle is done by a computer elsewhere. The areas above allow a computer to set up the measurement parameters, and the areas on the left control the measurement timing. (Click on the diagram for a larger view.)

Designs like this are not developed one detail at a time, but rather one idea at a time. The big idea leads to middle-sized ideas, ... and finally to lots of details. That is the essence of what is called "top-down design".

============================================

I recently found some photos from the time that the phase meter prototype was tested. Here is a photo of the phase meter prototype 'test bed'. Most of the circuit board is a microprocessor with its support circuits (because part of the phase meter function is software). The phase meter hardware is the small black integrated circuit in the white square at the upper-left corner of the gridded area at the near end of the board.


The next photo shows the test team gathered around the test bed, with related instrumentation in the background. In the foreground is John Petzinger, co-inventor for the second phase meter patent, who worked with me in Clifton, NJ. I don't recall the names of the other two, but one is a software engineer from San Diego, CA, and the other a hardware engineer from Ft. Wayne, IN. We worked together by email and occasional phone call for months, before meeting for the first time in Clifton for the test.


Finally, I found this graph showing the results of one of the tests. Two stable clock signals with different frequencies were compared by the phase meter prototype at 1.5-second intervals ('epochs') for five minutes, and the variation of the measurements were recorded here. Assuming that neither clock signal was jittery, we assumed that all the variation was due to phase meter errors. Sometimes the error was plus or minus two picoseconds, but the average (rms) was 1 psec -- that is 0.000,000,000,001 second.

Saturday, July 18, 2009

Comparing Technologies

I heard that Wolfram Alpha was finally available, and I wanted to try it out. Wolfram Alpha is designed to be more than a search engine -- it's an answer engine. A search engine tries to find Web documents that contain information you want. But Wolfram Alpha will try to calculate an answer for you from data that it can access.

For example, if you want to know the "weight of the earth in pounds", it figures that (1) by "weight" you really meant mass, (2) the earth mass is available in a table of data about the planets of the solar system (although in metric units), (3) a table of conversion factors is available, and (4) a formula for converting units is available. Moreover, it has the 'smarts' to know that this is the data needed to get the answer, and it knows how to find and combine the details to get the answer.

Now, what problem would I use to try out this new answer engine? Well, I recall reading that DNA is an incredibly dense data storage and retrieval system, but I didn't have any number for the data density in, say, bytes per pound. So, I tried to get the number from Wolfram Alpha. But "DNA in pounds" was not precise enough. How much DNA? Just one 'base pair' (one unit of the chain), or an entire chromosome? And if a chromosome, which kind? (because they have different lengths)

DNA is a chain of information units called nucleotides. The chain is shaped like a twisted ladder, with each rung a pair of nucleotides that encodes two bits of information. There are four kinds of the nucleotides, so I began by asking for the mass of each kind, using their chemical names:

adenine mass in pounds: 4.9468*10-25 lb
guanine mass in pounds: 5.53252*10-25 lb
thymine mass in pounds: 4.51683*10-25 lb
cytosine mass in pounds: 4.06729*10-25 lb

I also needed the mass of the 'backbone' unit, for the 'sides' of the ladder:

deoxyribose mass in pounds: 4.45458*10-25 lb

Then, assuming that the four nucleotide types are used equally, I could now compute the data density of DNA:

1.084547*1024 bytes per pound
(That's about a one followed by 24 zeros.)

Now, what man-made data storage and retrieval system could I compare this to? I have an 8 GB thumb drive that weighs a quarter of an ounce, which may not be the most dense, but it's denser than a DVD or a hard drive. I calculated it's data density to be:

5.5*1011 bytes per pound

That means that DNA is about two trillion times more dense than the thumb drive. That is, the data capacity of a quarter of an ounce of DNA is equal to about two trillion 8 GB thumb drives! Engineers would love to be able to design a data storage and retrieval system with the density of DNA, but they don't know how.

Yet there are atheistic scientists that believe that mindless evolution accidentally created DNA millions of years ago. I have two reactions to this evolutionary belief:

First, as an engineer, I feel insulted that people actually think that a random process can out-do what none of my engineering colleagues can accomplish.

Second, it is clear to me that I don't have enough faith to be an atheist.

Tuesday, May 22, 2007

The Better Mouse Trap

When I recall my youth, I remember a number of activities that foretold my career as an engineer, including the time that I tried to make a better mouse trap.

We sometimes had mice (I remember Mom catching one with a broom and a dustpan), so we also had mousetraps. I noticed that mice could sometimes nibble the cheese gently enough to avoid getting caught, so I concluded that the triggering lever wasn’t sensitive enough. The big strong lever for catching the mouse was held by a second lever, which in turn was held by a third triggering lever that held the cheese.

I figured out that the purpose of the second lever was to reduce the force at the triggering lever. But the problem was that the triggering force was not reduced enough. So I built a mouse trap with more levers. As best as I can recall, the improved design was something like this:

A triggering lever made of a length of horse-hair held a stouter lever made of a broom-straw, which held a lever made of a tooth-pick, which held a lever made of a Popsicle stick, which held the strong capturing lever. The horse-hair didn’t need to hold the cheese, because the mouse’s whiskers would spring the trap if he just got close enough to sniff the cheese.

To test the trap, I set it up on the stairs that went from the kitchen up to the boys’ bedroom. (My three brothers and I shared one big bedroom.)

Now you must understand that one could not tip-toe up these stairs without most of the steps creaking. (This was advantageous to us boys when our parents could hear mischievous noise coming from the bedroom, and one of them tried to sneak up the stairs to find out who was doing what. But that’s another story.) But actually you could sneak up the stairs noiselessly if you knew the secret sequence: step over the first three steps, landing on the far left side of the fourth step, then go to the far right of the sixth step. etc.

Because the trap was essentially a vibration sensor, I thought that by setting it up near the top of the stairs, one of my brothers would walk up the stairs, would creak a step near the trap, and then be surprised by the trap snapping.

So I set up the mouse trap on the stairs – easy to say, but tedious to do. First, pull back the big spring lever, then get the Popsicle stick to hold it down, then set the tooth-pick to hold the Popsicle stick, then set the broom-straw to hold the tooth-pick, then set the horse-hair to hold the broom-straw. The process got more and more delicate.

That done, I next had to retreat, navigating the secret sequence in reverse. I tip-toed down nearly to the bottom when I miscalculated, a step creaked, and ten steps above me, the trap snapped shut.

That was the end of the experiment. I concluded that the trap was a bit too sensitive.

Tuesday, July 26, 2005

Communication

I've been a designer of communications systems for 43 years (now retired), and because these are so complex, it takes dozens of people to design something like a military radio, and hundreds of people for something like GPS. And my company has several divisions across the US, and deals with many different government agencies. So along the way, I've learned something of the art of personal communication while designing electronic communications systems.

In engineering work, there are a lot of specialties -- different people have different areas of expertise. For any project, a variety of specialties are needed, and they need to communicate and cooperate to fulfil all the needs of the project. There were situations where I had longer and broader experience than others on the project, but nonetheless, they had more expertise than I in certain important areas. So I showed respect for their expertise and they showed respect for mine.

Take for example the Phase Meter invention that I mentioned in my post "Invention or Discovery". The performance of the phase meter was predicted by simulations and 'paper' analysis -- no actual phase meter was built. So at some point, my boss asked me to build and test a prototype model, with the help of others. Part of the design was hardware, detailed by two engineers in Ft. Wayne, Indiana. Another part of the design was software, detailed by two programmers in San Diego, California. And I guided them, providing data from my simulations, in Clifton, New Jersey (all ITT locations). I didn't know any of the others beforehand, except John Petzinger (co-inventor), but communicated mostly by email, and occasionally by telephone. I saw some of them face to face when we were finally ready to put it all together and test it. But it was a success, proving the simulations to be correct.

Knowing that people tend to distrust strangers, I showed appreciation for their work at every opportunity, respect and thanks for their ideas, and honest praise (but not overdone. or it wouldn't sound sincere) when they were successful. Then whenever it became necessary for me to criticize or point out errors, it was not taken personally, but accepted as necessary to make the project a success. And I was careful to admit my own errors when that happened, and to thank them for finding them. After a while, I sensed a friendly tone in their e-mails, and sensed that they were not afraid to ask for help when needed, nor embarrassed to admit that they didn't understand something. Such barriers to communication can seriously hurt a project, because full cooperation and complete and accurate knowledge is important when a project is full of many complex details.

On another project, I first made the acquaintance of an engineer by email, and my initial impression was that he was careless or misinformed. However, it turned out that he was quite careful and knowledgable, but awkward expressing himself in writing.

I recall two cases where another engineer did something dumb and had a bad attitude, although most of the time people were intelligent and civil. In the first case, the engineer connected some data paths so that sometimes the data was reversed. It was like making a dictionary where sometimes the words are spelled backwards. ('Provide' is listed near 'edition' because it is spelled 'edivorp'.) When the error was pointed out to him, he insisted that nothing was wrong, and refused to change the connections. Soon afterward, he was fired.

Several years later, I wrote a specification for a digital radio design, and another engineer working miles away decided to ignore the specification. The specified data sequence was not compatible with test equipment that he wanted to use, making it inconvenient for him to test the radio. So he changed the design to fit the test equipment, rather than adapt the test equipment to fit the design. Again, it was improper data reversal, and refusal to correct the design. The design needed to be as specified to be compatible with another radio.

He didn't work directly for me, so I couldn't make him change it. I had to explain the situation to my boss, who talked to his boss, who made him change it. But I still had to work with him (over the phone), and I knew he wasn't likely to cooperate if I called him a jerk (although he was), so I treated him like a gentleman, in spite of his grumblings, so the job could get done.

Sunday, July 24, 2005

Invention or Discovery?

I think most people think an invention is entirely a 'bright idea' or a 'stroke of genius'; but actually, inventions are generally partly an intuitive idea and partly discovery -- at least that is what I have observed with my inventions. That is, there is a part that is understood, and a part that is not understood, at least initially. The idea has to be tried and tested to discover what happens, and if the desired result is achieved. When success is achieved, the inventor can't say "I told you so", but only "I was hoping it would work." After some experimentation and analysis, the unknown part may be understood; but sometimes it remains mysterious, even to the inventor.

For example, in my first inventions, previously described on this blog, there was a square-root relationship that was measured, but never fully explained.

Sometimes the results go far beyond what is expected, so that the inventor is just as amazed as any one else. I want to tell you about an invention like that. This invention, called a Phase Meter, aims to improve the performance of the Global Positioning System (GPS) , which allows GPS users to precisely locate themselves anywhere in the world.

The GPS satellites carry atomic clocks for very precise time-keeping. They are called 'atomic' because the timing is based on the vibration of atoms, free from friction and other flaws that spoil the precision of other clocks. Atomic clocks are so accurate that scientists have been able to observe the slowing of earth's rotation, so that one year is one second longer than another. (Official time standards now have leap seconds.) Each GPS satellite has three or four atomic clocks; some are based on the vibration of cesium atoms, and some use rubidium atoms.

The timing signals of a GPS satellite are based on a 10.23 Mhz clock, that is, 10,230,000 'ticks' per second. The second, of course, is 1/60th of a minute, which is 1/60th of a hour, which is 1/24th of a day, which is based on the rotation of the earth. But the timing of an atomic clock, based on the vibration of atoms, has no natural relationship to the rotation of the earth. The output of a GPS rubidium atomic clock is about 13.401,343,936 Mhz, and 13.400,337,86 for a cesium atomic clock.

The GPS electronics needs to continually adjust its 10.23 Mhz clock, guided by the more accurate 13.40.. Mhz atomic clock output. The GPS circuits count how many cycles of the atomic clock output occur during 1.5 seconds as measured by the 10.23 Mhz clock, but that doesn't measure any fraction of a cycle left after counting whole cycles. To get the accuracy needed, the fraction of a cycle needs to be measured. That's about as awkward as trying to adjust a yardstick, marked off in inches, by using a more accurate meter-stick, marked off in centimeters, with error less that the space between the ruler marks.

The clock signals, when graphed, look like this:

Each signal snaps up and down, between 'one' (high) and 'zero' (low), but with different time-scales. There doesn't seem to be any easy way to compare one with the other, to see if one clock is too fast or too slow, as measured by the other. Previous attempts to do this used faster clocks, which was awkward and expensive, and not accurate enough.

One day, I wondered what would happen if one clock was 'sampled' by the other. That is, whenever the bottom clock goes 'up', we look at the top one to see if it is 1 (up) or 0 (down). Doing that for the graph above, we get the sequence 1 ? 0 1 1 0 ? 1, where ? indicates a 'close call'. So far, this sequence of 'clock samples' doesn't seem to make any sense. Is there something we can do to make some sense of this sequence of samples?

Suppose we approximate the ratio of the two clock rates (time scales) by a ratio of integers. For example, 23 cycles of the 10.23 Mhz clock are nearly equal to 36 cycles of the 13.4 Mhz clock. I thought that perhaps the following sequence might unravel the sequence of samples:

13 = the remainder when 36 is divided by 23
3 = the remainder when 36 x 2 is divided by 23
16 = the remainder when 36 x 3 is divided by 23
6 = the remainder when 36 x 4 is divided by 23
etc.

The sequence can be obtained by adding 36 to the previous number, then subtracting 23 as often as needed to reduce the value to less than 23. This process generates the following repeating sequence:

13, 3, 16, 6, 19, 9, 22, 12, 2, 15, 5, 18, 8, 21, 11, 1, 14, 4, 17, 7, 20, 10, 0...

The sequence is also a permutation, because all the integers from 0 to 22 appear exactly once each, but in a scrambled (permuted) order.

I tried the idea of using this permutation sequence to permute (scramble) the sequence of clock samples. Think of a circle labeled with the numbers 0 through 22, something like the way a wall clock is labeled with the numbers 1 through 12. We generate the permutation sequence at the same time as we generate the sequence of clock samples, and we use the permutation numbers to place the clock samples on the circle. When I first tried this, I saw a sequence of samples around the circle that looked something like this:

0000000?1111111111?0000

-- where the ? marks 'close call' samples. WOW! The sequence no longer looks random! The permutation has actually unscrambled the samples into a sensible sequence! It actually looks like one cycle of a clock signal, as illustrated here:

0000000?1111111111?0000
' ' ' ' __________
_______/ . . . . .\____

Further experiments showed that this unscrambled sequence actually gives a picture of how one clock aligns with one cycle of the other at the beginning and end of the sampling process. If one of the clocks goes faster or slower, the 'picture' shifts to the left or right.

The next step of the inventing process was to figure out a way to measure the position of the 'up' and 'down' in the 'picture' generated by the unscrambled sequence. I worked out two different methods of doing this, which led to two different patents. A fellow engineer and Christian brother, John Petzinger, helped me with the second method, so he is listed as co-inventor on the second patent.

I have illustrated the principles of the invention using the integers 23 and 36. But more accurate measurements are possible with larger integers that better approximate the clock ratio. I wrote a computer program to simulate the phase meter invention, to evaluate its performance when the clocks are compared for about one second, and this analysis predicted that the clocks could be compared with an error of only one picosecond.

"What's a picosecond?" you may ask. A picosecond is one-thousandth of a nanosecond, which is one-thousandth of a microsecond, which is one-thousandth of a millisecond, which is one-thousandth of a second. That is, a picosecond is one millionth of one millionth of a second. If a second were the distance from New York to Los Angelos, then a picosecond would be the thickness of a hair.

Going back to the analogy of comparing a yard-stick to a meter-stick, it would be like measuring the difference with an error of a hair's-breadth, even though the spacings of the 'tick'-marks on the rulers (one inch on the yard-stick and one centimeter on the meter-stick) are not nearly that small. Even the inventor is amazed.

Monday, July 11, 2005

The Development of Information Processing

Mankind has always communicated, and earlier than many admit, by written language. But the invention of the printing press launched a major change in the spread of knowledge, because it was so much more efficient than hand-copied books and traveling teachers and story-tellers. More recently, the Internet has accelerated the spread of knowledge more than ever.

But we have discovered how to do much more than simply reproduce and distribute information efficiently. Perhaps it began when clockmakers figured out how to put short and long notches on a wheel to control the chiming of a clock. Or when the player piano was invented, where holes on a roll of paper control the sequence and timing of the notes played. Other machinery was made to robotically play drums, violins, horns, and other instruments. All these machines translated recorded information into sound. Then the phonograph was invented, which translated sound into recorded information, and afterward translated it back to sound as often as desired. Then came the telephone, which translated sound to an electrical form that could be transported over long distances without recording and playback.

In some of these examples, you can say that the recorded information was translated into mechanical action. For example, the player piano roll controlled the striking of the piano keys. Perhaps this was the inspiration for machines that automated the weaving of tapestry designs -- punched holes controlled whether threads were lifted above or dropped below the path of the shuttle of the loom. Later, punched paper tape was used to control machines that could drill any set of holes in a part to be manufactured, or robotically apply any set of rotary tools to a manufacturing task. These all translate recorded information into a sequence of actions.

Other people were interested in just processing the information, that is, calculating. Astronomers and other scientists relied on long, tedious, and error-prone calculations. Much of the general-purpose calculations could be prepared beforehand and stockpiled (like prepared foods) -- for example, a table of square roots, or trigonometric functions. So people created adding (and subtracting) machines, multiplying (and dividing) machines, and 'difference engines' to generate and use these tables. These machines translated information (such as "30x31") into a useful equivalent of the information (such as 930). The methodology was mechanical actions (for example, rotating digit wheels), but the overall function was information in and equivalent (derived) information out.

So far, all of the types of machines mentioned use a single sequence of information, except when the operator intervenes by choosing the sequence -- choosing the song to be played, or the hole pattern to be drilled, or the formula to be calculated.

Now, what if the machine could control its own sequence? For example, the music player could play the verse, then chorus, change key, play the verse and chorus again, increase the volume and repeat the chorus. The drilling machine could drill 30 boards with pattern A, then 50 boards with pattern B. Or the calculating machine could compute formula A, and if the result is positive, compute formula B, else formula C. And repeat this for another set of data, and another, until 50 sets of data have been processed.

The concept of sequence control, or self-control, or the machine talking to itself, so to speak -- thrust information processing into the computer age. First attempts where mechanical, then vacuum tubes, then transistors. That's the stage where I first got involved. You could see the transistors back then, because they weren't miniaturized yet. Today, millions of transistors are packed into one small package.

It was obvious that many of the things these machines were designed to do were similar to human activities, so words like read, write, memory, and decision were used to describe machine functions. We knew we were trying to emulate human thinking, difficult as it was, and still is.

When computers were developed, the machines became more general-purpose. That's because the machines now had two kinds of information: the information being processed (data), and the information that controlled the processing (software). The visible machine (the hardware) could do almost any processing, given suitable software. Give it word processing software, and the machine becomes a word processor. Give it accounting software, and it becomes an accounting processor. Give it telephone control software and hide it inside a telephone, and you have a 'smart' telephone. And don't tell the consumer that there's a computer in his telephone, lest he be afraid to use it.

At some point along the way, the designers realized that the information that they were putting into these machines was actually language. It was strange languages designed to best fit the design of the machines, but still, it was language. It was difficult and error-prone to write machine language, so more human-like languages were designed that could be translated (by computer, of course) into machine language. A simple example of 'programming language':

X:= 0; repeat X:= X+1 until X > 9;

Translation to real English: Set the data called 'X' to zero, then keep adding one to it until it is greater than nine.

This programming language gets translated into machine language for use by the computer hardware. I won't show it to you -- trust me, it just looks like gibberish.
___________________

Contemporary with the computer scientists, scientists of biology were discovering DNA, and RNA, and began unraveling the mysteries of the machinery of life. The DNA, they found, was another kind of machine language. Whereas our computers use an alphabet of 0 and 1 (zero and one), the DNA uses an alphabet of A, G, C, and T, which name the acids Adenine, Guanine, Cytosine, and Thymine which are the symbolic parts of a DNA molecule. These are arranged in a sequence, just as are the symbols of human and computer languages. Some parts of the sequence describe how to make proteins, and some parts function like punctuation. Some parts haven't been deciphered yet; some have assumed that these are useless junk, but others are beginning to understand uses for the presumed 'junk DNA'.

Those who ascribe to the faith called Evolution have convinced themselves that all this complex machinery, which we have only begun to decipher, came into existence through random processes. They would like to believe that somehow information can arise out of randomness, but we who design computers know better.

Making information out of nothing is like the pseudoscience of perpetual-motion machines. These were proven to be impossible, because energy cannot be perfectly stored or transmitted. Always a little bit leaks out of the machine -- typically friction creating heat -- lost energy. In computer science and information theory, we know that likewise, information cannot be perfectly stored or transmitted. Always a little bit (or more) of error creeps in, and the data erodes. That's why hard drives have CRC (Cyclic Redundancy Check) codes to detect errors, and we backup our data and software with extra copies. That's why our bodies have redundant copies of the DNA.

Yes, we see DNA errors (genetic defects), and we see adaptive adjustments to the 'gene pool', but nobody has ever observed information being created out of nothing. Like any other information, Somebody created it. That's a subject that we will pursue further, later.

Sunday, July 10, 2005

The Start of System Engineering

In my early years working for ITT, we designed computers and other related hardware, but not software.  The software for our computers was written by other companies.  Then the day came that ITT management decided that we needed our own programmers (software writers).  So they hired a bunch of programmers, built a bunch of new offices, and created a Software Department.

It seemed strange to me, but these new people kept to themselves -- they were fellow employees, working on the same project, but strangers.  They sat in one area of the lunchroom, and we sat in another area.  It seemed that the hardware engineers thought that the programmers were wizards of the mysterious realm of software, and the programmers thought that the engineers were wizards of the mysterious realm of hardware.  It was like we spoke two different languages.

It didn't seem right to me, so on one lunch hour, I introduced myself to one of the strangers, and started fishing for some common ground that we might be able to talk about.  I mentioned a 'register' (hardware holding a small piece of data) that I knew held data that the programmers used.  He told me that the programmers thought the sequence of the data was annoying, because it made their work more difficult.  But, he added, "I guess the engineers must have a good reason for doing it that way."  I told him, no, we didn't have any reason for arranging the data in that sequence.  One sequence was as good as any other to us, so we just chose an arbitrary sequence.  But if we only knew what the programmers preferred, we would happily arrange the data any way they wanted.

After lunch, I told my boss about my conversation.  My story made it clear that if the engineers and programmers had an opportunity to discuss common issues, we might be able to help each other do our jobs better.

A week later, my boss and his boss called all the engineers to a meeting.  A new department was going to be formed, it was announced.  The new System Engineering Department would oversee the technical issues common to both hardware and software, to ensure that both would work together smoothly.  And I and my boss would work in the new department.  That was the beginning of 'System Engineering' at ITT.

Friday, July 08, 2005

Engineering Precursors

As I look back at my youth, I am amused at the little things I did that sparked my interest in engineering, and even gave me some insights into the workings of computers -- even though I hadn't the foggiest notion what a computer was back then. Each time I learned a new physical principle, it fascinated me, and I just had to explore how it could be used.

At one point, I learned how to make an electromagnet. You could wrap thinly-insulated wire many times around a big nail, connect the wire to a battery and the big nail turned into a magnet and could pick up little nails. Disconnect the battery, and the little nails would fall to the floor. I bought the wire and battery, and demonstrated the magic to my younger brothers.

Then I learned about the telegraph and the Morse code, and the history of how these were used to send messages over great distances. Now I was cutting up 'tin' cans to get strips of steel. I mounted an electromagnet and a strip of steel on a block of wood, so that when the electromagnet was energized, the strip would click down on the electromagnet. Another steel strip, wood block, and nails was used to make a switch to turn the electromagnet on and off.

.---- switch -------------------------------- electromagnet
'---- battery ------------------------------- and click-strip

The switch and battery would be 50 feet away from the electromagnet, connected by a pair of wires. When you tapped on the switch, the electromagnet would click 50 feet away. Now all I had to do is teach my younger brothers Morse code, and we could have loads of fun. Well, they didn't think that memorizing a code was fun, so I made a chart for them. That was a little easier, but still they resisted. It was hard to get a consistent rhythm, else a 'dit' and 'dah' could be confused. So I modified the telegraph with a double switch, three connecting wires, and two electromagnets, so that a 'dit' and 'dah' were signalled by separate electromagnets. Years later, I learned that some historic telegraphs were actually constructed in a similar manner.

Then I learned about 'relays' -- the metal strip pulled by the electromagnet could function as a switch. Now, turning on a switch here could turn on a switch over there. Or, you could make it so that turning on the first switch would turn off the second switch, and vice versa. That opened up a bunch of new possibilites.

What if you connected the relay so that when it was on, it would turn itself off, and when it was off, it would turn itself on? The cycle of cause-and-effect would repeat itself, wouldn't it? Well, I built one to see what would happen, and sure enough, I had a buzzer -- the relay couldn't decide whether it should be on or off, so it turned on and off, on and off, as fast as it could.

What if you connected two relays so that relay 1 would try to do the same as relay 2 (on if on, and off if off), but relay 2 would try to do the opposite of relay 1 (off if on, and on if off)?
Then the relays would go through a cycle like this:
relay1 .. relay2
off . . . . . off
off . . . . . on
on . . . . . on
on . . . . . off
off . . . . . off
off . . . . . on
on . . . . . on
on . . . . . off
... etc.

That made an even louder buzz! (With a slower cycle, the relays had more time to turn fully on and fully off.) I was having so much fun that I had to buy more batteries.

Next, I learned about serial and parallel connection of switches. If switches were connected in series, like this --

======== switch1 ----- switch2 ----- switch3 ========

-- then the wire pathway was on if switch1 AND switch2 AND switch3 were on. And if switches were connected in parallel, like this --

=======,--- switch1 ---,
. . . . . . |--- switch2 ---|
. . . . . . '--- switch3 ----'======

-- then the wire pathway was on if switch1 OR switch2 OR switch3 were on. Since relays could be substituted for the switches, endless possibilities lay before me. I struggled to construct interesting and useful machinery with these ideas, but I was overwhelmed. My trial-and-error methods didn't work because there were too many possiblities.

I didn't know it at the time, but I was learning some of the principles of computer logic. But I didn't even know what a computer was, and I didn't have all the tools. Later, in college, I learned about Boolean logic, Karnough maps, DeMorgan's theorem, Venn diagrams -- tools that a designer of computer logic needs. And when I got out of college and into ITT, the first thing I did was to design part of a computer. But the switches and relays were now replaced by transistors.

Tuesday, July 05, 2005

A REALLY Personal Computer

Years before the PC (the so-called Personal Computer) became widely known to households across America, there were a few of us that had really personal computers. In those days, we predicted that someday, computers would be sold like radios and toasters. We called this dream the appliance computer, because it would be just another household appliance. Alas, when the appliance computer arrived, the marketeers called it a personal computer, but it wasn't nearly as personal as what we had before that.

When I began my engineering career in 1959, the first job I had was designing part of a computer. Computers were a roomful of refrigerator-sized cabinets back then. Later, I designed entire computers, and the software that was used to make software. As computers became smaller, I often yearned to have my own. I once designed one that was so small I might afford to build it, but it was really a toy that wouldn't be very practical. Finally, the technology advanced to the point where a few companies made kits that allowed people with the right skills to build a computer that they could afford.

I had already built a few radio receivers and audio amplifiers from kits, so I knew I could do it. The kits included the design drawings, and I also had all of the details for all of the software. So with full knowledge of every detail of the hardware and software, I could customize the design to my liking. For various reasons, I made modifications to both hardware and software, so it was as personal as you could get.

The picture on the left shows the main computer box and its contents: the power supply, one board for the computer chip and essentials, another board for memory (RAM) , and a small board to interface to the keyboard and monitor. There was room to add more memory boards and interface boards.


I also built the keyboard and monitor shown on the left here. All of those keys on the keyboard are actually switches mounted on a circuit board.

The monitor was built with a television tube, and the circuitry handled only text -- no graphics. It could display 25 lines of text 40 characters long. I modified the design to double the display memory. This didn't display twice as much text at once. Instead I put a switch in front that selected which memory to use.


There was no hard drive, and no floppies. The only permanent (power-off) memory was a pair of ordinary audio cassette recorders. The box shown on the left here, also built from a kit, interfaced the computer to the audio recorders. The data rate was only 300 bits per second, so when it was time to load or store a program or data, you started it, took a coffee break, and hoped that it went OK. I modified this design, too.

When I finally made the transition to a new appliance computer (a.k.a. "PC"), it seemed strange to be using a computer that held hardware and software secrets. Something like driving a car that you're not allowed to look under the hood.

And for a few years, the media didn't dare mention words like "floppy", "software", etc, assuming that this was some realm of specialized knowledge, like Markov Analysis, that most people would have no idea about. Then they suddenly realized that there were many households with PCs, and it was OK to mention them to the general public.

Monday, July 04, 2005

My First Patents

Some people ask me about my inventions. So here's the story of my first two inventions, at least the first two to be patented. I'm lumping two together, because the second invention was an improvement on the first one, and because the second invention was the first to be patented, and vice versa. First, a little historic background..

The U.S. Army started using digital communication long before the commercial world, because only digital communication could be safely encrypted. A voice signal was sampled 8000 times per second, and each sample converted into 8 bits, converting the voice into a stream of 64000 bits per second. To minimize the number of radios or cables, 12 (or more) voice signals would typically be multiplexed (merged) into one signal, so that one radio or cable could carry 12 voice signals at once. The company I worked for (ITT) made radios, cable modems, and multiplexers for the Army.

A 12-channel (12 voices) multiplexer would arrange the data in 'frames', at 8000 frames per second. Since the frame rate equaled the sampling rate, each frame contained one sample from each voice channel (signal) -- 12 samples in all, 8 bits per sample, or 96 bits per frame. So a received stream of bits could be divided into 96-bit frames, the frames divided into 8-bit samples, and the samples sent to separate circuits that ultimately reached 12 different soldiers, one of which was the communications operator.

If a radio or cable modem was turned on, or had recovered from an outage, it wouldn't generally be starting at the beginning of the frame. The circuits needed a way to discover where the frame began, else those 12 soldiers might all get the wrong bits, and that would be very confusing. So they 'stole' the last bit of the frame, which was the last bit of the sample for the last channel, for a marker (called a 'synch bit') to identify the 'edge' of the frame. The 'synch bit' was zero and one on alternate frames -- an easy pattern to recognize. That left only 7 bits for each sample used by the last channel, the one used by the communications operator, degrading his voice quality, so he had to say "What was that again?" more often than the other soldiers.

A 'frame synchronization' circuit was used to find the synch bits, correcting the multiplexer's timing so that it would start at the beginning of each frame. From an arbitrary start, it would count off every 96th bit and check if it looked like a synch bit, meaning that it matched a 10101010... pattern. If it matched, it would check one frame later to verify that it wasn't an 'accidental' match; but if it didn't match, it would slip the timing by counting 97 bits (instead of 96) to the next potential synch bit.

There was a need to make the synchronization procedure faster so that communication could get started faster, and restarted faster when there was an outage. This would also make the communication less vulnerable to enemy jammers.

My first invention made the frame synchronization twice as fast, at a cost of about one more 'flipflop' in the circuit. The second invention made it even faster, using more flipflops. After many experiments, I found that the second speed-up was proportional to the square root of the number of additional flipflops. So the cost/benefits were:

1 flipflop -- 2 times faster
1+4 flipflops -- 2x2 times faster
1+9 flipflops -- 2x3 times faster
1+16 flipflops -- 2x4 times faster
1+25 flipflops -- 2x5 times faster (5 = square root of 25)
etc.

I thought the square root relationship was strange and mysterious. It illustrates the fact that inventions are generally half bright-idea and half discovery.

The first invention allowed the next bit to be examined after a mismatch -- a delay of 1 bit rather than 97 bits. The second invention anticipated the timing slips, examining the next several bits before they become the current candidate for synch bit. Later inventions dealt with the problem of noise (bit errors). These inventions helped ITT get more contracts.

Patent 3,597,539 - issued 8-3-71
Patent 3,594,502 - issued 7-20-71 - links to USPTO

Later, I was asked to sign papers when rights to use these patents were sold to various countries: Brazil, Canada, Denmark, France, Netherlands, India, Italy, Mexico, Sweden, Russia, South Africa, and Belgium. It seemed strange to sign papers in languages that I couldn't read, although there were English copies. The ones for Russia had the most paper and the most signatures. They even double-notarized some of the documents -- they didn't trust us! Years later, they must have changed the procedures, because they stopped asking me to sign such documents. I didn't really have a choice, anyway.

I guess I should esplain that when I joined ITT, I had to sign a document giving them full rights to any inventions arising from my work for them. So that's why I didn't have any choice about signing the papers. The only time ITT didn't get full rights was when the Contracts Department goofed, and one of my inventions became the possession of the U.S. Air Force.

The patent protection rights only last 17 years, so these patents have been in the public domain since 1988. And you can't get full-text copies from the US Patent Office web site, because their database only has patents issued since 1976.

Monday, June 27, 2005

How I Know That God Wanted Me to be an Engineer

When I was a child, I wondered what I would be when I grew up. As a young Christian, it seemed that being a pastor would be the highest aspiration a boy could have, and for a while I assumed that was the right choice. But I was always trying to invent things, and sometimes managed to complete something that actually worked. I spent many hours making drawings of things, and when Dad got home, I often knelt on the floor alongside his chair explaining my drawings to him. My most ambitious project was a mechanical calendar that would be attached below a wall clock. Once a day, at midnight, it would highlight the next day, and at the end of the month, it would automatically move the numbers to new appropriate positions. I designed machinery for most of the functions, but the design was never completed.

So when I got to high school, my parents encouraged me to plan on a college education with an engineering emphasis. I had three brothers, 1, 3, and 4 years younger, who I knew would also be straining the family budget for college funds, so I felt responsible for getting summer jobs to earn as much money myself as I could. Every summer I found a different job, sometimes more than one if the job didn't last all summer long.

When I graduated from high school, I was set to enroll in the Engineering School of NYU, and I started searching for a summer job again. I would pack a lunch, get on my bike and go from one business to another asking for a job -- any job -- I was willing to do anything. I did this eight hours a day, and after a week of this, I became very discouraged, and it finally dawned on me that I should have been praying about it. I also began to doubt whether I had made the right career choice. Perhaps I was being selfish to pursue what I loved rather than what I used to think was God's best choice -- being a pastor or a missionary.

I began by apologizing to God for not praying earlier. And I explained that I was worried that the longer it took to find a job, less of the summer would be left for working the job. Then I began to agonize about the career choice. Was this failure to find a job God's way of telling me that I was heading down the wrong path?

God, I thought you wanted me to be an engineer. Why else would you give me these creative urges, and this curiosity about math and physics? Somebody needs to support the pastors and missionaries with more lucrative jobs, don't they?

I felt that I needed an answer SOON, and I didn't want to waver -- I wanted to be CERTAIN that I was doing what God wanted, and would bless. I thought about Gideon and his fleece (Judges 6:36-40). God made the fleece wet with dew and the ground dry to indicate his will, and the next night made the fleece dry and the ground wet to indicate his will again. Could I DARE do something like that with God? But who was I to give God an ultimatum? Yet Gideon did it TWICE, just to confirm an answer that he had ALREADY gotten twice (v. 14-16) with a previous sign from God (v. 17-21). And Gideon was not scolded for his boldness. God had answered my prayers before -- why not now, for this important decision?

So, apologizing for my boldness, I told God that having spent a week in my own strength, without prayer and without success, I would give Him one week more to find me a job. I would go looking as before, and if I got a job in a week or less, I would know that he wanted me to go to NYU and learn to be an engineer. If not, I would know that it was the wrong choice, and I would need to find out what else God had in mind.

One week. To be absolutely sure, one week exactly. I opened my eyes and looked at my watch. It was 6:00 pm on Saturday. On the dot. And I didn't tell anyone about my deal with God. It was just between me and God.

I packed a lunch and went out on my bike every day as before. Strangely, after that tense and agonizing prayer, by the end of the week I had nearly forgotten about the prayer -- at least it wasn't always on my mind.

The next Saturday, I got home a little before supper. Dad said it would be nice to have fresh corn on the cob, and asked me to come with him to the roadside stand across the state line where we often went for fresh-from-the-farm produce. I said "Yes", and soon we were there. After we bought our corn, Dad explained that I was looking for a job, and asked if they needed help on the farm. The man took one look at me, and said "Yes, I could use him." And to me, he added "Come here Monday morning at eight."

That completely took me by surprise. Oh, yes, the prayer! I looked at my watch. It was 6:00 pm on Saturday. On the dot.

God answered my prayer! Not only that, he answered it at the last minute to assure me that He was in absolute TOTAL CONTROL. Not only that, he provided the job with absolutely no reliance on any of my effort. I didn't speak a word. My Dad did all the talking.

This was the miracle job that I mentioned in my post "My Evel Knievel Bike Stunt."


That prayer -- that deal with God -- was such a strong anchor during the tough times at NYU. It was a tough grind. I was told that a third of the students didn't make it through the freshmen year, and another third dropped out before graduation. It's one thing to have an interest in engineering, and quite another to have talent. I had some talent, but I wasn't a genius. There were times when it seemed that I was in over my head, but whenever I wondered if I would get though it, I would remember my deal with God, and His amazing answer, and I just KNEW that He would get me through it.

And He did. I got a job with ITT within a month of graduating, and worked there for 43 years. I tried to work "as unto the Lord" and share my faith with others. I prayed for help with my engineering challenges, and He blessed my work. I was credited with 45 patents, but I give the credit to God. Most of the work was for military communications and security, and I prayed that God would use these things to keep our country safe from its enemies.

I never felt guilty for having a secular job, and I knew that my job was to help support the pastors and missionaries. Of my three brothers and I, two of us became engineers and two became pastors. One of them later became a missionary.