본문 바로가기

반응형

컴퓨터구조

(13)
[문과 코린이의 IT기록장] 컴퓨터 구조 - 2.(7) ~ 2.(9) [ 판단을 위한 명령어, 하드웨어의 프로시저 지원, MIPS의 32bit 수치를 위한 주소지정 및 복잡한 주소지정 방식 ] [문과 코린이의 IT기록장] 컴퓨터 구조 - 2.(7) ~ 2.(9) [ 판단을 위한 명령어, 하드웨어의 프로시저 지원, MIPS의 32bit 수치를 위한 주소지정 및 복잡한 주소지정 방식 ] 7. 판단을 위한 명령어 * if문, go to문 1) 조건부 분기 (1) beq register1, register2, L1 : register1과 register2의 값이 같으면, L1에 해당하는 문장으로 가라 : branch if equal (2) bne register1, register2, L1 : register1과 register2의 값이 같지 않으면, L1에 해당하는 문장으로 가라 : branch if not equal [ If-then-else를 조건부 분기로 ..
[문과 코린이의 IT기록장] 컴퓨터 구조 - 2.(4) ~ 2.(6) [ 부호있는수와 부호없는 수, 명령어의 컴퓨터 내부 표현, 논리연산 명령어 ] [문과 코린이의 IT기록장] 컴퓨터 구조 - 2.(4) ~ 2.(6) [ 부호있는수와 부호없는 수, 명령어의 컴퓨터 내부 표현, 논리연산 명령어 ] 4. 부호있는 수와 부호없는 수 - 모든 정보는 이진 자리 수(binary digit), 즉 bit로 구성되므로 비트가 계산의 기본 단위가 된다. * 기본 단위 표현방식 : 높음/낮음, 온/오프, 참/거짓, 1/0 - 어떤 기수(진수)의 숫자에서 I번째 숫자 d의 값은 : d * Base^i - 여기서 I는 0에서 시작해서 왼쪽으로 갈 수록 증가한다. - LSB : MIPS워드에서 가장 오른쪽 비트 0 - MSB : MIPS워드에서 가장 왼쪽 비트 31 [=부호비트] - MIPS워드의 길이는 32bit이므로 2^32가지의..
[문과 코린이의 IT기록장] 컴퓨터 구조 - 2.(1) ~ 2.(3) [서론, 하드웨어 연산, 피연산자] [문과 코린이의 IT기록장] 컴퓨터 구조 - 2.(1) ~ 2.(3) [서론, 하드웨어 연산, 피연산자] 0. 들어가기에 앞서 (진수 변환하기, 연산자 간단 이해하기) 문제 ) (1) 32476 : 2진수 변환, 8진수변환, 16진수 변환, 음수 변환하기 (2) 48765 : 2진수 변환, 8진수변환, 16진수 변환, 음수 변환하기 (3) (1), (2) : & / | / ^ 계산하기 (4) 3.7647 : 이진수로 변환하기 1. 서론 - 컴퓨터 하드웨어에게 일을 시키려면 하드웨어가 알아들을 수 있는 언어로 말을 해야함. - 컴퓨터 언어에서 단어(어셈블리어)를 명령어라 하고, 그 어휘를 명령어 집합구조라 함. - 이 장의 명령어 설명은 하향식(top-down)으로 이..
[문과 코린이의 IT기록장] 컴퓨터 구조 - 4.6. 파이프라인 데이터패스 및 제어 1. 파이프라인 데이터패스 1) MIPS 명령어 파이프라인의 5단계 1. IF(Instruction Fetch) : 명령어 인출 2. ID(Instruction Decode) : 명령어 해독 및 레지스터 파일 읽기 3. EX(Execution) : 실행 및 주소 계산 4. MEM(Memory) : 데이터 메모리 접근 5. WB(Write Back) : 레지스터에 쓰기 - 데이터패스를 5개의 부분으로 나눈 것이다. - 한 클럭사이클에 최대 5개의 명령어가 실행될 수 있다는 것을 의미한다. 2) 단일 사이클 데이터패스 분할 - 일반적으로 정보 흐름은 왼쪽에서 오른쪽으로 진행된다. - 그러나 2가지 예외가 존재한다. (위 그림의 하늘색 선 참고) a. WB단계 : 결과를 레지스터 파일에 쓰기 b. PC의 다음..
[문과 코린이의 IT기록장] 컴퓨터 구조 - 4.5. 파이프라이닝에 대한 개관 1. 단일 사이클 구현의 문제점 : 4.4에서 보았던 방식은, 한 명령어를 데이터패스를 통해 실행하는 동안에, 다음 명령어는 앞 명령어가 실행이 끝날때까지 기다리게 된다. : 이는 클럭사이클 시간을 너무 길어지게 해, 전체 성능을 떨어지게 한다. 2. 파이프라이닝 1) 파이프라이닝의 정의 및 이점 - 정의 : 여러 명령어가 중첩되어 실행되는 기술. (병렬성을 이용) * 각 명령어의 실행시간을 개선시키지는 못하지만, 처리량을 개선한다. - n(실행 명령어 개수), T(시간), k(파이프라인 개수) 파이프라이닝을 하지 않았을 때, 걸리는 시간 : TS = n x T 파이프라이닝을 했을 때, 걸리는 시간 : TP = (n+k-1) x T/k SpeedUp : SP = TS/TP ≅ k (n이 상당히 커지면 0..

반응형