Power-on self-test
Encyclopedia
Power-On Self-Test refers to routines run immediately after power is applied, by nearly all electronic devices. Perhaps the most widely-known usage pertains to computing devices (personal computers, PDAs, networking devices such as routers, switches, intrusion detection systems and other monitoring devices). Other devices include kitchen appliances, avionics, medical equipment, laboratory test equipment—all embedded devices. The routines are part of a device's pre-boot sequence. Once POST completes successfully, bootstrapping code is invoked.

POST includes routines to set an initial value for internal and output signals and to execute internal tests, as determined by the device manufacturer. These initial conditions are also referred to as the device's state. They may be stored in firmware or included as hardware, either as part of the design itself, or they may be part of semiconductor substrate either by virtue of being part of a device mask, or after being burned into a device such as a Programmable Logic Array
Programmable logic array
A programmable logic array is a kind of programmable logic device used to implement combinational logic circuits. The PLA has a set of programmable AND gate planes, which link to a set of programmable OR gate planes, which can then be conditionally complemented to produce an output...

 (PLA).

Test results may either be displayed on a panel that is part of the device, or output via bus to an external device. They may also be stored internally, or may exist only until the next power-down. In some cases, such as in aircraft and automobiles, only the fact that a failure occurred may be displayed (either visibly or to an on-board computer) but may also upload detail about the failure(s) when a diagnostic tool is connected.

POST protects the bootstrapped code from being interrupted by faulty hardware. Diagnostic information provided by a device, for example when connected to an engine analyzer, depends on the proper function of the device's internal components. In these cases, if the device is not capable of providing accurate information—which ensures that the device is safe to run—subsequent code (such as bootstrapping code) may not be permitted to run.

IBM-compatible PC POST

In IBM PC compatible
IBM PC compatible
IBM PC compatible computers are those generally similar to the original IBM PC, XT, and AT. Such computers used to be referred to as PC clones, or IBM clones since they almost exactly duplicated all the significant features of the PC architecture, facilitated by various manufacturers' ability to...

 computers, the main duties of POST are handled by the BIOS
BIOS
In IBM PC compatible computers, the basic input/output system , also known as the System BIOS or ROM BIOS , is a de facto standard defining a firmware interface....

, which may hand some of these duties to other programs designed to initialize very specific peripheral devices, notably for video and SCSI
SCSI
Small Computer System Interface is a set of standards for physically connecting and transferring data between computers and peripheral devices. The SCSI standards define commands, protocols, and electrical and optical interfaces. SCSI is most commonly used for hard disks and tape drives, but it...

 initialization. These other duty-specific programs are generally known collectively as option ROM
Option ROM
An Option ROM typically consists of firmware that is called by the system BIOS. For example, an adapter card that controls a boot device might contain firmware that is used to connect the device to the system once the Option ROM is loaded....

s or individually as the video BIOS
Video BIOS
Video BIOS is the BIOS of a graphics card in a computer.Much the way the system BIOS provides a set of functions that are used by software programs to access the system hardware, the video BIOS provides a set of video-related functions that are used by programs to access the video hardware...

, SCSI BIOS, etc.

The principal duties of the main BIOS during POST are as follows:
  • verify CPU registers
  • verify the integrity of the BIOS code itself
  • verify some basic components like DMA, timer, interrupt controller
  • find, size, and verify system main memory
  • initialize BIOS
  • discover, initialize, and catalog all system bus
    System bus
    A system bus is a single computer bus that connects the major components of a computer system. The technique was developed to reduce costs and improve modularity....

    es and devices
  • pass control to other specialized BIOSes (if and when required)
  • provide a user interface
    User interface
    The user interface, in the industrial design field of human–machine interaction, is the space where interaction between humans and machines occurs. The goal of interaction between a human and a machine at the user interface is effective operation and control of the machine, and feedback from the...

     for system's configuration
  • identify, organize, and select which devices are available for booting
  • construct whatever system environment that is required by the target operating system
    Operating system
    An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...



The BIOS begins its POST when the CPU is reset. The first memory location the CPU tries to execute is known as the reset vector
Reset vector
Reset vector is a computing term used to describe the default location a central processing unit will go to find the first instruction it will execute after a reset...

. In the case of a hard reboot, the northbridge
Northbridge (computing)
The northbridge has historically been one of the two chips in the core logic chipset on a PC motherboard, the other being the southbridge. Increasingly these functions have migrated to the CPU chip itself, beginning with memory and graphics controllers. For Intel Sandy Bridge and AMD Fusion...

 will direct this code fetch (request) to the BIOS located on the system flash memory
Flash memory
Flash memory is a non-volatile computer storage chip that can be electrically erased and reprogrammed. It was developed from EEPROM and must be erased in fairly large blocks before these can be rewritten with new data...

. For a warm boot, the BIOS will be located in the proper place in RAM
Random-access memory
Random access memory is a form of computer data storage. Today, it takes the form of integrated circuits that allow stored data to be accessed in any order with a worst case performance of constant time. Strictly speaking, modern types of DRAM are therefore not random access, as data is read in...

 and the northbridge will direct the reset vector call to the RAM.

During the POST flow of a contemporary BIOS, one of the first things a BIOS should do is determine the reason it is executing. For a cold boot, for example, it may need to execute all of its functionality. If, however, the system supports power saving or quick boot methods, the BIOS may be able to circumvent the standard POST device discovery, and simply program the devices from a preloaded system device table.

The POST flow for the PC has developed from a very simple, straightforward process to one that is complex and convoluted. During POST, the BIOS must integrate a plethora of competing, evolving, and even mutually exclusive standards and initiatives for the matrix of hardware and OSes the PC is expected to support, although at most only simple memory tests and the setup screen are displayed.

Progress and error reporting

The original IBM BIOS made POST diagnostic information available by outputting a number to I/O port 80 (a screen display was not possible with some failure modes). Both progress indication and error codes were generated; in the case of a failure which did not generate a code, the code of the last successful operation was available to aid in diagnosing the problem. Using a logic analyzer
Logic analyzer
A logic analyzer is an electronic instrument which displays signals in a digital circuit. A logic analyzer may convert the captured data into timing diagrams, protocol decodes, state machine traces, assembly language, or correlate assembly with source-level software.Presently, there are three...

 or a dedicated POST card, an interface card that shows port 80 output on a small display, a technician could determine the origin of the problem. Once an operating system is running on the computer the code displayed by such a board may become meaningless, since some OSes, e.g. Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

, use port 80 for I/O timing operations. The actual numeric codes for the possible stages and error conditions differ from one BIOS supplier to another. Codes for different BIOS versions from a single supplier may also vary, although many codes remain unchanged in different versions.

Later BIOSes used a sequence of beeps from the motherboard-attached loudspeaker (if present and working) to signal error codes. Some vendors developed proprietary variants or enhancements, such as MSI's D-Bracket. POST beep codes vary from manufacturer to manufacturer.

Information on numeric and beep codes is available from manufacturers of BIOSes and motherboards. There are websites which collect codes for many BIOSes.

Original IBM POST beep codes

Beeps Meaning
1 short beep Normal POST – system is OK
2 short beeps POST error – error code shown on screen
No beep Power supply, system board problem, disconnected CPU, or disconnected speaker,
Continuous beep Power supply, system board, or keyboard
Computer keyboard
In computing, a keyboard is a typewriter-style keyboard, which uses an arrangement of buttons or keys, to act as mechanical levers or electronic switches...

 problem
Repeating short beeps Power supply
Power supply
A power supply is a device that supplies electrical energy to one or more electric loads. The term is most commonly applied to devices that convert one form of electrical energy to another, though it may also refer to devices that convert another form of energy to electrical energy...

 or system board problem or keyboard
1 long, 1 short beep System board problem
1 long, 2 short beeps Display adapter problem (MDA, CGA)
1 long, 3 short beeps Enhanced Graphics Adapter
Enhanced Graphics Adapter
The Enhanced Graphics Adapter is the IBM PC computer display standard specification which is between CGA and VGA in terms of color and space resolution. Introduced in October 1984 by IBM shortly after its new PC/AT, EGA produces a display of 16 simultaneous colors from a palette of 64 at a...

 (EGA)
3 long beeps 3270 keyboard card

POST AMI BIOS beep codes

Beeps Meaning
1 Memory refresh
Memory refresh
Memory refresh is the process of periodically reading information from an area of computer memory, and immediately rewriting the read information to the same area with no modifications. Each memory refresh cycle refreshes a succeeding area of memory. Memory refresh is most often associated with...

 timer error
2 Parity error
Parity bit
A parity bit is a bit that is added to ensure that the number of bits with the value one in a set of bits is even or odd. Parity bits are used as the simplest form of error detecting code....

 in base memory (first 64 KiB
Kilobyte
The kilobyte is a multiple of the unit byte for digital information. Although the prefix kilo- means 1000, the term kilobyte and symbol KB have historically been used to refer to either 1024 bytes or 1000 bytes, dependent upon context, in the fields of computer science and information...

 block)
3 Base memory read/write test error
4 Motherboard
Motherboard
In personal computers, a motherboard is the central printed circuit board in many modern computers and holds many of the crucial components of the system, providing connectors for other peripherals. The motherboard is sometimes alternatively known as the mainboard, system board, or, on Apple...

 timer not operational (check all to MB connectors seated)
5 Processor failure
6 8042 Gate A20
A20 line
The A20 or addressing line 20 is one of the plethora of electrical lines that make up the system bus of an x86-based computer system. The A20 line in particular is used to transmit the 21st bit on the address bus....

 test error (cannot switch to protected mode)
7 General exception error (processor exception interrupt error)
8 Display memory error (system video adapter)
9 AMI BIOS ROM checksum
Checksum
A checksum or hash sum is a fixed-size datum computed from an arbitrary block of digital data for the purpose of detecting accidental errors that may have been introduced during its transmission or storage. The integrity of the data can be checked at any later time by recomputing the checksum and...

 error
10 CMOS
CMOS
Complementary metal–oxide–semiconductor is a technology for constructing integrated circuits. CMOS technology is used in microprocessors, microcontrollers, static RAM, and other digital logic circuits...

 shutdown register read/write error
11 Cache memory test failed
12 Motherboard
Motherboard
In personal computers, a motherboard is the central printed circuit board in many modern computers and holds many of the crucial components of the system, providing connectors for other peripherals. The motherboard is sometimes alternatively known as the mainboard, system board, or, on Apple...

 does not detect a RAM
Random-access memory
Random access memory is a form of computer data storage. Today, it takes the form of integrated circuits that allow stored data to be accessed in any order with a worst case performance of constant time. Strictly speaking, modern types of DRAM are therefore not random access, as data is read in...

 module (continuous beeping)

Reference: AMIBIOS8 Check Point and Beep Code List, version 2.0, last updated 10 June 2008

POST beep codes on CompTIA A+ Hardware Core exam

These POST beep codes are covered specifically on the CompTIA
CompTIA
The Computing Technology Industry Association , a non-profit trade association, was created in 1982 as the Association of Better Computer Dealers, Inc. by representatives of five microcomputer dealerships...

 A+ Core Hardware Exam:
Beeps Meaning
Steady, short beeps Power supply may be bad
Long continuous beep tone Memory failure
Steady, long beeps Power supply bad
No beep Power supply bad, system not plugged in, or power not turned on
No beep If everything seems to be functioning correctly there may be a problem with the 'beeper' itself. The system will normally beep one short beep.
One long, two short beeps Video card failure

IBM POST diagnostic code descriptions

Code Meaning
100–199 System boards
200–299 Memory
300–399 Keyboard
400–499 Monochrome display
500–599 Color/graphics display
600–699 Floppy-disk drive or adapter
700–799 Math coprocessor
900–999 Parallel printer port
1000–1099 Alternate printer adapter
1100–1299 Asynchronous communication device, adapter, or port
1300–1399 Game port
1400–1499 Color/graphics printer
1500–1599 Synchronous communication device, adapter, or port
1700–1799 Hard drive and/or adapter
1800–1899 Expansion unit (XT)
2000–2199 Bisynchronous communication adapter
2400–2599 system-board video (MCA)
3000–3199 adapter
4800–4999 Internal modem
7000–7099 Phoenix BIOS chips
7300–7399 3.5-inch disk drive
8900–8999 adapter
11200–11299 SCSI adapter
21000–21099 SCSI fixed disk and controller
21500–21599 SCSI CD-ROM system

Macintosh POST

Apple
Apple Computer
Apple Inc. is an American multinational corporation that designs and markets consumer electronics, computer software, and personal computers. The company's best-known hardware products include the Macintosh line of computers, the iPod, the iPhone and the iPad...

's Macintosh
Macintosh
The Macintosh , or Mac, is a series of several lines of personal computers designed, developed, and marketed by Apple Inc. The first Macintosh was introduced by Apple's then-chairman Steve Jobs on January 24, 1984; it was the first commercially successful personal computer to feature a mouse and a...

 computers also perform a POST after a cold boot. In the event of a fatal error, the Mac will not make its startup chime.

Old World Macs (until 1998)

Macs made after 1987 but prior to 1998, upon failing the POST, will immediately halt with a "death chime," which is a sound that varies by model; it can be a beep, a car crash sound, the sound of shattering glass, a short musical tone, or more. On the screen, if working, will be the Sad Mac icon, along with two hexadecimal strings, which can be used to identify the problem. Macs made prior to 1987 crashed silently with the hexadecimal string and a Sad Mac icon.

New World Macs (1998–1999)

When Apple introduced the iMac
IMac
The iMac is a range of all-in-one Macintosh desktop computers built by Apple. It has been the primary part of Apple's consumer desktop offerings since its introduction in 1998, and has evolved through five distinct forms....

 in 1998, it was a radical departure from other Macs of the time. The iMac began the production of New World Macs, as they are called; New World Macs, such as the iMac, Power Macintosh G3 (Blue & White)
Power Macintosh G3 (Blue & White)
The Power Macintosh G3 series was a series of personal computers designed, manufactured and sold by Apple Computer Inc. as part of their Power Macintosh line...

, Power Mac G4 (PCI Graphics), PowerBook G3 (bronze keyboard), and PowerBook G3 (FireWire), load the Mac OS ROM from the hard drive. In the event of a fatal error, they give these beeps:
Beeps Meaning
1 No RAM installed/detected
2 Incompatible RAM type installed (for example, EDO)
3 No RAM banks passed memory testing
4 Bad checksum for the remainder of the boot ROM
5 Bad checksum for the ROM boot block

New World Macs (1999 onward) and Intel-based Macs

The beep codes were revised in October 1999, and have been the same since. In addition, on some models, the power LED would flash in cadence.
Beeps Meaning
1 No RAM installed
2 Incompatible RAM types
3 No good banks
4 No good boot images in the boot ROM (and/or bad sys config block)
5 Processor is not usable

Amiga POST

Amiga
Amiga
The Amiga is a family of personal computers that was sold by Commodore in the 1980s and 1990s. The first model was launched in 1985 as a high-end home computer and became popular for its graphical, audio and multi-tasking abilities...

 historical line of computers, from A1000
Amiga 1000
The A1000, or Commodore Amiga 1000, was Commodore's initial Amiga personal computer, introduced on July 23, 1985 at the Lincoln Center in New York City....

 to 4000
Amiga 4000
The Commodore Amiga 4000, or A4000, is the successor of the A2000 and A3000 computers. There are two models, the A4000/040 released in October 1992 with a Motorola 68040 CPU, and the A4000/030 released in April 1993 with a Motorola 68EC030....

 present an interesting POST sequence that prompts the user with a sequence of flashing screens of different colors (rather than audible beeps as in other systems) to show if various hardware POST tests were correct or else if they failed:

POST Sequence of Amiga

The Amiga system performs the following tests at boot:
  • Step 1 - Delays beginning the tests a fraction of a second to allow the hardware to stabilize.
  • Step 2 - Jumps to ROM code in diagnostic card (if found)
  • Step 3 - Disables and clears all DMA and interrupts.
  • Step 4 - Turns on the screen.
  • Step 5 - Checks the general hardware configuration.

If the screen remains a light gray colors and the tests continue, the hardware is OK.
If an error occurs, the system halts.
  • Step 6 - Performs checksum test on ROMs.

If the system fails the ROM test, the screen display turns red and the system halts.

Sequence for all main Amiga models

Almost all Amiga models present the same color sequence when turned on:

Black screen, dark gray, light gray color screens filling all monitor screen in a rapid sequence (Amigas taken up usually 2, or at least max 3 seconds to turn on and boot).

Amiga Color Screens Scheme

Color Meaning
Red Bad ROM
Yellow CPU Exception Before Bootstrap Code is Loaded
Green Bad Chip RAM or fail of Agnus Chip (check seating of Agnus)
Black No CPU
White Expansion passed test successfully
Grey Turn on
Constant white Failure of CPU

Correct Tests Color Sequence Scheme

A4000 presents just a light gray screen during its boot time (it just occurs in 2 or max 3 seconds)
  • Light Gray
  • = Initial hardware configuration tests passed
  • = Initial system software tests passed)
  • = Final initialization test passed

Failed tests color scheme

Color Meaning
Red ROM Error - Reset or replace
Green CHIP RAM error (reset AGNUS and re-test)
Blue Custom Chip(s) Error
Yellow 68000 detected error before software trapped it (GURU)

Amiga keyboard LED error signals

The keyboards of historical Amiga models are not proprietary as it happened in early computer ages, but more pragmatically it was based on international standard ANSI
American National Standards Institute
The American National Standards Institute is a private non-profit organization that oversees the development of voluntary consensus standards for products, services, processes, systems, and personnel in the United States. The organization also coordinates U.S. standards with international...

/ISO 8859-1. The keyboard itself was an intelligent device and had its own processor and 4 kilobytes of RAM for keeping a buffer of the sequence of keys that were being pressed, thus can communicate with the user if a fault is found by flashing its main LED
Light-emitting diode
A light-emitting diode is a semiconductor light source. LEDs are used as indicator lamps in many devices and are increasingly used for other lighting...

 in sequence:
Blinks Meaning
1 ROM checksum failure
2 RAM test failed
3 Watchdog timer
Watchdog timer
A watchdog timer is a computer hardware or software timer that triggers a system reset or other corrective action if the main program, due to some fault condition, such as a hang, neglects to regularly service the watchdog A watchdog timer (or computer operating properly (COP) timer) is a computer...

 failed
4 A shortcut exists between two row lines or one of the seven special keys (not implemented)

See also

  • Serial Presence Detect
    Serial Presence Detect
    Serial presence detect refers to a standardized way to automatically access information about a computer memory module. Earlier 72-pin SIMMs included 5 pins which provided 5 bits of parallel presence detect data, but the 168-pin DIMM standard changed to a serial presence detect to encode much...

     SPD memory hardware feature to auto-configure timings
  • POST card

External links

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK