책- 정리/프로그래머가 몰랐던 멀티코어 CPU이야기 4

7장. 파이프라인(pipeline)

파이프라인(pipeline) 1. 파이프라인(pipeline) 이란? - 프로세서에서 성능을 높이기 위해서 명령어 처리 과정으로 명령어 처리를 여러 단계로 나누어 단계별로 동시에 수행하여 병렬화를 시키는 것을 말한다. 2. pipeline 동작 방식 - 매 클록마다 여러 명령어를 중복된 단계 없이 실행 킨다. - 아래는 5단계 pipeline의 모습이다 3. 가장 효율인 pipeline 조건 - 각 단계별 처리 시간이 일정해야 한다. - 각 명령어의 처리 단계는 균일해야 한다. * 그러나 실제로는 처리 시간일 일정하지도 않고 처리 단계가 균등하지 않아서 문제가 발생한다. 이를 Hazard라고 한다. 4. 헤저드의 종류(Hazard) 1) 구조 헤저드 - 프로세서의 자원이 부족해서 발생한다. - 아래와 같..

6장. 프로세스 기본 동

프로세스 기본 동작 1. 프로세의 동작 이란? - 명령어를 처리하여 해당 명령어 맞게 레지스터 및 메모리의 상태릐 변화 시키는 것이라고 볼수 있다. 2. 프로세스의 명령어 처리 과정(5단계) 1) 명령어 인출 (Instruction Fetch, IF) 2) 명령어 해독 (Instruction Decoding, ID) 3) 피연산잘 인출 (Operands Fetch, OF) 4) 명령어 실행 ( instruction Execution, EX) 5) 결과 저장 ( Operand Store, OS 또는 write back,WB) 3. 각 명령어 처리 과정 상세 설명 1) 명령어 인출 (Instruction Fetch, IF)- PC(Program counter) 또는 IP(Instruction Pointer ..

3장. 프로세스의 기본 부품과 개념들

1. 컴퓨터 하드웨어 구성 - 큰 그림 2. 마이크로 아키텍쳐란? - 사전 적인 정의 인텔 4004는 최초의 일반용, 상용 마이크로프로세서이다.마이크로프로세서(영어: microprocessor, 문화어: 극소형처리장치(極小型處理裝置), 미크로처리장치(미크로處理裝置)) 또는 초소형 연산 처리 장치(超小型演算處理裝置)는 컴퓨터의 중앙 처리 장치(CPU)를 말한다 - 마이크로프로세서 하나를 만드는데 필요한 알고리즘 및 회로 수준의 구조를 자세히 정의한 것을 마이크로아키텍쳐 라고 한다. - 즉 CPU만드는데 필요한 설계도!!! 3. 프로세서의 내부 구조 1). 산술 논리 장치(Arithmetic Logical Unit) ALU - 프로세스 내에서 계산을 담당하는 장치 - 지원하는 연산 (1). 정수 사칙 연산 ..

2장. RISC vs CISC 차이점

1. 과거 RISC vs CISC 차이점 [ 코드 ] struct Vector{ int x; int y; int z; }data[10]; data[index].y = 0x87654321; RISC 코드 해석 ldr r1 , [sp, #4] ; r1 = index mov r3 , #0xC ; r3 = sizeof(vector) mul r2 , r1 , r3 ; r2 = index * sizeof(vector) add r3 , sp , #8 ; r3 = data add r3 , r3 , r2 ; r3 = &data[index] add r2 , r3 , #4 ; r2 = &(data[index].y) ldr r3 , [pc, #8] ; r3 = 0x87654321 str r3 , [r2] ; *(r2) = r..