"Deep
in the sea are riches beyond compare.
But if you seek safety, it is on the shore."
BIOS
GUIDE
BIOS settings are a frequent problem asked about in several hardware
related newsgroups. Did you ever experienced a system lock up
or poor performance and erratic behavior due to improper BIOS
settings? Have you ever been left in the dark by a cryptic 5 pages,
badly written motherboard manual? The answer is probably yes.
BIOS
Basic Input Output System. All computer hardware
has to work with software through an interface. The BIOS gives
the computer a little built-in starter kit to run the rest of
softwares from floppy disks (FDD) and hard disks (HDD). The BIOS
is responsible for booting the computer by providing a basic set
of instructions. It performs all the tasks that need to be done
at start-up time: POST (Power-On Self Test, booting an operating
system from FDD or HDD). Furthermore, it provides an interface
to the underlying hardware for the operating system in the form
of a library of interrupt handlers. For instance, each time a
key is pressed, the CPU (Central Processing Unit) perform an interrupt
to read that key. This is similar for other input/output devices
(Serial and parallel ports, video cards, sound cards, hard disk
controllers, etc...). Some older PC's cannot co-operate with all
the modern hardware because their BIOS doesn't support that hardware.
The operating system cannot call a BIOS routine to use it; this
problem can be solved by replacing your BIOS with an newer one,
that does support your new hardware, or by installing a device
driver for the hardware.
CMOS
Complementary Metal Oxide Semiconductor. To perform
its tasks, the BIOS need to know various parameters (hardware
configuration). These are permanently saved in a little piece
(64 bytes) of CMOS RAM (short: CMOS). The CMOS power is supplied
by a little battery, so its contents will not be lost after the
PC is turned off. Therefore, there is a battery and a small RAM
memory on board, which never (should...) loses its information.
The memory was in earlier times a part of the clock chip, now
it's part of such a highly Integrated Circuit (IC). CMOS is the
name of a technology which needs very low power so the computer's
battery is not too much in use.
Actually, there is not a battery on new boards,
but an accumulator (Ni_Cad in most cases). It is recharged every
time the computer is turned on. If your CMOS is powered by external
batteries, be sure that they are in good operating condition.
Also, be sure that they do not leak. That may damage the motherboard.
Otherwise, your CMOS may suddenly "forget" its configuration
and you may be looking for a problem elsewhere. In the monolithic
PC and PC/XT, this information is supplied by setting the DIP
(Dual-In-line Package) switches at the motherboard or peripheral
cards. Some new motherboards have a technology named the Dallas
Nov-Ram. It eliminates having an on-board battery: There is a
10 year lithium cell epoxyed into the chip.
Chipset
A PC consists of different functional parts installed
on its motherboard: ISA (Industry Standard Architecture), EISA
(Enhanced Industry Standard Architecture) VESA (Video Enhanced
Standards Association) and PCI (Peripheral Component Interface)
slots, memory, cache memory, keyboard plug etc... Not all of these
are present on every motherboard. The chipset enables a set of
instructions so the CPU can work (communicate) with other parts
of the motherboard. Nowadays most of the discrete chips; PIC (Programmable
Interrupt Controller), DMA (Direct Memory Access), MMU (Memory
Management Unit), cache, etc... are packed together on one, two
or three chips; the chipset. Since chipsets of a different brand
are not the same, for every chipset there is a BIOS version. Now
we have fewer and fewer chipsets which do the job. Some chipsets
have more features, some less. OPTi is such a commonly used chipset.
In some well integrated motherboards, the only components present
are the CPU, the two BIOS chips (BIOS and Keyboard BIOS), one
chipset IC, cache memory (DRAMs, Dynamic Random Access Memory),
memory (SIMMs, Single Inline Memory Module, most of the time)
and a clock chip.
Setup
Setup is the set of procedures enabling the configure
a computer according to its hardware caracteristics. It allows
you to change the parameters with which the BIOS configures your
chipset. The original IBM PC was configured by means of DIP switches
buried on the motherboard. Setting PC and XT DIP switches properly
was something of an arcane art. DIP switches/jumpers are still
used for memory configuration and clock speed selection. When
the PC-AT was introduced, it included a battery powered CMOS memory
which contained configuration information. CMOS was originally
set by a program on the Diagnostic Disk, however later clones
incorporated routines in the BIOS which allowed the CMOS to be
(re)configured if certain magic keystrokes were used.
Unfortunately as the chipsets controlling modern
CPUs have become more complex, the variety of parameters specifiable
in SETUP has grown. Moreover, there has been little standardization
of terminology between the half dozen BIOS vendors, three dozen
chipset makers and large number of motherboard vendors. Complaints
about poor motherboard documentation of SETUP parameters are very
common.
To exacerbate matters, some parameters are defined
by BIOS vendors, others bychipset designers, others by motherboard
designers, and others by various combinations of the above. Parameters
intended for use in Design and Development, are intermixed with
parameters intended to be adjusted by technicians -- who are frequently
just as baffled by this stuff as everyone else is. No one person
or organization seems to understand all the parameters available
for any given SETUP.
Hardware Performance
Although computers may have basic similarities
(they all look the same on a shelf), performance will differ markedly
between them, just the same as it does with cars. The PC contains
several processes running at the same time, often at different
speeds, so a fair amount of coordination is required to ensure
that they don't work against each other.
Most performance problems arise from bottlenecks
between components that are not necessarily the best for a particular
job, but a result of compromise between price and performance.
Usually, price wins out and you have to work around the problems
this creates.
The trick to getting the most out of any machine
is to make sure that each component is giving of its best, then
eliminate potential bottlenecks between them. You can get a bottleneck
simply by having an old piece of equipment that is not designed
to work at modern high speed - a computer is only as fast as its
slowest component, but bottlenecks can also be due to badly written
software.
System Timing
The clock is responsible for the speed at which
numbers are crunched and instructions executed. It results in
an electrical signal that switches constantly between high and
low voltage several millions times a second.
The System Clock, or CLKIN, is the frequency used
by the processor; on "*?s and 386s, this will be half the
speed of the main crystal on the motherboard (the CPU devides
it by two), which is often called CLK2IN. 486 processors run at
the same speed, because they use both edges of the timing signal.
A clock generator chip (82284 or similar) is used to synchronize
timing signals around the computer, and the data bus would be
run at slower speed synchronously with the CPU, e.g. CLKIN/4 for
an ISA bus with a 33 MHz CPU.
ATCLK is a separate clock for the bus, when it's
run asynchronously, or not derived from CLK2IN. There is also
a 14.138 MHz crystal which was used for all system timing on XTs.
Now it's only used for the colour frequency of the video controller
(6845).
Memory Access
The cycle time is the time it takes to read from
and write to a memory cell, and it consists of two stages; precharge
and access. Precharge is where the capacitor in the memory cell
is able to recover from a previous access and stabilize. Access
is where a data bit is actually moved between memory and the bus
or the CPU. Total access time includes the finding of data, data
flow and recharge, and parts of the access time can be eliminated
or overlapped to improve performance. The combination of precharge
and access equals cycle time, which is what you should use to
calculate wait states from.
There are ways of making refreshes happen so that
the CPU doesn't notice (i.e. Concurrent and Hidden), which is
helped by the 486 being able to use its on-board cache and not
needing to use memory so often anyway. In addition, you can affect
the Row Access Strobe (RAS), or have Column Access Strobe (CAS)
before RAS (see Advanced Chipset Setup).
The fastest DRAM commonly available is rated at
60ns. As these chips need alternate refresh cycles, under normal
circumstances data will actually be obtained every 120ns, giving
you and effective speed of around 8 MHz for the whole computer,
regardless of the CPU speed, assuming no action is taken to compensate.
Memory chips therefore need to be operating at something like
20ns to keep up, assuming that the CPU needs only one clock cycle
for each one from the memory bus; one internal cycle for each
external one. Intel processors mostly use two for one, so the
33 MHz CPU is actually ready to use memory every 60ns, but you
need to allow a little more for overheads, such as data assembly
and the like. One way of matching the capacities of components
with different speeds includes the use of wait states.
Wait States
A wait state indicates how many ticks of the system
clock the CPU has to wait for memory to catch up-it will generally
be 0 or 1, but can be up to 3 if you're using slower memory chips.
Ways of avoiding wait states include:
· Page-mode memory. This will cut-down
address cycles to retrieve information form one general area,
based on the fact that the second access to a memory location
on the same page takes around half the time as the first; addresses
are normally in two halves, with high bits (for row) and low bits
(for column) being multiplexed onto one set of address pins. The
page address of data is noted, and if the next data is in the
same area, a second address cycle is eliminated as a whole row
of memory cells can be read in one go; that is, once a row access
has been made, you can get to subsequent column addresses in that
row in the time available (you should therefore increase row access
time for best performance). Otherwise data is retrieved normally,
which will take twice as long. Fast Page Mode is a quicker version
of the same thing; the DRAMs concerned have a faster CAS access
speed. Memory capable of running in page mode is different from
normal bit-by-bit type, and the two don't mix. It's unlikely that
low capacity SIMMs are so capable.
· Interleaved memory, which divides memory
into two or four portions that process data alternately; that
is, the CPU sends information to one section while another goes
through a refresh cycle; a typical installation will have odd
addresses on one side and even on the other (you can have word
or block interleave). If memory accesses are sequential, the precharge
of one will overlap the access time of the other. To put interleaved
memory to best use, fill every socket you've got (that is, eight
1 Mb SIMMs are better than two 4 Mb ones). The SIMM types must
be the same. As an example, a machine in non-interleaved mode
(say a 386SX/20) may need 60ns or faster DRAM for 0ws access,
where 80ns chip could do if interleaving were enabled.
· A processor RAM cache, which is a bridge
between the CPU and slower main memory; it consists of anywhere
between 32-512K of (fast) Static RAM chips and is designed to
retain the most frequently accessed code and data from main memory.
It can make 1 wait state RAM look like that with 0 wait states,
without physical adjustments, assuming that the data the CPU wants
is in the cache when required (known as a cache hit). To minimize
the penalty of a cache miss, cache and memory access are often
in parallel, with one being terminated when not required. On a
486, how much cache you need really depends on the amount of memory;
Dell say that jumping from 128K to 256K only increases the hit
rate by around 5% and Viglen say you only need more than 256K
if you have more than 32 Mb RAM. A cache should be fast and capable
of holding the contents of several different parts of main memory.
Software plays a part as well, since cache operation is based
on the assumption that programs access memory where they have
done so already, or are likely to next, maybe through looping
(where code is reused) or code is organized to be next to other
relevant parts. A basic cache design will look up an address for
the CPU and return the data inside one clock cycle, or 20ns at
50 MHz. Asynchronous SRAM will be used for this. As the round
trip from the CPU to cache and back again takes up a certain amount
of time, only the remainder is available to retrieve data, which
gets smaller as the motherboard speed is increased. Synchronous
SRAM uses a buffer to keep the whole routine inside one clock
cycle, even though it may use two (or more) clock cycles the first
time round. The address from the CPU is stored, and while the
next is coming in to the buffer, the data for the first is retrieved,
and the cycle continues. Pipeline SRAM uses more clock cycles,
typically three, the first time round, and Burst SRAM will deliver
4 words (blocks of data) over for consecutive cycles if the request
from the CPU is for the first; there will be no waiting for the
CPU to request each one individually. Note the level 2 cache can
be unreliable, so be prepared to disable it in the interests of
reliability. For maximum efficiency, or minimum access time, a
cache may be subdivided into smaller blocks that can be separately
loaded, so the chances of a different part of memory being requested
and the time needed to replace a wrong section are minimized.
There are three mapping schemes that assist with this:
· Fully Associative, where the whole address
is kept with each block of data in the cache (in tag RAM), needed
because it is assumed there is no relationships between the blocks.
This can be inefficient, as an address comparison needs to be
made with every entry each time the CPU presents the address for
its next instruction.
· Direct Mapped, where every block can
only be in one place in the cache, so only one address comparison
is needed to see if the data required is there. Although simple,
the cache controller must go to main memory more frequently if
program code needs to jump between locations with the sane index,
which defeats the object somewhat, as alternate references to
the same cache cell mean cache misses for other processes. The
"index" comes form the lower order addresses presented
by the CPU.
· Set Associative, a compromise between
the above two. Here, an index can select several entries, so in
a 2 Way Set Associative cache, 2 entries can have the same index,
so two comparisons are needed to see if the data required is in
the cache. Also, the tag field is correspondingly wider and needs
larger SRAMs to store address information. As there are two locations
for each index, the cache controller has to decide which one to
update or overwrite, as the case may be. The most common methods
used to make these decisions are Random Replacement, First In
First Out (FIFO) and Least Recently Used (LRU). The latter is
the most efficient. It the cache is large enough (e.g. 64K), performance
from this over direct-mapping may not be much. A Write Thru Cache
means that every write access is immediately passed on to memory;
although it means that cache contents are always identical to
main memory, it is slow, as the CPU then has to wait for DRAMs.
Buffers can be used to provide a variation on this, where data
is written into a temporary buffer so the CPU is released quickly
before main memory is updated. A Write Back Cache, on the other
hand, exists where changed data is temporarily stored in the cache
and written to memory when the system is quiet, or when absolutely
necessary. This will give better performance when main memory
is slower than the cache, or when several writes are made in a
very short space of time, but is more expensive. A "dirty
bit" is used as a mental note that the cache and main memory
contents are different, and that the cache contains the most up
to date data. This bit will be checked if the cache needs to be
written to, and main memory updated first if this bit is set.
Some motherboards don't have the required SRAM for the dirty bit,
but it's still faster than Write Thru.
Shadow RAM
ROMs are used by components that need their own
instructions to work properly, such as video card of cacheing
disk controller. ROMs are 8-bit devices, so only one byte is accessed
at a time; also, they typically run between 150-400ns, so using
them will be slow relative to 32-bit memory at 60-80ns, which
is capable of making four accesses at once.
Shadow RAM is the process of copying the contents
of a ROM directly into extended memory which is given the same
address as the ROM, from where it will run much faster. The original
ROM is then disabled, and the new location write protected. If
your applications execute ROM routines often enough, enabling
Shadow RAM will make a difference in performance of around 8%,
assuming a program spends about 10% of its time using instructions
from ROM, but theoretically as high as 300%. The drawback is that
the RAM set aside for shadowing cannot be used for anything else,
and you will lose a corresponding amount of extended memory, The
remainder of Upper Memory, however, can usually be remapped to
the end of extended memory and used there.
With some VGA cards, if video shadow is disabled,
you might get DMA errors, because of timing when code is fetched
from the VGA BIOS, when the CPU cannot accept DMA requests. Some
programs don't make use of the video ROM, preferring to directly
address the card's registers, so you may want to use extended
memory for something else. If you machine hangs during the startup
sequence for no apparent reason, check that you haven't shadowed
an area of upper memory containing a ROM that doesn't like it-particularly
one on a hard disk controller, or that you haven't got two in
the same 128K segment.
Bus Types
The expansion bus (where expansion cards go) is
an extension of the Central Processor, so when adding cards to
it, you are extending the capabilities of the CPU itself. The
relevance of this regard to the BIOS is that older cards are less
able to cope with modern buses running at higher speeds than the
original design of 8 or so MHz. Also, when the bus is accessed,
the whole computer slows down to the bus speed, so it's often
worth altering the speed of the bus or the wait states between
it and the CPU to speed things up. The PC actually has four buses;
the processor bus connects the CPU to its support chips, the memory
bus connects it to its memory, the address bus is part of both
of them, and the I/O (or expansion) bus is what concerns us here.
ISA
Industry Standard Architecture. The 8-bit version
cane on the original PC and the AT, but the latter uses an extension
to make it 16-bit. It has a maximum data transfer rate of about
8 megabits per second on an AT, which is actually well above the
capability of disk drives, or most network and video cards. The
average data throughput is around a quarter of that. Its design
makes it difficult to mix 8- and 16-bit RAM or ROM within the
same 128K block of upper memory; an 8-bit VGA card could force
all other cards in the same (C000-DFFF) range to use 8 bits as
well, which was a common source of inexplicable crashes where
16-bit network card were involved.
EISA
Extended Industry Standard Architecture. An evolution
of ISA and (theoretically) backward compatible with it, including
the speed (8 MHz), so the increased data throughput is mainly
due to the bus doubling in size-but you must use EISA expansion
cards. It has its own DMA arrangements, which can use the complete
address space. On advantage of EISA (and Micro Channel) is the
ease of setting up expansion cards-plus them in and run the configuration
software which will automatically detect their settings.
MCA
Micro Channel Architecture. A proprietary standard
established by IBM to take over from ISA, and therefore incompatible
with anything else. It comes in two versions, 16- and 32-bit and,
in practical terms, is capable of transferring around 20 mbps.
Local Bus
The local bus is one more directly suited to the
CPU; it's next door (hence local), has the same bandwidth and
runs at the same speed, so the bottleneck is less (ISA was local
in the early days). Data is therefore moved along the bus at processor
speeds. There are two varieties:
· VL-BUS, a 32-bit bus which allows bus mastering, and
uses two cycles to transfers a 32-bit word, peaking at 66 Mb/sec.
It also supports burst mode, where a single address cycle precedes
four data cycles, meaning that 4 32-bit words can move in only
5 cycles, as opposed to 8, giving 105 Mb/sec at 33 MHz. The speed
is mainly obtained by allowing VL-Bus adapter cards first choice
at intercepting CPU cycles. It's not designed to cope with more
than a certain number of cards at particular speeds; e.g. 3 at
33, 2 at 40 and only 1 at 50 MHz, and even that often needs a
wait state inserted. VL-Bus 2 is 64-bit, yielding 320 Mb/sec at
50 MHz. There are two types of slot; Master and Slave. Master
boards (e.g. SCSI controllers) have their own CPUs which can do
their own things; slaves (i.e. video cards) don't. A salve board
will work on a master slot, but not vice versa.
· PCI, which is a mezzanine bus, divorced
from the CPU, giving it some independence and the ability to cope
with more devices, so it's more suited to cross-platform work.
It is time multiplexed, meaning that address and data lines share
connections. It has its own burst mode that allows 1 address cycle
to be followed by as many data cycles as system overheads allow.
At nearly 1 word per cycle, the potential is 264 Mb/sec. It can
operate up to 33 MHz, or 66 MHz with PCI 2.1 and can transfer
data at 32 bits per clock cycle so you can get up to 132 Mbytes/sec
(264 with 2.1). Each PCI card can perform up to 8 functions, and
you can have more than one busmastering card on the bus. It should
be noted, though, that many functions are not available with PCI,
such as sound. Not yet, anyway. It is part of the plug and play
standard, assuming your operating system and BIOS agree, so it
is auto configuring (although some cards use jumpers instead of
storing information in a chip); it will also share interrupts
under the same circumstances. The PCI chipset handles transactions
between cards and the rest of the system, and allows other buses
to be bridged to it (typically and ISA bus to allow older cards
to be used). Not all of them are equal, though; certain features,
such as byte merging, may be absent. The connector may vary according
to the voltage the card uses (3.3 or 5v; some cards can cope with
both).
Basic Optimization Tricks
This section is intended for users who have a
limited knowledge of BIOS setup. It provides four fundamental
procedures that may help improve the performance of your system.
· Make sure that all standard settings
correspond to the installed components of your system. For instance,
you should verify the date, the time, available memory, hard disks
and floppy disks. For more information, go to the
Standard CMOS Setup
section.
· Make sure that your cache memory (internal
and external) is enabled. Of course you must have internal (L1)
and external (L2) cache memory present which is always the case
for recent systems (less than five years old). For more information,
go to the Advanced CMOS Setup section. Recently, some motherboards
were found having fake cache memory. Some unscrupulous manufacturers
are using solid plastics chips containing no memory to lure vendors
and customers and then gain extra profits in an highly competitive
semiconductors market. Beware!
Make sure that your Wait States values are at
the minimum possible. You must however be careful because if values
are too low, your system may freeze (hang up).
Make sure to shadow your Video and System ROM.
On older systems, this may improve performance significantly.
Make sure to use a coherent power management strategy.
Choosing the right timing may increase the life expectancy of
your hard disk. See the Power Management section.
Hard disk speed is the major bottleneck for a
system performance, notably for those with 16 MB of memory and
more. You may have the fastest CPU, lots of memory and a confortable
cache, but if you have a crummy hard disk, you may not see improvement
in performances.
POST and Entering Setup
When the system is powered on, the BIOS will perform
diagnostics and initialize system components, including the video
system. (This is self-evident when the screen first flicks before
the Video Card header is displayed). This is commonly referred
as POST (Power-On Self Test). Afterwards, the computer will proceed
its final boot-up stage by calling the operating system. Just
before that, the user may interrupt to have access to SETUP.
To allow the user to alter the CMOS settings,
the BIOS provides a little program, SETUP. Usually, setup can
be entered by pressing a special key combination (DEL, ESC, CTRL-ESC,
or CRTL-ALT-ESC) at boot time (Some BIOSes allow you to enter
setup at any time by pressing CTRL-ALT-ESC). The AMI BIOS is mostly
entered by pressing the DEL key after resetting (CTRL-ALT-DEL)
or powering up the computer. You can bypass the extended CMOS
settings by holding the <INS> key down during boot-up. This
is really helpful, especially if you bend the CMOS settings right
out of shape and the computer won't boot properly anymore. This
is also a handy tip for people who play with the older AMI BIOSes
with the XCMOS setup. It allows changes directly to the chip registers
with very little technical explanation.
A Typical BIOS POST Sequence
Most BIOS POST sequences occur along four stages:
1. Display some basic information about the video
card like its brand, video BIOS version and video memory available.
2. Display the BIOS version and copyright notice
in upper middle screen. You will see a large sequence of numbers
at the bottom of the screen. This sequence is the BIOS identification
line.
3. Display memory count. You will also hear tick
sounds if you have enabled it (see Memory Test Tick Sound section).
4. Once the POST have succeeded and the BIOS is
ready to call the operating system (DOS, OS/2, NT, WIN95, etc.)
you will see a basic table of the system's configurations:
· Main Processor: The type of CPU identified
by the BIOS. Usually Cx386DX, Cx486DX, etc..
· Numeric Processor: Present if you have
a FPU or None on the contrary. If you have a FPU and the BIOS
does not recognize it, see section Numeric Processor Test in Advanced
CMOS Setup.
· Floppy Drive A: The drive A type. See
section Floppy drive A in Standard CMOS Setup to alter this setting.
· Floppy Drive B: Idem.
· Display Type: See section Primary display
in Standard CMOS Setup.
· AMI or Award BIOS Date: The revision
date of your BIOS. Useful to mention when you have compatibility
problems with adaptor cards (notably fancy ones).
· Base Memory Size: The number of KB of
base memory. Usually 640.
· Ext. Memory Size: The number of KB of
extended memory.
In the majority of cases, the summation of base
memory and extended memory does not equal the total system memory.
For instance in a 4096 KB (4MB) system, you will have 640KB of
base memory and 3072KB of extended memory, a total of 3712KB.
The missing 384KB is reserved by the BIOS, mainly as shadow memory
(see Advanced CMOS Setup).
· Hard Disk C: Type: The master HDD number.
See Hard disk C: type section in Standard CMOS Setup.
· Hard Disk D: Type: The slave HDD number.
See Hard disk D: type section in Standard CMOS Setup.
· Serial Port(s): The hex numbers of your
COM ports. 3F8 and 2F8 for COM1 and COM2.
· Parallel Port(s): The hex number of your
LTP ports. 378 for LPT1.
· Other information: Right under the table,
BIOS usually displays the size of cache memory. Common sizes are
64KB, 128KB or 256KB. See External Cache Memory section in Advanced
CMOS Setup.
AMI BIOS POST Errors
During the POST routines, which are performed
each time the system is powered on, errors may occur. Non-fatal
errors are those which, in most cases, allow the system to continue
the boot up process. The error messages normally appear on the
screen. Fatal errors are those which will not allow the system
to continue the boot-up procedure. If a fatal error occurs, you
should consult with your system manufacturer or dealer for possible
repairs. These errors are usually communicated through a series
of audible beeps. The numbers on the fatal error list correspond
to the number of beeps for the corresponding error. All errors
listed, with the exception of #8, are fatal errors. All errors
found by the BIOS will be forwarded to the I/O port 80h.
· 1 beep: DRAM refresh failure. The memory
refresh circuitry on the motherboard is faulty.
· 2 beeps: Parity Circuit failure. A parity
error was detected in the base memory (first 64k Block) of the
system.
· 3 beeps: Base 64K RAM failure. A memory
failure occurred within the first 64k of memory.
· 4 beeps: System Timer failure. Timer
#1 on the system board has failed to function properly.
· 5 beeps: Processor failure. The CPU on
the system board has generated an error.
· 6 beeps: Keyboard Controller 8042-Gate
A20 error. The keyboard controller (8042) contains the gate A20
switch which allows the computer to operate in virtual mode. This
error message means that the BIOS is not able to switch the CPU
into protected mode.
· 7 beeps: Virtual Mode (processor) Exception
error. The CPU on the motherboard has generated an Interrupt Failure
exception interrupt.
· 8 beeps: Display Memory R/W Test failure.
The system video adapter is either missing or Read/Write Error
its memory is faulty. This is not a fatal error.
· 9 beeps: ROM-BIOS Checksum failure. The
ROM checksum value does not match the value encoded in the BIOS.
This is good indication that the BIOS ROMs went bad.
· 10 beeps: CMOS Shutdown Register. The
shutdown register for the CMOS memory Read/Write Error has failed.
· 11 beeps: Cache Error / External Cache
Bad. The external cache is faulty.
Other AMI BIOS POST Codes
· 2 short beeps: POST failed. This is caused
by a failure of one of the hardware testing procedures.
· 1 long & 2 short beeps: Video failure.
This is caused by one of two possible hardware faults. 1) Video
BIOS ROM failure, checksum error encountered. 2) The video adapter
installed has a horizontal retrace failure.
· 1 long & 3 short beeps: Video failure.
This is caused by one of three possible hardware problems. 1)
The video DAC has failed. 2) the monitor detection process has
failed. 3) The video RAM has failed.
· 1 long beep: POST successful. This indicates
that all hardware tests were completed without encountering errors.
If you have access to a POST Card reader, (Jameco,
etc.) you can watch the system perform each test by the value
that's displayed. If/when the system hangs (if there's a problem)
the last value displayed will give you a good idea where and what
went wrong, or what's bad on the system board. Of course, having
a description of those codes would be helpful, and different BIOSes
have different meanings for the codes. (could someone point out
FTP sites where we could have access to a complete list of error
codes for different versions of AMI and Award BIOSes?).
BIOS Error Messages
This is a short list of most frequent on-screen
BIOS error messages. Your system may show them in a different
manner. When you see any of these, you are in trouble - Doh! (Does
someone has any additions or corrections?)
· "8042 Gate - A20 Error": Gate
A20 on the keyboard controller (8042) is not working.
· "Address Line Short!": Error
in the address decoding circuitry.
· "Cache Memory Bad, Do Not Enable
Cache!": Cache memory is defective.
· "CH-2 Timer Error": There is
an error in timer 2. Several systems have two timers.
· "CMOS Battery State Low" :
The battery power is getting low. It would be a good idea to replace
the battery.
· "CMOS Checksum Failure" : After
CMOS RAM values are saved, a checksum value is generated for error
checking. The previous value is different from the current value.
· "CMOS System Options Not Set":
The values stored in CMOS RAM are either corrupt or nonexistent.
· "CMOS Display Type Mismatch":
The video type in CMOS RAM is not the one detected by the BIOS.
· "CMOS Memory Size Mismatch":
The physical amount of memory on the motherboard is different
than the amount in CMOS RAM.
· "CMOS Time and Date Not Set":
Self evident.
· "Diskette Boot Failure": The
boot disk in floppy drive A: is corrupted (virus?). Is an operating
system present?
· "Display Switch Not Proper":
A video switch on the motherboard must be set to either color
or monochrome.
· "DMA Error": Error in the DMA
(Direct Memory Access) controller.
· "DMA #1 Error": Error in the
first DMA channel.
· "DMA #2 Error": Error in the
second DMA channel.
· "FDD Controller Failure": The
BIOS cannot communicate with the floppy disk drive controller.
· "HDD Controller Failure": The
BIOS cannot communicate with the hard disk drive controller.
· "INTR #1 Error": Interrupt
channel 1 failed POST.
· "INTR #2 Error": Interrupt
channel 2 failed POST.
· "Keyboard Error": There is
a timing problem with the keyboard.
· "KB/Interface Error": There
is an error in the keyboard connector.
· "Parity Error ????": Parity
error in system memory at an unknown address.
· "Memory Parity Error at xxxxx":
Memory failed at the xxxxx address.
· "I/O Card Parity Error at xxxxx":
An expansion card failed at the xxxxx address.
· "DMA Bus Time-out": A device
has used the bus signal for more than allocated time (around 8
microseconds).
If you encounter any POST error, there is a good
chance that it is an HARDWARE related problem. You should at least
verify if adaptor cards or other removable components (simms,
drams etc...) are properly inserted before calling for help. One
common attribute in human nature is to rely on others before investigating
the problem yourself. Please don't be a politician (Aide-toi et
le ciel t'aidera).
Standard CMOS Setup
You should have your current setup options written down ON PAPER
somewhere, preferably taped to the inside or the outside of the
case. CMOS memory has a tendency to get erased as the battery
gets old, or become inaccessible if you forget the password. Especially
remember the hard disk settings; they are the most important.
If you have warm-booted the computer (via CTRL-ALT-DEL)
to go into the CMOS setup, the BIOS routine to handle the "Print
Screen" key will probably be installed. You can display each
screen of the CMOS setup and press SHIFT-PRINT SCREEN to get a
printed copy directly. There are several good CMOS saver programs
out on the market, including the PC-Tools and Norton recovery
programs. They allow a user to save a copy of the CMOS registers
to a file in case the battery dies, or if they messed around with
the settings, etc.
· Date (mn/date/year) and Time: To change
the date and time of the system clock. Do not expect your computer
to keep tract of time as accurately as an atomic clock, or even
a wrist watch! Depending of the quality of the motherboard expect
to loose (or gain) several seconds per month. On rare occasion
you will need to setup the clock in BIOS Setting as all operating
systems allow to change these settings within their environments.
· Daylight Saving: Allows the clock to
automatically adapt to the daylight saving scheme which is removing
one hour on the last Sunday of October and adding one hour on
the last Sunday of April.
· Hard disk C type: The number of your
primary (master) hard drive. Most of the time this number is 47,
which means that you must specify the drive specs according to
your hard drive manual.
· Cyln: The number of cylinders on your
hard disk.
· Head: The number of heads.
· WPcom: Write Precompensation. Older hard
drives have the same number of sectors per track at the innermost
tracks as at the outermost tracks. This means that the data density
at the innermost tracks is higher and thus the bits are lying
closer together. Starting with this Cyl# until the end of Cyl#s
the writing starts earlier on the disk. In modern HDs (all AT-BUS
and SCSI, Small Computer Systems Interface) this entry is useless.
Set it either to -1 or max Cyln (a common value is 65535). For
IDE (Integrated Device Electronics) hard drives it is not necessary
to enter a WP cylinder. The IDE HDD will ignore it for it has
its own parameters inboard.
· LZone: The address of the landing zone.
Same as WPcom. Used in old HDs without an auto-parking feature
(MFM, Modified Frequency Modulated, or RLL, Run Length Limited).
Set it to 0 or max Cyl#.
· Sect: The number of sectors per track.
It is often 17 for MFM and 26 for RLL HDD. On other types of drives,
it will vary.
· Size : This is automatically calculated
according the number of cylinders, heads and sectors. It is in
megabytes and applies this formula: (Hds * Cyl * Sect * 512) /
1048.
EIDE specifications. With the growing capacity
of hard disks on desktop computers, a redefinition of IDE specifications
was necessary. The old IDE specification only supported drives
up to 528 megabytes, which is the Normal partition setting. In
1994, the EIDE (Enhanced IDE) protocol was designed and now all
new motherboards support it. This new protocol uses the LBA (Logic
Block Addressing) system which considers logic blocks instead
of heads, cylinders and sectors. If your BIOS does not support
LBA, several hard disk manufacturers provide drivers to trick
the BIOS. You will also find a Large partition setting that can
accommodate drives up to 1024 cylinders, but do not support LBA.
Unfortunately, many large implementations don't work correctly
for drives of over 1GB (there's no good reason why it wouldn't
work for much larger drives though). Note that 1024 cylinders
native is 528MB. The 528MB limit is the 1024 cyl / 16 head / 63
sector limit.
· Hard disk D type: The number of your
secondary (slave) hard drive. Same procedure than above. Jumpers
must be set for an hard drive to perform as slave. Please refer
to your hard drive manual. You might also want to refer to the
hard disk data file frequently posted to comp.sys.ibm.pc.hardware.storage
Several of the PCI motherboards can now accommodate
up to four IDE drives: Primary Master, Primary Slave, Secondary
Master and Secondary Slave.
· Floppy drive A: The type of floppy drive
installed for drive A. Frequent configurations are 1.44 MB (3
1/2 inches), or 1.2 MB (5 1/4). Newer systems have also a 2.88
MB (3 1/2) setting.
· Floppy drive B: The type of floppy drive
installed for drive B.
· Primary display: The type of displaying
standard you are using, and in case of systems with two video
adapters the primary one. The most frequent is VGA/PGA/EGA. Modern
computers have VGA (Video Graphics Array). If you have an older
black/white display select Mono or Hercules, if your Video adapter
card is text only, select MDA.
· Keyboard: Installed. If "not installed"
this option sets the BIOS to pass the keyboard test in the POST,
allowing to reset a PC without a keyboard (file server, printer
server, etc.), without the BIOS producing a keyboard error. As
a system administrator, you can uninstall the keyboard as a supplementary
security procedure to prevent people messing up with the server.
Changing Your Password
Enable you to change the active password. The
default is no password.
Remember your password!!! Write it down somewhere!!!
Ask yourself: Do I really need to set a password to access my
system and/or the BIOS? (is your brother / sister / kid / employee
/ colleague that dangerous?) If security is of some minor concern
to you, disabled recommended. Why not only password protect (or
encrypt) some critical files (personal finances - things the IRS
should not see, juicy love letters, pornographic images (the thing
that Internet is most used for), customer information databases,
etc...)? If you lose your password, you will have to erase your
CMOS memory (see the FAQ ). Some systems allow you to choose when
the password is needed to change the CMOS settings, to boot the
machine, etc.
Auto Configuration
All recent motherboards have now an auto-configuration
setting leaving much of BIOS setup problems out of the user's
hands, such as Bus Clock Speed and Wait States. On the majority
of cases it will do just fine. But you must remember, it is not
an optimization of your system's performances, but a set of efficient
settings that will insure a good result. You will have to Disable
this setting if you want to alter the BIOS yourself, otherwise
your settings will be ignored. On some systems, you may get supplementary
performances by improving over auto configuration settings, but
on others auto configuration is all you will ever need.
Auto Configuration with BIOS Defaults
The BIOS defaults may not be tuned for your motherboard/chipset,
but give a reasonable chance of getting into POST. Usually these
settings are a good start to fine tune your system. If you did
something wrong and don't know what, select this. It will replace
your BIOS settings by default values. You will have to start all
over again. Be sure to know your system's configuration. This
option does NOT alter the date, hard disk and floppy disk configurations
in the Standard CMOS setup, so in general you can expect your
system to boot without problems after selecting this.
Auto Configuration with Power-on Defaults
When powering on, the BIOS puts the system in
the most conservative state you can think of. Turbo off, all caches
disabled, all wait states to maximum, etc... This is to make sure
that you can always enter BIOS setup. Useful if the settings obtained
by selecting AUTO CONFIGURATION WITH BIOS DEFAULTS fail. If the
system does not work with these values, it's time to panic: the
problem may be hardware-related (DIP switches, cards not inserted
properly or worst, something broken).
Exiting BIOS
There are two ways to exit BIOS settings.
· Write to CMOS and Exit: Save the changes
you made in the CMOS. You must do that to permanently keep your
configuration. Several users say they changed the CMOS setup but
forgot to exit with this one! A common source of error.
· Do Not Write to CMOS and Exit: If you
are not sure of the changes you made in the CMOS settings, use
this option to exit safely.
Advanced CMOS Setup
May vary according to your system, BIOS version
and brand. Some functions may not be present or the order and
name may be different (particularly for different BIOS brand).
Know EXACTLY what you are doing. Some configurations may keep
your computer off from booting. If that's the case: Switch the
power off. Turn your computer on WHILE keeping the DEL key pressed.
This is supposed to erase the BIOS memory. If it still doesn't
boot, consult your motherboard manual. Look for a "forget
CMOS RAM" jumper. Set it. Try it again. If it still doesn't
boot, ask a friend or post to a computer hardware newsgroup. You
are permitted to panic.
· Typematic Rate Programming: Disabled
recommended. It enables the typematic rate programming of the
keyboard. Not all keyboards support this! The following two entries
specify how the keyboard is programmed if enabled.
· Typematic Rate Delay (msec): 500 ns recommended.
The initial delay before key auto-repeat starts, that is how long
you've got to press a key before it starts repeating.
· Typematic Rate (Chars/Sec): 15. It is
the frequency of the auto-repeat i.e. how fast a key repeats.
· Above 1 MB Memory Test: If you want the
system to check the memory above 1 MB for errors. Disabled recommended
for faster boot sequence. The HIMEM.SYS driver for DOS 6.2 now
verifies the XMS (Extended Memory Specification), so this test
is redundant. It is thus preferable to use the XMS test provided
by HIMEM.SYS since it is operating in the real environment (where
user wait states and other are operational).
· Memory Test Tick Sound: Enabled recommended.
It gives an audio record that the boot sequence is working properly.
Plus, it is an aural confirmation of your CPU clock speed/Turbo
switch setting. An experimented user can hear if something is
wrong with the system just be the memory test tick sound.
· Memory Parity Error Check: Enabled recommended.
Additional feature to test bit errors in the memory. All (or almost
all) PCs are checking their memory during operation. Every byte
in memory has another ninth bit, that with every write access
is set in such way that the parity of all bytes is odd. With every
read access the parity of a byte is checked for this odd parity.
If a parity error occurs, the NMI (Non Maskable Interrupt), an
interrupt you mostly cannot switch off, so the computer stops
his work and displays a RAM failure) becomes active and forces
the CPU to enter an interrupt handler, mostly writing something
like this on the screen: PARITY ERROR AT 0AB5:00BE SYSTEM HALTED.
On some motherboards you can disable parity checking with standard
memory. Enabled to be sure data from memory are correct. Disable
only if you have 8-bit RAM, which some vendors use because it
is 10% cheaper. If you own a Gravis Ultrasound Soundcard (GUS),
it's imperative that this is enabled; otherwise the Sound Blaster
emulation won't work(!).
Note: Be sure to have memory chips of the same
speed installed. It is not uncommon to have system crashes simply
because memory SIMMS are of different speed. Faster memory will
not adapt itself to the speed of slower memory. 60 ns and 80 ns
SIMMS will surely make your system crash and yourself wonder what
is the problem (I know).
· Hard Disk Type 47 RAM Area: The BIOS
has to place the HD type 47 data somewhere in memory. You can
choose between DOS memory or PC BIOS (or peripheral card) memory
area 0:300. DOS memory is valuable, you only have 640KB of it.
So you should try to use 0:300 memory area instead. There may
be some peripheral card which needs this area too (sound card,
network card, whatever). So if there are some fancy cards in your
PC, check the manuals if they're using the 0:300 area. But in
most cases this will work without checking. This is redundant
if BIOS is shadowed (maybe not in very old BIOSes). The RAM area
can be verified by checking address of int41h and int46h. These
are fixed disk parameters blocks. If they point to the BIOS area,
BIOS made modification of parameters before mapping RAM there.
· Wait for <F1> If Any Error: When
the boot sequence encounter an error it asks you to press F1.
Only at 'non-fatal' errors. If disabled, the system prints a warning
and continues to boot without waiting for you to press any keys.
Enabled recommended. Disabled if you want the system to operate
as a server without a keyboard.
· System Boot Up Num Lock: Specify if you
want the Num Lock key to be activated at boot up. Some like it,
some do not. MS-DOS (starting with 6.0, maybe earlier) allows
a "NUMLOCK=" directive in config.sys, too; if someone
turns the BIOS flag off but has NUMLOCK=ON in their configuration
file, they may be a bit perturbed.
· Numeric Processor Test: Enabled if you
have a math coprocessor (built in for the 486DX, 486DX2, 486DX3
and Pentium - 586 - family). Disabled if you don't (386SX, 386DX,
486SX, 486SLC and 486DLC). If disabled, your FPU (Floating Point
Unit, if present) isn't recognized as present by the system and
will therefore significantly decrease the performance of your
system.
· Weitek Coprocessor: If you have Weitek
FPU, enable. If you have not, disable. This high performance FPU
has 2-3 times the performance of the Intel FPU. Weitek uses some
RAM address space, so memory from this region must be remapped
somewhere else.
· Floppy Drive Seek at Boot: Power up your
A: floppy drive at boot. Disabled recommended for faster boot
sequence and for reduced damage to heads. Disabling the floppy
drive, changing the system boot sequence and setting a BIOS password
are good techniques for adding some security to a PC.
· System Boot Sequence: What drive the
system checks first for an operating system. C:, A: recommended
for faster boot sequence, or to not allow any user to enter your
system by booting from the FDD if your autoexec.bat starts with
a login procedure. A:, C: if the person who uses the computer
is someone who don't knows how to setup CMOS. Because if something
fails and a boot floppy won't work, many users won't know what
to do next. However, be careful. You had better know this setting
is turned on and be prepared to turn it off if your hard disk
boot track becomes corrupted, but not obviously absent, since
you otherwise won't be able to boot from floppy. Also, it's easy
to fool yourself into thinking you booted from a known virus-free
floppy when it actually booted from the (virus-infested) hard
drive.
· System Boot Up CPU speed: Specify at
what processor speed the system will boot from. Usual settings
are HIGH and LOW. HIGH recommended. If you encounter booting problems,
you may try LOW. You may also change the CPU speed with Ctrl-Alt
+.
· External Cache Memory: Enabled if you
have external cache memory (better known as L2 cache memory).
This is a frequent error in CMOS setup as if Disabled when you
have cache memory, the system performance decreases significantly.
Most systems have from 64K to 512K of external cache. It is a
cache between the CPU and the system bus. Different operating
systems may address different levels of cache memory. For instance,
DOS and Windows can address up to 64K at one time while Windows
95, OS/2 and Windows NT can address larger memory spaces. So,
don't buy 256K of cache is you are using a DOS environment with
less than 8MB of memory. It will not improve much the performance
of your system. If Enabled when the system does not have cache
memory, the system will freeze most of the time.
· Internal Cache Memory: Enable or disable
the internal cache memory of the CPU (better known as L1 cache
memory). Disabled for 386 and Enabled for 486 (1 to 8KB of internal
CPU cache). If the CPU does not have internal cache, the system
may freeze if enabled.
In many AMI and AWARD BIOSes, the two previous
options are implemented either as separate Internal and External
Enable/Disable options, or as a single option (Cache Memory :
Disabled/Internal/Both).
· CPU Internal Cache: same as above.
· Fast Gate A20 Option: A20 refers to the
first 64KB of extended memory (A0 to A19) known as the "high
memory area". This option uses the fast gate A20 line, supported
in some chipsets, to access memory above 1 MB. Normally all RAM
access above 1 MB is handled through the keyboard controller chip
(8042 or 8742). Using this option will make the access faster
than the normal method. This option is very useful in networking
and multitasking operating systems.
· Turbo Switch Function: Enables or disables
the turbo switch. Disabled recommended.
· Shadow Memory Cacheable: You increase
speed by copying ROM to RAM. Do you want to increase it by cacheing
it? Yes or no - see Video BIOS Area cacheable. Yes recommended
for MS-DOS and OS/2. Linux and other Unix-like operating systems
will not use the cached ROMs and will benefit from the additional
available memory if they are not cached.
· Password Checking Option: Setup password
to have access to the system and / or to the setup menu. Good
if the computer is to be shared with several persons and you don't
want anyone (friends, sister, etc.) to mess up with the BIOS.
Default password: AMI (if you have AMI BIOS). Award: BIOSTAR or
AWARD_SW for newer versions (Note: I even know a computer store
that kept standard AWARD BIOS configuration with their systems
because they didn't know what the default password was!).
· Video ROM Shadow C000, 32K: Memory hidden
under the "I/O hole" from 0x0A0000 to 0x0FFFFF may be
used to "shadow" ROM (Read-Only Memory). Doing so, the
contents of the ROM are copied into the RAM and the RAM is used
instead, which is obviously faster. Video BIOS is stored in slow
EPROM (Erasable Programmable Read-Only Memory) chips (120 to 150ns
of access time). Also, ROM is 8 or 16 bit while RAM 32 bit wide
access. With Shadow on, the EPROM content is copied to RAM (60
to 80ns of access time with 32 bit wide access). Therefore performance
increases significantly. Only sensible on EGA/VGA systems. Enabled
recommended. If you have flash BIOS (EEPROM), you can disable
it. Flash BIOS enables access at speeds similar to memory access
so you can use the memory elsewhere. However, flash BIOS is still
only accessing it at the speed of the bus (ISA, EISA or VLB).
On systems where the BIOS automatically steals 384K of RAM anyway,
it shouldn't hurt to enable shadowing even on flash ROM. One side
effect is that you will not be able to modify the contents of
flash ROM when the chip is shadowed. If you reconfigure an adapter
which you think might have flash ROM, and your changes are ignored,
or of course if it gives you an error message when you try to
change them, you'll need to temporarily disable shadowing that
adapter. On (S)VGA you should enable both video shadows. Some
video cards maybe using different addresses than C000 and C400.
If it is the case, you should use supplied utilities that will
shadow the video BIOS, in which case you should disable this setting
in the CMOS. Video BIOS shadowing can cause software like XFree86
(the free X Window System) to hang. They should be probably be
disabled if you run any of the 386 unixes.
Some cards map BIOS or other memory not only in
the usual a0000-fffff address range, but also just below the 16MB
border or at other places. The BIOS (for PCI buses only?) now
allows to create a hole in the address range where the card sits.
The hole may be enabled by giving an address, then a size is requested
in power of 2, 64k - 1MB.
· Adaptor ROM Shadow C800,16K: Disabled.
Those addresses (C800 to EC00) are for special cards, e.g. network
and controllers. Enable only if you've got an adapter card with
ROM in one of these areas. It is a BAD idea to use shadow RAM
for memory areas that aren't really ROM, e.g. network card buffers
and other memory-mapped devices. This may interfere with the card's
operation. To intelligently set these options you need to know
what cards use what addresses. Most secondary display cards (like
MDA and Hercules) use the ROM C800 address. Since they are slow,
shadowing this address would improve their performance. An advanced
tip: in some setups it is possible to enable shadow RAM without
write-protecting it; with a small driver (UMM) it is then possible
to use this 'shadow RAM' as UMB (Upper Memory Block) space. This
has speed advantages over UMB space provided by EMM386.
· Adaptor ROM Shadow CC00,16K: Disabled.
Some hard drive adapters use that address.
· Adaptor ROM Shadow D000,16K: Disabled.
D000 is the default Address for most Network Interface Cards.
· Adaptor ROM Shadow D400,16K: Disabled.
Some special controllers for four floppy drives have a BIOS ROM
at D400..D7FF.
· Adaptor ROM Shadow D800,16K: Disabled
· Adaptor ROM Shadow DC00,16K: Disabled
· Adaptor ROM Shadow E000,16K: Disabled.
E000 is a good "out of the way" place to put the EMS
page frame. If necessary.
· Adaptor ROM Shadow E400,16K: Disabled
· Adaptor ROM Shadow E800,16K: Disabled
· Adaptor ROM Shadow EC00,16K: Disabled.
SCSI controller cards with their own BIOS could be accelerated
by using Shadow RAM. Some SCSI controllers do have some RAM areas
too, so it depends on the brand.
Some SCSI adapters do not use I/O-Addresses. The
BIOS address range contains writable addresses, which in fact
are the I/O-ports. This means: this address must not be shadowed
and even not be cached.
· System ROM Shadow F000, 64K: Same thing
as Video shadow, but according to the system BIOS (main computer
BIOS). Enabled recommended for improved performance. System BIOS
shadowing and caching should be disabled to run anything but DOS
(Windows).
On older BIOS versions the shadow choices are
in 400(hex)-byte increments. For instance, instead of one Video
ROM Shadow segment of 32K, you will have two 16K segments (C400
and C800). Same thing for Adaptor ROM Shadow segments.
· BootSector Virus Protection: It is not
exactly a virus protection. All it does is whenever your boot
sector is accessed for writing, it gives a warning to the screen
allowing you to disable the access or to continue. Extremely annoying
if you use something like OS/2 Boot Manager that needs to write
to it. It is completely useless for SCSI or ESDI (Enhanced Small
Device Interface) drives as they use their own BIOS on the controller.
Disabled recommended. If you want virus protection, use a TSR
(Terminate and Stay Resident) virus detection (Norton, Central
Point, etc...). Scan by Macfee is also a good idea. Available
on most FTP servers, it is a shareware.
Advanced Chipset Setup
Configurations may vary according to your system,
BIOS version and brand. So, some setting may be present on your
computer, some may not. Be sure of what you are doing!
· Automatic Configuration: Allows the BIOS
to set automatically several important settings (e.g. Clock divider,
wait states, etc.). Very useful for newbies. Disabled recommended
if you want to play around with the settings. If you have some
special adapter cards, you will also have to disable this option.
· Keyboard Reset Control: Enable Ctrl-Alt-Del
warm reboot. Enabled recommended for more control over your system.
Refresh
· Hidden Refresh: Allows the RAM refresh
memory cycles to take place in memory banks not used by your CPU
at this time, instead or together with the normal refresh cycles,
which are executed every time a certain interrupt (DRQ0 every
15 ms) is called by a certain timer (OUT1). Every time it takes
2 to 4 ms for the refresh. One refresh cycle every ~16 us refreshes
256 rows in ~ 4ms. Each refresh cycle only takes the equivalent
of one memory read or less, as CAS (Column Address Strobe) is
not needed for a refresh cycle. Some RAM can do it, some not.
Try. If the computer fails, turn it off. Enabled recommended.
There are typically 3 types of refresh schemes: cycle steal, cycle
stretch, or hidden refresh. Cycle steal actually steals a clock
cycle from the CPU to do the refresh. Cycle stretch actually delays
a cycle from the processor to do the refresh. Since it only occurs
every say 4ms or so, it's an improvement from cycle steal. We're
not really stealing a cycle, only stretching one. Hidden refresh
typically doesn't stretch or steal anything. It's usually tied
to DTACK (Data acknowledge) or ALE (Address Latch Enable) or some
other signal relating to memory access. Since memory is accessed
ALL of the time it is easy to synchronize the refresh on the falling
edge of this event. Of course, the system performance is at its
optimum efficiency, refresh wise since we're not taking clock
cycles away from the CPU.
· Slow Refresh: Causes RAM refresh to happen
less often than usual, around four times. This increases the performance
slightly due to the reduced contention between the CPU and refresh
circuitry, but not all DRAM memories necessarily support these
reduced refresh rates (in which case you will get parity errors
and crashes). It also saves power, a good opportunity for laptop
computers. Enabled recommended
· Concurrent Refresh: Both the processor
and the refresh hardware have access to the memory at the same
time. If you switch this off, the processor has to wait until
the refresh hardware has finished (it's a lot slower). Enabled
recommended.
· Burst Refresh: Performs several refresh
cycles at once. Increase the system performance.
· DRAM Burst at 4 Refresh: Refresh is occurring
at Bursts of four, increasing the system performance.
· Hi-speed Refresh: Refreshes are occurring
at an higher frequency, which is improving the system performance.
Of course, not all types of memory can support it and Slow Refresh
is preferred.
· Staggered Refresh: Refresh is performed
on memory banks sequentially. The advantages are related to less
power consumption and less interference between memory banks.
· Slow Memory Refresh Divider: The AT refresh
cycle occurs normally every 16 ns, straining the CPU. If you can
select an higher value, such as 64 ns, you will increase the performance
of your system.
· Decoupled Refresh Option: Enables the
ISA bus and the RAM to refresh separately. Because refreshing
the ISA bus is more slow, this causes less strain on the CPU.
· Refresh Value: The lower this value is,
the best the performance.
· Refresh RAS Active Time: The amount of
active time needed for Row Address Strobe during refresh. The
lower the better.
|