Presentation is loading. Please wait.

Presentation is loading. Please wait.

11장. 마이크로 프로세서 내부 구조.

Similar presentations


Presentation on theme: "11장. 마이크로 프로세서 내부 구조."— Presentation transcript:

1 11장. 마이크로 프로세서 내부 구조

2 1. IA 구조의 용어와 특성 IA 인텔사에 의해 개발된 마이크로프로세서 구조의 총칭 무어의 법칙
반도체 다이에 포함할 수 있는 회로의 수가 매 2년 마다 2배로 증가

3 1. IA 구조의 용어와 특성 메모리 영역 바이트 주소지정 little endian 세그먼트 세그먼트_레지스터:바이트 주소
명령어 형식 라벨: 명령코드 인수1, 인수2, 인수3 CISC 구조

4 2. 동작모드 동작모드의 종류 리얼모드 주소변환 ◐유효 주소 명령어 주소, 오퍼랜드 주소

5 2. 동작모드 보호모드 주소변환 ◐ 선형 주소 세그먼트를 고려한 주소 ◐ 물리주소 실제 메모리 주소

6 3. 8086 구조 8086 내부 구조 버스 연결 장치와 실행 장치는 독립적으로 수행
버스 연결 장치(BIU:bus interface unit) 16비트 세그먼트 레지서들, 프로그램 카운터, 명령어 선취큐 등으로 구성 주요 기능 외부의 메모리 또는 입출력 장치와 실행장치 사이에 명령어 및 자료 전달 16비트 유효주소를 물리주소로 변환 명령어의 선인출 실행 장치(EU:execution unit) 명령어 디코더, 16비트 ALU, 제어장치, 16비트 범용레지스터들, 포인터/ 인덱스 레지스터들로 구성

7 3. 8086 구조 8086 레지스터 자료 레지스터들 주소 레지스터들 세그먼트 레지스터들 AX, BX, CX, DX
SP : 스택 포인터 BP : 베이스 레지스터 SI, DI : 인덱스 레지스터 세그먼트 레지스터들 CS, DS, ES, SS

8 구조 프로세서의 초기 동작 플렉 레지스터, 세그먼트 레지스터와 IP 값을 0으로 설정 CS 레지스터의 값은 FFFFh로 설정 초기 수행 명령어의 저장 주소 FFFF0(FFFF0h h)

9 4. 80286의 구조 8086의 구조를 확장 세분화한 16비트 프로세서 8086의 내부 구조 버스 연결 장치 실행 장치
버스 장치(bus unit) 주소, 자료 및 제어 버스와의 연결과 제어를 담당 명령어 장치(instruction unit) 버스장치의 명령어 선취큐의 명령어를 디코딩하여 명령어 큐에 저장 실행 장치 실행 장치(execution unit) ALU, 레지스터, 제어장치 포함 물리주소 변환을 위한 주소 장치(address unit) 가상주소를 물리주소로 변환

10 보호 모드의 동작 제어를 위한 MSW(Machine Status Word) 보호 모드 레지스터들 상태 정보 비트
의 구조 80286 레지스터 보호 모드의 동작 제어를 위한 MSW(Machine Status Word) 보호 모드 레지스터들 GDTR, IDTR, LDTR, TR 상태 정보 비트 IOPL(I/O Privilege Level, 비트 12, 13) : 입출력 특원 수준 NT(Nested Task, 비트 14) : 중첩 작업

11 5. 80386의 구조 80386의 내부 구조 개선된 내부 구조 구성 장치 동작 과정
내부 버스, 외부 자료 버스 및 외부 주소 버스의 크기 32비트 주소 장치에 페이징 기능 추가(세그먼트 장치, 페이징 장치로 세분화) 버스 장치에서 명령어 선취를 위한 장치가 별도 구현 구성 장치 버스 장치, 명령어 선취 장치, 명령어 디코딩 장치, 실행 장치, 세그먼트 장치, 페이징 장치 동작 과정 명령어의 물리 주소 계산(주소 장치) 메모리에서 물리주소에 저장된 명령어 페취(버스 장치, 선취장치) 명령어를 디코드하여 명령어규에 저장(명령어 디코딩 장치) 디코드된 명령어 수행(실행 장치)

12 6. 80486의 구조 32비트 프로세서 80486의 내부 구조 소수점 처리장치 내방 온칩 캐쉬
의 구조 32비트 프로세서 80486의 내부 구조 소수점 처리장치 내방 80387 부동 소수점 처리 장치(FPU) 내장 온칩 캐쉬 단일 캐쉬(unified cache) 쓰기 정책 : Write through 메모리 매핑 방법 4-way associative 메모리 구조 128셋, 블록의 크기 : 16바이트, 전체 크기 : 8K바이트

13 7. 팬티엄 프로세서의 구조 32/64비트 프로세서 팬티엄의 내부 구조 파이프라인 캐쉬 수퍼스칼라의 성능을위해 파이프라인 추가
2개의 정수처리 파이프라인 1클록 사이클에 2개의 명령 수행 가능(U파이프라인, V파이프라인) 캐쉬 Split cache(명령어 캐쉬, 자료 캐쉬) 명령어와 자료의 동시 참조 가능 MESI 프로토콜 사용 Write Back, Write Through 정책 가능 TLB 및 Tag의 동시 접근이 가능한 이중 포트 8개의 뱅크로 구성된 인터리빙

14 7. 팬티엄 프로세서의 구조 부동소수점 연산 분기 예측 선취 큐 레지스터와 버스 레지스터 크기 32비트
강력한 FPU(8단계의 파이프라인 구조) 분기 예측 BTB(Branch Target Buffer)를 이용 선취 큐 2개의 독립된 32바이트 버퍼로 확장 분기명령어에 대한 분기 목적지의 명령어 선취 레지스터와 버스 레지스터 크기 32비트 내부 자료 버스 128비트 및 256비트, 외부 자료버스 64비트 APIC(Advanced Programmable Interrupt Controller) 추가

15 7. 팬티엄 프로세서의 구조 팬티엄의 레지스터 제어레지스터(CR4) 추가 플랙 레지스터에 다음 항목 추가
비트 19 : VIF(virtual interrupt flag) 비트 20 : VIP(virtual interrupt pending) 비트 21 : ID(ID flag)

16 8. P6군 프로세서(팬티엄 프로, 팬티엄II, 팬티엄III)
개선된 슈퍼 스칼라 구조 강화된 병렬 처리 기능 3-way 수퍼스칼라 클록 사이클 마다 3개의 명령어 디코드, 발송, 실행이 가능 12단계의 수퍼파이프라인 어긋난 명령어 실행 지원 파이프라인 페치/디코딩 장치, 발송/수행 장치, 회수 장치, 명령어 풀의 4개의 처리장치로 구성 페치/디코딩 장치 목적 코드를 병렬로 마이크로 연산으로 해독 명령어 풀에 저장 발송/수행 장치 5개의 병렬 처리 장치(두개의 정수 장치, 두개의 FPU, 메모리 연결 장치) 회수 장치 처리된 마이크로 연산을 순서대로 제거

17 8. P6군 프로세서(팬티엄 프로, 팬티엄II, 팬티엄III)
동적 실행 체계 순서에 무관한 실행 체계 분기예측, 동적 자료흐름 분석,예측적실행(마이크로-자료 흐름 분석, 순서가 어긋난 실행, 우수한 분기 예측, 예측적 실행)의 개념 통합 계층적 온칩 캐쉬 L1캐쉬 8KB의 자료 캐쉬와 명령어 캐쉬 두개의 포트 L2 캐쉬 256KB, 64비트 클록 속도 버스 4개의 동시 접근 지원 작업 지향적(transaction-oriented) 외부 64비트 자료버스 메모리에 요청들이 별도의 요청과 응답으로 처리

18 8. P6군 프로세서(팬티엄 프로, 팬티엄II, 팬티엄III)
주소 버스 확장 물리주소 최대 64GB(36비트 주소) 메모리 부 시스템 1차 캐쉬(L1), 2차 캐쉬(L2), 시스템 메모리의 계층적 구성 접근 순서는 L1캐쉬, L2캐쉬, 시스템메모리 순서 메모리 요청은 메모리 연결 장치와 메모리 순서 버퍼를 통과 L1 캐쉬 요청 내부 버스를 통해 접근 한 사이클에 적재와 저장을 동시에 지원하는 2-포트 구조 L2 캐쉬와 시스템 메모리 요청 메모리 순서 버퍼 통과하며, 그곳에서 스케줄링과 발송처리 메모리 순서 버퍼는 모든 메모리 요청을 추적, 요청들에 대한 순서 재조정 명령어 실행 과정 페치디코딩명령어 풀에 저장예약 스테이션실행명령어 풀에 저장회수

19 8. P6군 프로세서(팬티엄 프로, 팬티엄II, 팬티엄III)
페치 및 디코딩 장치 명령어 페치 장치, BTB, 명령어 디코더, 마이크로 코드 정렬기능으로 구성 명령어 페치 장치 L1명령어 캐쉬에서 32바이트의 캐쉬블록을 읽음 16개의 정렬된 바이트를 디코더로 보냄 BTB, 인터럽트 상태, 분기예측을 통해 페치될 명려어의 주소 계산 명령어 디코더 2개의 단순 명령어 디코더와 복잡 명령어 디코더 IA 명령어를 마이크로 연산으로 디코딩하여 명령어풀에 전송 클록 사이클마다 6개 까지의 마이크로 연산을 생성

20 8. P6군 프로세서(팬티엄 프로, 팬티엄II, 팬티엄III)
명령어 풀(재배치 버퍼) 40개의 마이크로 연산을 저장할 수 있는 CAM의 배열 실행을 기다리는 마이크로 연산과 실행된후 회수를 기다리는 마이크로 연산 저장 발송 및 실행 장치(Dispatch/Execution Unit) 명령어 풀의 마이크로 연산들을 스케줄하여 실행하는 장치 스케줄링은 예약 스테이션에서 담당 명령어 풀에서 실행 준비가된 마이크로 연산을 실행 장치로 발송 실행된 후의 마이크로 연산은 회수될때까지 저장 회수 장치(Retirement Unit) 명령어 풀에서 마이크로 연산 제거


Download ppt "11장. 마이크로 프로세서 내부 구조."

Similar presentations


Ads by Google