⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 msr.lst

📁 中断列表(2) 352K
💻 LST
📖 第 1 页 / 共 5 页
字号:
MODEL-SPECIFIC REGISTERS	Release 60		Last change 03jan99
Copyright (c) 1996,1997,1998,1999 Ralf Brown

--------!---Note-----------------------------
Note:	except where mentioned otherwise, Pentium information also applies to
	  the PentiumMMX, and Pentium Pro information also applies to the
	  Pentium II
----------S00000000--------------------------
MSR 00000000h - Pentium, Pentium Pro - MACHINE CHECK EXCEPTION ADDRESS
Size:	32-36 bits
Access:	Read
Desc:	on any Machine Check exception (INT 12), this MSR contains the physical
	  address at which the exception occurred
Notes:	also supported by AMD Am5k86, K5, and K6; however, the K6 does not
	  actually support the machine check -- this register may be written
	  on the K6 to emulate that functionality
	this register does not exist on the PentiumII, but will not cause an
	  exception when accessed
SeeAlso: MSR 00000001h,MSR 80000000h,INT 12"MACHINE CHECK"
----------S00000001--------------------------
MSR 00000001h - Pentium, Pentium Pro - MACHINE CHECK EXCEPTION TYPE
Size:	6 bits
Access:	Read
Desc:	when a Machine Check exception occurs, this register contains the
	  reason for the exception
Notes:	also supported by AMD Am5k86, K5, and K6; however, the K6 does not
	  actually support the machine check -- this register may be written
	  on the K6 to emulate that functionality
	this register does not exist on the PentiumII, but will not cause an
	  exception when accessed
SeeAlso: MSR 00000000h,MSR 80000001h,INT 12"MACHINE CHECK"

Bitfields for Machine Check Exception type (MSR 00000001h):
Bit(s)	Description	(Table R0001)
 63-6	reserved (0)
 5	"FERI" Fan Error Indicator (Pentium OverDrive only) -- CPU overheated
	(once set, this bit remains set even through CPU reset)
 4	bus cycle causing exception was locked
 3	state of M/IO# pin during bus cycle
 2	state of D/C# pin during bus cycle
 1	state of W/R# pin during bus cycle
 0	Machine Check pending (cleared by reading this MSR)
----------S00000002--------------------------
MSR 00000002h - Pentium - (TR1) PARITY REVERSAL TEST REGISTER
Size:	14 bits
Access:	Write
SeeAlso: MSR 00000004h,MSR 80000002h

Bitfields for Parity Reversal Test Register (TR1):
Bit(s)	Description	(Table R0002)
 63-14	reserved (0)
 13	microcode
 12	Data TLB data
 11	Data TLB tag
 10	Data Cache data
 9	Data Cache tag
 8	Code TLB data
 7	Code TLB tag
 6	"ID3" data cache odd bits 129-255
 5	"ID2" data cache even bits 128-254
 4	"ID1" data cache odd bits 1-127
 3	"ID0" data cache even bits 0-126
 2	instruction cache tag
 1	do not go into SHUTDOWN mode on parity error
 0	(read/write-clear) "Parity Error Summary" set on any parity error
Notes:	bits 2-13 indicate that the parity should be reversed for the given
	  subsystem, thus always forcing a parity error
	the Centaur (IDT) WinChip C6 supports bit 1 (no shutdown)
----------S00000003--------------------------
MSR 00000003h - Pentium - INVALID
Note:	attempted accesses to this MSR cause an exception
SeeAlso: MSR 80000003h,MSR 0000000Fh
----------S00000003--------------------------
MSR 00000003h - Cyrix M2 - TEST DATA
SeeAlso: MSR 00000004h"Cyrix"
----------S00000004--------------------------
MSR 00000004h - Pentium - (TR2) INSTRUCTION CACHE END BITS
Size:	4 bits
Access:	Read/Write
Note:	documented as reserved on Pentium MMX
SeeAlso: MSR 00000002h,MSR 00000005h,MSR 80000004h

Bitfields for Instruction Cache End Bits (TR2):
Bit(s)	Description	(Table R0003)
 63-4	reserved (0)
 3-0	end bits (each set bit indicates the last byte of an instruction in
	  TR3 during code cache access)
Note:	when a new line is written into the code cache, all end bits are set;
	  the instruction decoder then clears those bits corresponding to
	  bytes which are not the last byte of an instruction
SeeAlso: #R0004
----------S00000004--------------------------
MSR 00000004h - Cyrix M2 - TEST ADDRESS
SeeAlso: MSR 00000003h"Cyrix",MSR 00000005h"Cyrix"
----------S00000005--------------------------
MSR 00000005h - Pentium - (TR3) CACHE DATA TEST REGISTER
Size:	32 bits
Access:	Read/Write
SeeAlso: MSR 00000004h,MSR 00000006h,MSR 80000005h

Bitfields for Cache Data Test Register (TR3):
Bit(s)	Description	(Table R0004)
 63-32	reserved (0)
 31-0	data read/written from/to cache (code or data)
SeeAlso: #R0005
----------S00000005--------------------------
MSR 00000005h - Cyrix M2 - COMMAND/STATUS
SeeAlso: MSR 00000004h"Cyrix"
----------S00000006--------------------------
MSR 00000006h - Pentium - (TR4) CACHE TAG
Size:	32 bits
Access:	Read/Write
SeeAlso: MSR 00000005h,MSR 00000007h,MSR 80000006h

Bitfields for Cache Tag Test Register (TR4):
Bit(s)	Description	(Table R0005)
 63-32	reserved (0)
 31-8	cache tag (bits 35-12 of address)
 7-3	reserved (0)
 2	LRU (P54C)
	=0  Way 0
	=1  Way 1
 4-2	LRU (P55C [PentiumMMX])
	=X00  Way 0
	=X10  Way 1
	=0X1  Way 2
	=1X1  Way 3
 1-0	Valid
	---code cache (selected by TR5)---
	x0 cache line invalid
	x1 cache line valid
	---data cache (selected by TR5)---
	00 cache line invalid
	01 cache line shared
	10 cache line exclusive
	11 cache line modified
SeeAlso: #R0004,#R0006
----------S00000007--------------------------
MSR 00000007h - Pentium - (TR5) CACHE CONTROL
Size:	15 bits
Access:	Write
SeeAlso: MSR 00000006h,MSR 00000008h,MSR 80000007h

Bitfields for Cache Control Test Register (TR5):
Bit(s)	Description	(Table R0006)
 63-20	reserved (0)
 19	entry[1] (PentiumMMX only)
	combined with bit 12, selects Way within cache set
 18-15	reserved (0)
 14	cache write-back mode (instead of write-through) enabled
 13	select data cache instead of code cache
 12	select Way within cache set
 11-5	cache set number
 4-2	buffer select (specify which 32-bit portion of cache line to access)
 1-0	control
	00 normal operation
	01 test write
	10 test read
	11 flush (action controlled by TR7)
		TR7.CD/TR7.WD	Action
		 0	x	invalidate code cache line
		 1	0	invalidate data cache line, but don't writeback
		 1	1	invalidate data cache line, writeback if dirty
SeeAlso: #R0004,#R0005
----------S00000008--------------------------
MSR 00000008h - Pentium, PentiumMMX - (TR6) TLB COMMAND
Size:	32 bits
Access:	Read/Write
SeeAlso: MSR 00000007h,MSR 00000009h,MSR 80000008h

Bitfields for Pentium TLB Command Test Register:
Bit(s)	Description	(Table R0007)
 63-32	reserved (0)
 31-12	linear address
 11	TLB entry is valid
 10	page is dirty (has been written to)
 9	page may only be accessed from Ring 0
 8	page may be written
 7-3	reserved (0)
 2	page is 4M instead of 4K
 1	data TLB instead of code TLB
 0	operation (0=write, 1=read)
SeeAlso: #R0008
----------S00000009--------------------------
MSR 00000009h - Pentium, PentiumMMX - (TR7) TLB DATA
Size:	32 bits
Access:	Read/Write
SeeAlso: MSR 00000008h,MSR 0000000Bh,MSR 80000009h

Bitfields for Pentium TLB Data Test Register (TR7):
Bit(s)	Description	(Table R0008)
 63-32	reserved (0)
 31-12	physical address
 11	"CD" Page Cache Disable
 10	"WB" Page Write-Through
 9-7	TLB Least-Recently Used value (non-MMX Pentium only)
 6-5	reserved (0) (P54C)
 6-5	bits 5-4 of TLB entry number (PentiumMMX only)
 4	Hit Indicator
 3-0	bits 3-0 of TLB entry number (PentiumMMX only)
 3-2	TLB entry number (non-MMX Pentium)
 1-0	reserved (0) (non-MMX Pentium)
Note:	if a write with bit 4 (Hit Indicator) set is followed by a read, the
	  value returned in bit 4 indicates whether the selected address was
	  found in the TLB; if found, bits 3-2 indicate which entry contained
	  the hit
SeeAlso: #R0007,#R0009
----------S0000000A--------------------------
MSR 0000000Ah O - Pentium A-step - (TR8) 36-BIT TLB DATA TEST REGISTER
Size:	4 bits
Note:	attempted accesses to this MSR cause an exception on any Pentium except
	  A-step chips, since the 36-bit physical addressing feature was
	  removed from the Pentium prior to general release
SeeAlso: MSR 8000000Ah

Bitfields for Pentium A-step 36-bit addressing Test Register (TR8):
Bit(s)	Description	(Table R0009)
 63-4	reserved (0)
 3-0	high bits of physical address (A35-A32)
SeeAlso: #R0008
----------S0000000B--------------------------
MSR 0000000Bh - Pentium, PentiumMMX - (TR9) BRANCH TARGET BUFFER TAG
Size:	32 bits
Access:	Read/Write
SeeAlso: MSR 00000009h,MSR 0000000Ch,MSR 8000000Bh

Bitfields for non-MMX Pentium Branch Target Buffer Tag (TR9):
Bit(s)	Description	(Table R0010)
 63-32	reserved (0)
 31-6	tag address (bits 31-6 of last byte of branch)
 5-2	reserved (0)
 1-0	history (state of current branch)
SeeAlso: #R0012,#R0013,#R0011

Bitfields for PentiumMMX Branch Target Buffer Tag (TR9):
Bit(s)	Description	(Table R0011)
 63-32	reserved
 31-8	tag address (bits 31-8 of last byte of branch)
 7-6	offset (bits 1-0 of last byte of branch)
 5	valid BTB entry
 4	branch is predicted as taken
 3-0	history (state of current branch)
SeeAlso: #R0010
----------S0000000C--------------------------
MSR 0000000Ch - Pentium, PentiumMMX - (TR10) BRANCH TARGET BUFFER TARGET
Size:	32 bits
Access:	Read/Write
SeeAlso: MSR 0000000Bh,MSR 0000000Dh,MSR 8000000Ch

Bitfields for Pentium Branch Target Buffer Target (TR10):
Bit(s)	Description	(Table R0012)
 63-32	reserved (0)
 31-0	target address
SeeAlso: #R0010,#R0013
----------S0000000D--------------------------
MSR 0000000Dh - Pentium, PentiumMMX - (TR11) BRANCH TARGET BUFFER CONTROL
Size:	12 bits
Access:	Write
SeeAlso: MSR 0000000Ch,MSR 0000000Eh,MSR 8000000Dh

Bitfields for Pentium Branch Target Buffer Control (TR11):
Bit(s)	Description	(Table R0013)
 63-26	reserved (0)
 25-24	branch type (PentiumMMX only)
	00 conditional branch
	01 unconditional jump
	10 call
	11 return
 23-13	reserved (0)
 12	bit 2 of test command (PentiumMMX only)
 11-8	BTB set number to access (non-MMX)
 11-8	BTB set number to access (PentiumMMX only)
 7-6	BTB bank (PentiumMMX only)
 5-4	reserved (0)
 3-2	BTB entry (way) within set
 1-0	test command
	00 normal operation
	01 test write
	10 test read
	11 flush
	101 test read tag (PentiumMMX only)
SeeAlso: #R0010,#R0012
----------S0000000E--------------------------
MSR 0000000Eh - Pentium, K6, C6 - (TR12) NEW FEATURE CONTROL
Size:	10 bits
Access:	Write
SeeAlso: MSR 0000000Dh,MSR 8000000Eh

Bitfields for Pentium New Feature Control (TR12):
Bit(s)	Description	(Table R0014)
 63-22	reserved (0)
 21	low-power mode enable
 20	(PentiumMMX only) Data Cache Inhibit (disable internal data cache)
 19	(PentiumMMX only) Code Cache Inhibit (disable internal code cache)
 18-15	reserved (0)
 14	(CPUID=052Bh/052Ch) ignore interrupt immediately after CLI and before
	  STI
 13-10	reserved (0)
 9	enable I/O instruction restart for SMM and use different interrupt
	  priority
 8	generate fast branch-trace message bus cycles
 7	"FTR" ??? (documented as reserved) (0)
 6	disable auto-halt feature (P54C only)
 5	??? (documented as reserved) (0)
 4	disable internal APIC (non-MMX Pentium only)
 3	Cache Inhibit (disable internal L1 cache)
 2	Single-Pipe Execution (disable V pipeline)
 1	enable special branch trace message cycle on BTB hit (default = 0)
 0	disable branch prediction (no BTB)
Notes:	the AMD K6 only supports bit 3 (cache inhibit) of this register;
	  all other bits should be set to zero
	the Centaur (IDT) WinChip C6 supports bits 9, 6, and 3 of this register
----------S0000000F--------------------------
MSR 0000000Fh - Pentium - INVALID
Note:	attempted accesses to this MSR cause an exception
SeeAlso: MSR 8000000Fh,MSR 00000003h
----------S00000010--------------------------
MSR 00000010h - Pentium, Pentium Pro - TIME STAMP COUNTER REGISTER
Size:	64 bits
Access:	Read/Write
Desc:	starting at 00000000h:00000000h on reset, this counter increments on
	  every CPU-core clock cycle
Notes:	on a Pentium Pro, only the low 32 bits may be written; on writes, the
	  high 32 bits are cleared to 00000000h
	also supported by Pentium II; AMD Am5k86,K5,K6; Cyrix 6x86MX; Centaur
	  (IDT) WinChip C6
SeeAlso: MSR 80000010h
----------S00000011--------------------------
MSR 00000011h - Pentium, Cyrix 6x86MX - EVENT COUNTER SELECTION AND CONTROL
Size:	26 bits
Access:	Read/Write
Note:	also supported by Cyrix 6x86MX and Centaur (IDT) WinChip C6
SeeAlso: MSR 00000012h,MSR 00000013h,MSR 00000186h,MSR 80000011h

Bitfields for Pentium Event Counter Control:
Bit(s)	Description	(Table R0015)
 63-27	reserved (0)
 26	(Cyrix 6x86MX only) "ES1" bit 6 of event type for counter 1
 25	external pin PM1 shows counter overflows instead of counter increments
 24	counter 1 counts clock cycles instead of events
 23	enable counter 1 counting in CPL3
 22	enable counter 1 counting in CPL2-0
 21-16	event type for counter 1 (see #R0017)
 15-11	reserved
 10	(Cyrix 6x86MX only) "ES0" bit 6 of event type for counter 0
 9	external pin PM0 shows counter overflows instead of counter increments
 8	counter 0 counts clock cycles instead of events
 7	enable counter 0 counting in CPL3
 6	enable counter 0 counting in CPL2-0

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -