Netrino

Netrino

Home

Job Listings

Netrino is hiring programmers and electrical engineers in California and Maryland. See our job listings.
 

Embedded Systems Glossary: G

geartooth Hall effect sensor

n. A Hall effect sensor and a magnet packaged together for easy use in detecting the rotation of a gear. As each geartooth passes by the sensor, a pulse is output. A counter can be connected to count these pulses and software can then determine the speed of the gear's rotation.

general-purpose computer

n. A combination of computer hardware and software that serves as a general-purpose computing platform. PCs, Macs, and Unix workstations are the most popular modern examples. Contrast with embedded system. See also basic input/output system.

general-purpose I/O

n. Customizable input/output pins on a microcontroller. Abbreviated GPIO. By wiring the hardware appropriately and configuring the GPIO port in software, one pin can be used as input to read a switch, another as an output to control a status LED, and a pair to serve as clock and data for a serial EEPROM.

glitch

n. An unwanted, spurious logic pulse of very short duration. Any unwanted, erratic, and generally nonreproducible behavior of a system is termed a glitch. Most result from poor timing or bad combinatorial design.

A glitch is also the standard excuse for a single irreproducible failure. Experienced developers know that the phrase, "It must've just been a glitch," really means, "I have no idea what just happened, but maybe if I ignore it, the problem will go away." Unfortunately, it seldom does.

glue logic

n. The address decoding and other messy circuitry (or programmable logic) that ties together a system. It's called glue logic because it's what holds the entire system together.

GNU tools

n. A broad generic name for the popular GNU compiler (gcc), debugger (gdb), binutils, and related software development tools.

Gray code

N. Any of several possible mappings of the integers from 0 to 2n-1 to a set of n-bit binary values such that only 1 bit differs between each successive binary value. The mapping that's typically used is formally known as binary reflected Gray code. Generating a set of that form involves starting with 0...000b and always flipping the rightmost bit that will give a new value.

Applications abound. Consider a shaft encoder with a 4-bit parallel output. Encoders use brushes or optical techniques to report position; these are mechanical and, therefore, imperfect implementations. An encoder that outputs normal binary, if positioned between 3 (0011b) and 4 (0100b), might dither with 3 bits changing. The processor might read (serially) 0011b (3), 0100b (4), or 0111b (7)—the latter a hugely incorrect value. If a Gray code is used, the data will dither between 0010b (3) and 0110b (4); the only possible values seen by the computer are those two, both of which are off by one from each other, and either of which is a reasonable approximation of the position.

EXAMPLE: n = 3: { 000b, 001b, 011b, 010b, 110b, 111b, 101b, 100b }

HISTORY: Named for Bell Labs engineer Frank Gray, who developed a binary reflected code for use in communication and later patented their use for shaft encoders in 1953, though such codes were known to others in the late 1800s.

 

Course Calendar

Fall 2008 training courses now available for registration. Check out the schedule.

 

Embedded C Quiz

Test your embedded software skills in our online quiz.

Test Your Skills

 

Newsletter Signup

Receive public course dates, how-to articles, and more. Learn more.

 

Glossary

Find definitions for technical terms in our Embedded Systems Glossary.

A B C D E
F G H I J
K L M N O
P Q R S T
U V W X Y
Z Symbols
 

Bookmark It

Bookmark this page or share it with a colleague.

 

Netrino® and The Embedded Systems Expertssm are trademarks of Netrino, LLC.
Website contents copyright © 1999-2008 by Netrino, LLC. All rights reserved.

Netrino, LLC • 9250 Bendix Road • Columbia, Maryland 21045 • 866.78.EMBED