메모리 유형 범위 레지스터

Memory type range register

메모리 타입 레인지 레지스터(MTRR)는 시스템소프트웨어CPU에 의한 메모리 범위에 대한 액세스의 캐시 방법을 제어하는 프로세서 보조 기능 제어 레지스터 세트입니다.대부분의 최신 CPU에서 제공되는 특수 레지스터인 프로그램 가능한 모델 고유 레지스터(MSR) 세트를 사용합니다.메모리 범위에 사용할 수 있는 액세스 모드는 캐시 해제, 라이트 스루, 라이트 조합, 라이트 프로텍트, 라이트백입니다.라이트백 모드에서는, CPU캐시에 쓰기가 행해지고 캐시에 더티 마크가 붙기 때문에, 그 내용은 나중에 메모리에 써집니다.

기입 조합에 의해, 버스상에서 기입 전송을 버스트 하기 에, 보다 큰 전송에 조합할 수 있기 때문에, 그래픽 카드 메모리등의 시스템 자원에의 기입 효율이 향상됩니다.이것에 의해, 통상 메모리의 단순한 시퀀셜 읽기/쓰기 시멘틱스가 없어지는 대신, 이미지 기입 조작의 속도가 몇 배 빨라지는 일이 자주 있습니다.AMD64 등 일부 컴퓨터 아키텍처에서 제공되는 추가 비트는 시스템 메모리(섀도 ROM)의 ROM 콘텐츠 섀도우잉 및 메모리 매핑 I/O 구성을 가능하게 합니다.

x86-PC 프로세서의 MTRR

초기 x86 아키텍처 시스템에서는 특히 캐시가 CPU 패키지 이외의 다른 칩에 의해 제공되었습니다.이 기능은 칩셋 자체에 의해 제어되어 BIOS 설정으로 구성되었습니다.

CPU 캐시가 CPU 내부로 이동되면 CPU는 그 당시 제공된 PC-BIOS와 호환되는 첫 번째 메가바이트 메모리를 포함하는 고정 범위 MTRR을 구현했습니다.VGA 액세스 및 기타 모든 메모리 액세스에 필요한 캐시 정책을 제어하는 데 사용됩니다.CPU는 1MB 이상의 가변범위 MTRR을 다수 제공하므로 자유롭게 배치할 수 있고 오버랩할 수도 있습니다.이러한 가변 범위 MTRR은 PCI 디바이스에서 사용되는 그래픽 메모리 및 기타 메모리 범위의 캐시 정책을 설정하기 위해 사용할 수 있습니다.

인텔 P6 프로세서 패밀리 (Pentium Pro, Pentium II 이후)에서는, MTRR 를 사용해 프로세서의 메모리 [1]범위에의 액세스를 제어할 수 있습니다.

Cyrix 6x86, 6x86MX 및 MII 프로세서에는 MTRR과 동일한 기능을 제공하는 Address Range Register(ARR; 주소 범위 레지스터)가 있습니다.

AMD K6-2(8단계 이상) 및 K6-II 프로세서에는 2개의 MTRR이 있습니다.AMD Athlon 패밀리는 8개의 인텔 스타일 MTRR을 제공합니다.

Centaur C6 WinChip에는 8개의 MCR이 있어 쓰기 조합이 가능합니다.

VIA Cyrix III 및 VIA C3 CPU는 8개의 인텔 스타일 MTRR을 지원합니다.

AMD K8 CPU의 메모리인터페이스는, 「확장 고정 범위 MTRR 타입 필드 인코딩」을 서포트하고 있습니다.이것에 의해, Direct Connect Architecture개입시켜 RAM 에 액세스 할 것인지, 메모리 매핑 I/O 를 실행할 것인지를 지정할 수 있습니다.이를 통해 예를 들어 ROM 콘텐츠를 RAM에 복사하여 섀도 RAM을 구현할 수 있습니다.

후계자

새로운 x86 CPU는 페이지 속성 테이블(PAT)이라고 불리는 고도의 기술을 지원하므로 노트북에서도 최대 64GB의 최신 메모리 크기를 처리할 수 있는 입도가 낮은 레지스터의 수가 한정되어 있지 않고 데스크톱 시스템의 몇 배 용량에 대응할 수 있습니다.

MTRR 동작의 상세한 것에 대하여는, CPU 벤더의 프로세서 메뉴얼을 참조해 주세요.

「 」를 참조해 주세요.

레퍼런스

  1. ^ "The Linux Gamers' HOWTO". The Linux Gamers' HOWTO. tldp.org. Retrieved 2009-10-03.

외부 링크