Learn about the technologies behind the Internet with The TCP/IP Guide!
NOTE: Using robot software to mass-download the site degrades the server and is prohibited. See here for more.
Find The PC Guide helpful? Please consider a donation to The PC Guide Tip Jar. Visa/MC/Paypal accepted.
View over 750 of my fine art photos any time for free at DesktopScenes.com!

[ The PC Guide | Introduction to the PC | PC Fundamentals | Signaling, Clocks and Synchronous Data Transfer ]

Voltage Levels and Signaling

As explained in this introductory section, PCs are all about information: taking it as input, processing it and producing output. Information is represented within computers using binary, digital logic: ones and zeros. Each binary digit or bit represents one piece of information, where a bit being a "one" means a particular thing, and it being a "zero" means another.

Of course, computers are electronic devices, and as such, they deal in electrical terms. While it is useful for us to think of data bits as being ones and zeros, this is in fact an abstraction. Within the PC's circuits, a one and a zero must be represented in some sort of physical manner. In fact, different components represent bits in totally different ways. On a hard disk, ones and zeros are encoded magnetically; on an optical disk, by a sequence of pits and lands. And within the core operating circuitry of the PC, ones and zeros are represented by voltage levels.

Voltage represents an electrical potential; the ability to do work (see this section on power basics if you want to understand voltage better). Within the PC's circuits, a "one" is generally represented as a positive voltage, while a "zero" is represented as a zero voltage. It doesn't really matter what the positive voltage is, as long as all the circuits agree on what to use, and as long as the positive voltage is sufficiently high that there's virtually no risk of a "one" being seen as a "zero" (or vice-versa). These voltages are used wherever data is being actively manipulated or transferred within the PC.

Data is not static; rather, it is dynamic, changing over time. As your computer works, it executes millions of instructions every second, and all during this time, a coordinated "ballet" of data is flowing around all of the circuits in the computer. Each component works with a number of different pieces of information, that each have a zero or one value at any given time. These are called signals. A signal can be any type of information: it can be data, or address information, or control information, and so on.

The hardware in the PC is designed to operate by looking for particular patterns in the different signals it uses, and then responding to them. For example, a memory chip may recognize a request to read a particular piece of data by looking for a particular value on a control line; when it senses that value, it looks at other signals for the address of the data to be read, and then responds by producing the requested data on a different set of signal lines.

Over time, the value of any signal will vary frequently between one and zero (except for ground and power signals, which are always zero or one, respectively). There are two different ways that a hardware device can respond to a signal:

  • Value (Level-Triggered) Activation: The device looks for a particular level on the signal, either a zero or a one. When it sees the appropriate level, it takes a particular action.
  • Transition (Edge-Triggered) Activation: The device does not look for the level of the signal at all, but rather the transition from one level to another. The transition from a zero to a one is called the rising edge, and the transition from one to zero the falling edge. In some cases a response will be triggered on only one or the other of these transitions while the other is ignored; in some cases a response will occur for both, either the same response or a different one for the rising edge and a different one for the falling edge.

A signal, of no particular consequence or pattern.
The value of this signal begins as zero, then goes to one for a while, back
to zero, then one, zero and then one again. The period when the signal is
zero is indicated by the blue color; one is magenta. Rising edges are
shown in green, and falling edges in red. Note that I am pretty sure
that within the PC's circuits, signals aren't nearly this colorful. :^)
(And more seriously, real signals in a PC are not this clean and "perfect".)

All signals within the PC have a name associated with them. For example, the third data line in an interface might be called "DATA2" (counting always starts with zero, remember!) For level-activated signals, a special notation is sometimes used. You may find a signal that has a solid line over the top of it, such as this: RESET. Since it's not easy to write that in regular text mode (that's an embedded graphic), you may instead see an approximation, which is the name of the signal preceded or followed by a dash or hyphen: /RESET, RESET/, -RESET or RESET- (or, rarely, something strange like a pound sign, "RESET#"). All of these notations represent a signal whose logic is inverted from the normal sense: the signal is considered "activated" or "true" when it is zero, and off when it is one. So this means that this RESET signal is normally a one; when it drops to zero a reset occurs. Such a signal is said to be active low or low active. Of course, a regular signal is active high or high active. A signal that changes from one to zero and back again very fast is called hyperactive. (OK, OK, I threw in that last one. ;^) )

Some actions within the PC, especially time-critical ones, are easier to have activated based on transitions and not levels. The reason is that transitions are often easier to detect, and more importantly, they happen quickly, which allows for synchronized activity within the PC. Levels are more often used for data and regular control signals, and transitions for clock signals.

Next: Clock Signals, Cycle Time and Frequency


Home  -  Search  -  Topics  -  Up

The PC Guide (http://www.PCGuide.com)
Site Version: 2.2.0 - Version Date: April 17, 2001
Copyright 1997-2004 Charles M. Kozierok. All Rights Reserved.

Not responsible for any loss resulting from the use of this site.
Please read the Site Guide before using this material.
Custom Search