반응형

컴퓨터구조 3

컴퓨터 구조 Ch04_"The Processor-3"

4.5 파이프라이닝에 대한 개관 파이프라이닝(Pipelining)은 여러 명령어가 중첩되어 실행되는 구현 기술이다. 오늘날에서는 보편적 기술이다. 예를들어 파이프라인되지 않는 세탁 방법을 설명하면 1. 세탁기에 한 묶음의 옷을 넣는다. 2. 세탁기가 종료되면 젖은 옷을 건조기에 넣는다. 3. 건조기가 종료되면 건조된 옷을 탁자 위에 놓고 정리한다. 4. 정리가 종료되면 같은 방 친구에게 옷을 넣어 달라고 부탁한다. 하지만 위 그림의 아랫 부분을 보는바와 같이 파이프라인 방법은 훨씬 시간이 적게 걸린다. 단계(stage)가 종료되면 해당 단계의 자원이 할당 해제되기 때문에 사용가능함을 최대로 이용하는 것이다. 각 단계를 위한 별도의 자원이 있는 한 작업들을 파이프라인화 할 수 있다. 파이프라인의 역설적인 ..

컴퓨터 구조 Ch04_"The Processor-2"

4.4 단순한 구현 4.3 의 데이터패스에 단순한 제어기능을 추가하여 단순한 구현을 만들고자 한다. LDUR, STUR, CBZ, ADD, SUB, AND, ORR 을 포함한 LEGv8의 부분집합을 구현한다. ALU 제어 LDUR, STUR 경우에는 메모리 주소를 계산하기 위한 덧셈용으로 ALU를 사용 R-type 명령어 경우에는 명령어 비트 11비트 opcode 필드값에 따라서 4가지 연산(AND, OR, SUB, ADD)중 하나를 수행 CBZ 명령어의 경우 ALU는 레지스터 입력값을 그냥 통과시킨다. 명령어의 opcode 필드와 ALUOp라 불리는 2비트 제어필드를 입력으로 ALU 제어 입력을 발생시킨다. ALUOp 가 10 일때에는 opcode 값이 ALU 제어 입력을 결정하는데 쓰인다. 이러한 제..

컴퓨터 구조 Ch04_"The Processor-1"

4.1 서론 프로세서를 구현하는 데 사용하는 원리와 기법들에 대한 설명 LEGv8 명령어 집합 핵심 부분의 구현을 설계 LDUR(lw), STUR(sw), ADD, SUB, AND, ORR, CBZ, B 모든 명령어의 첫 두단계는 다음과 같이 동일하다. 1. 프로그램 카운터(PC)를 프로그램이 저장되어 있는 메모리에 보내어 메모리로부터 명령어를 가져온다. 2. 읽은 레지스터를 선택하는 명령어 필드를 사용하여 하나 또는 두 개의 레지스터를 읽는다. LDUR, CBZ 명령어는 하나만 읽으면 되지만 대부분의 다른 명령어는 레지스터 두 개를 읽는다. PC -> Instruction Memory, Fetch Instruction Register Numbers -> Register File, Read Registe..

반응형