본문 바로가기

Computer Science/Computer Architecture

(24)
[Computer Architecture] picoMIPS 명령어 집합 구조 + 한국항공대학교 길현영 교수님의 컴퓨터구조론 과목 내용을 정리한 글입니다. picoMIPS MIPS Technologies에서 만든 명령어 집합이다. (교육용) RISC 기반 아키텍쳐로 명령어 형식이 단순하고, 고정 길이 명령어를 사용한다. - 명령어 길이: 16bit (OpCode 4bit, Operand 12bit) 8개의 범용 레지스터를 사용한다. - 3 bit로 레지스터 주소를 표현한다. - 레지스터 데이터는 16bit로 구성되어있다. 3가지 명령어 형식만 존재한다. - 기본적으로 3-주소 명령어 형식을 사용한다. 명령어 형식 opcode fn 의미 and $rd $rs $rt R 0000 000 $rd
[Computer Architecture] CISC & RISC + 한국항공대학교 길현영 교수님의 컴퓨터구조론 과목 내용을 정리한 글입니다. "명령어 집합 복잡도에 따른 컴퓨터 구조"에서의 "명령어 집합 복잡도"란? => 하드웨어(CPU)가 이해할 수 있는 명령어 집합(기계어)의 복잡도 ex) 많다, 다양하다 CISC (Complex Instruction Set Computer) 1. 메모리가 매우 고가이고, 속도가 느리다. ~> 메모리에서 갖고 올 명령어의 숫자를 줄이자. (한 번에 많이 가져오자.) 2. 낮은 수준의 프로그래밍 기술을 갖고 있다. ~> HW에서 지원해주자. (고급 프로그래밍 언어의 등장) => 명령어 집합(ISA)에서 복잡하지만 강력한 명령어들이 추가되었다. (명령어 집합의 크기 ↑) ex) ..
[Computer Architecture] 주소 지정 방식 + 한국항공대학교 길현영 교수님의 컴퓨터구조론 과목 내용을 정리한 글입니다. 주소 지정 방식 (addressing mode) 명령어의 피연산자 필드를 사용하여, 데이터 유효 주소(effective address)를 결정하는 방식이다. 데이터 유효 주소: 메모리나 저장 장치에 실제로 유효한 데이터가 저장되어 있는 위치를 가리키는 주소 0-단계 주소 지정 방식 - 유효 주소를 확정하기 위해 연산 과정을 0번 수행한다. - 데이터 유효 주소를 명시하지 않는다. 1-단계 주소 지정 방식 - 유효 주소를 확정하기 위해 연산 과정을 1번 수행한다. - 피연산자 필드가 데이터 유효 주소이다. 2-단계 주소 지정 방식 - 유효 주소를 확정하기 위해 연산 과정을 2번 수행한다. - 피연산자 필드가 데이터의 유효 주소를 ..
[Computer Architecture] 명령어 집합 분류 + 한국항공대학교 길현영 교수님의 컴퓨터구조론 과목 내용을 정리한 글입니다. 피연산자 수와 명령어 집합 명령어 구성 - 연산 부호(opcode): 어떤 연산을 수행할 것인가 - 피연산자(operand): 연산의 대상이 되는 데이터(들)의 위치 또는 값 등의 정보 피연산자 수에 따른 컴퓨터구조 종류 (시스템 가정) 1) 스택(Stack) 컴퓨터의 0-주소 명령어 ex) ADD => S[top--] + S[top--] -> S[top] 2) 누산기(Accumulator) 컴퓨터의 1-주소 명령어 ex) ADD X => Acc R1 R1 R1 명령어의 길이가 짧다. 3. 스택 안의 데이터를 접근하려는 경우, 스택 내 데이터의 위치에 따라 데이터 접근 시간이 다르다. - 위에 있는 데이터들을 Pop하고, 원하는..
[Computer Architecture] 명령어 집합 (2) + 한국항공대학교 길현영 교수님의 컴퓨터구조론 과목 내용을 정리한 글입니다. 왜 CPU 내 기억장치 (Register)가 필요한가? 폰 노이먼 모델에서 발생 가능한 데이터 트래픽 추정 - SW와 HW의 분리로, 프로그램이 수정이 가능하고, 다양한 프로그램을 쉽게 사용 가능하다. - 대신, 항상 기억 장치와 CPU 간 데이터 이동이 발생한다. (명령어/자료 등) => 시간이 지날 수록, CPU와 기억 장치 간 속도 차이가 커졌다. (병목 현상) CPU 내부 기억장치(레지스터)가 없는 가상의 컴퓨터를 가정 M - M (메모리 - 메모리) 컴퓨터 - CPU 내부에 데이터 저장 불가하다. - 모든 데이터는 메모리에서 CPU를 경유하..
[Computer Architecture] 명령어 집합 (1) + 한국항공대학교 길현영 교수님의 컴퓨터구조론 과목 내용을 정리한 글입니다. Fake Simple 컴퓨터 명령어 집합 (가정) 명령어 연산 부호 (16진법) 의미 LDA (Load) 1 메모리의 내용을 누산기(CPU)에 적재 STA (Store) 2 누산기(CPU)의 내용을 메모리에 저장 ADD (Add) 3 누산기의 내용과 메모리의 내용을 덧셈 (누산기에 저장) SUB (Subtract) 4 누산기의 내용에서 메모리의 내용을 뺄셈 (누산기에 저장) JMP (Jump) 5 지정한 주소로 분기 CAL (Call) 6 프로시저 호출 HLT (Halt) 8000 프로그램 종료 CPL (Complement) 8001 누산기의 내용을 보수화 IAC (Increase AC) 8002 누산기의 내용을 ..