나무모에 미러 (일반/어두운 화면)
최근 수정 시각 : 2026-10-06 09:02:07

MIPS R3000




파일:관련 문서 아이콘.svg   관련 문서: MIPS 아키텍처
#!if 문서명2 != null
, [[]]
#!if 문서명3 != null
, [[]]
#!if 문서명4 != null
, [[]]
#!if 문서명5 != null
, [[]]
#!if 문서명6 != null
, [[]]


1. 개요2. 특징3. 상세
3.1. 프론트엔드3.2. 백엔드3.3. 메모리 서브시스템3.4. 언코어/버스
3.4.1. 시스템 코프로세서 (CP0)3.4.2. 부동소수점 코프로세서 (CP1)
4. 기타5. 관련 문서

1. 개요

MIPS Computer Systems이 1988년 출시한 MIPS I 명령어 집합 기반 32비트 CPU. 컴퓨터 구조론 교재에 실리는 5단계 파이프라인의 바탕이 된 설계이다.

1986년 출시된 MIPS의 첫 제품인 R2000의 개량형으로, 설계는 R2000과 거의 같지만 클럭을 높였고 캐시 인터페이스를 보강해 발표 당시 가장 빠른 마이크로프로세서였고, MIPS의 첫 상업적 성공작이 되었다. 고성능 시장에서 밀려난 후에도 임베디드 시장에서 10년 넘게 쓰이며 장수하였다. 대표적으로 1994년 발매된 PlayStation(1세대)에 MIPS R3000 기반 프로세서가 탑재되었다.

1.2 µm CMOS 공정으로 제조되어 트랜지스터 약 11만 개를 탑재하였다. (다이 면적 48 mm2) 초기 R3000은 최대 33 MHz, 이듬해 출시된 개량형인 R3000A는 최대 40 MHz 속도로 동작했다.

2. 특징

R3000에는 정수 파이프라인과 메모리 관리 장치, 캐시 제어 회로만 내장되었으며 당시 공정의 한계상 명령어/데이터 캐시는 별도 칩으로 제작되었다. 또한 FPU(코프로세서 1, CP1)도 이때는 별도 칩이었다. 단, R3000 설계를 라이센스받아 제조된 파생 제품 중에는 캐시나 FPU가 내장된 경우도 있었다.

출시 시점 인텔 80386 및 모토로라 68030이 명령어 하나를 처리하는 데 여러 클럭이 걸리는 마이크로코드 기반 구조였던 것과 달리 단일 사이클 하드와이어드 파이프라인 구조를 채택하여 두 프로세서 대비 동일 클럭 속도에서 3-4배 수준의 성능을 보여주었다. 단, 얼마 지나지 않아 인텔 80486과 모토로라 68040이 출시되면서 성능 격차는 빠르게 줄어들었다.

캐시 SRAM이 칩 외부에 있었고, 단일 사이클 주기 내에 캐시 접근을 수행하여야 했으므로 클럭 주파수를 높이는 데 한계가 있었다. R4000 이후에는 캐시를 내장하고 캐시 접근을 여러 사이클로 분할하여 이 문제를 해결하였다.

3. 상세

R2000과 같은 MIPS I 기반 5단계 파이프라인 구조로, Microprocessor without Interlocked Pipeline Stages라는 이름에 맞게 프로세서 내 인터락이 없는 대신 로드 지연 슬롯과 분기 지연 슬롯이 존재했다. 단, 캐시/메모리 및 코프로세서 등 프로세서 외부 요소에 의해 파이프라인 전체가 stall될 수는 있었다.
파일:HC01-MIPS-Pipeline.png

3.1. 프론트엔드

명령어 캐시가 존재하여 캐시 적중시 매 사이클 명령어를 인출할 수 있다.

MIPS 아키텍처에서는 명령어의 크기와 레지스터 소스 필드가 고정되어 있으므로 명령어 해독(디코드)와 레지스터 읽기가 동시에 수행된다.

3.2. 백엔드

데이터패스에는 32비트 ALU, 시프터, 곱셈/나눗셈 유닛이 있으며 메모리 주소는 ALU가 계산한다.

곱셈/나눗셈 유닛은 나머지 데이터패스와 따로 동작하기 때문에 계산 도중에 다른 명령어를 실행할 수 있다. 곱셈/나눗셈 연산의 결과는 HI/LO 레지스터에 나눠 저장해 특수 명령어로 읽어오며, 곱셈의 레이턴시는 12사이클, 나눗셈의 레이턴시는 35사이클이다. 곱셈/나눗셈 유닛 실행 중 HI/LO 레지스터를 읽는 경우 stall이 발생한다.

3.3. 메모리 서브시스템

가상 주소 번역에는 CP0에 있는 64 엔트리 TLB를 사용한다.

3.4. 언코어/버스

3.4.1. 시스템 코프로세서 (CP0)

3.4.2. 부동소수점 코프로세서 (CP1)

4. 기타

5. 관련 문서