
60
AMD-K5 Processor
AMD K86 Family BIOS and Software Tools Developers Guide
21062E/0—June 1997
Preliminary Information
Machine-Check
Exceptions
Bit 6 in CR4, the machine-check enable (MCE) bit, controls
generation of machine-check exceptions (12h). If enabled by
the MCE bit, these exceptions are generated when either of the
following occurs:
I
System logic asserts BUSCHK to identify a parity or other
type of bus-cycle error
The processor asserts PCHK while system logic asserts PEN
to identify an enabled parity error on the D63–D0 data bus
I
Whether or not machine-check exceptions are enabled, the
processor performs the following functions when either type of
bus error occurs:
I
Latches the physical address of the failed cycle in its 64-bit
machine-check address register (MCAR)
Latches the cycle definition of the failed cycle in its 64-bit
machine-check type register (MCTR)
I
Software can read the MCAR and MCTR registers in the
exception handling routine with the RDMSR instruction, as
described on page 90. The format of the registers is shown in
Figures 20 and 21.
If system software has cleared the MCE bit in CR4 to 0 before a
bus-cycle error, the processor attempts to continue execution
without generating a machine-check exception. The processor
still latches the address and cycle type in MCAR and MCTR as
described in this section.
4-Mbyte Pages
The TLBs in the 486 and 386 processors support only 4-Kbyte
pages. However, large data structures, such as a video frame
buffer or non-paged operating system code, can consume many
pages and easily overrun the TLB. The AMD-K5 processor
accommodates large data structures by allowing the operating
system to specify 4-Mbyte pages as well as 4-Kbyte pages, and
by implementing a four-entry, fully-associative 4-Mbyte TLB
that is separate from the 128-entry, 4-Kbyte TLB. From a given
page directory, the processor can access both 4-Kbyte pages
and 4-Mbyte pages, and the page sizes can be intermixed within
a page directory. When the Page Size Extension (PSE) bit in
CR4 is set, the processor translates linear addresses using
either the 4-Kbyte TLB or the 4-Mbyte TLB, depending on the
state of the page size (PS) bit in the page-directory entry.
Figures 14 and 15 show how 4-Kbyte and 4-Mbyte page
translations work.