CS/Computer Architecture

    [컴퓨터 구조] 컴퓨터 시스템 개요

    1. 컴퓨터의 기본 구조 컴퓨터는 프로그램 코드들을 정해진 순서대로 실행한다. 이 과정에서 데이터를 읽고(Read), 처리(Processing)하고, 저장(Store)한다. CPU 프로세서(Processor)라고 불리기도 하며, 컴퓨터의 두뇌이다. 컴퓨터의 성능은 CPU의 성능과 직결된다고 볼 수 있다. 32-bit, 64-bit 컴퓨터도 분류되는 이유도 CPU가 한 번에 처리할 수 있는 비트 수에 따라서 나눈것이다. 주기억장치(main-memory) 우리가 알고 있는 RAM과 ROM이 주기억장치에 속한다. 메인보드상에서 CPU와 가까이 위치하며 빠른 읽기, 빠른 쓰기 속도를 가진다. 하지만 가격이 비싸고 면적을 많이 차지하며 적은 저장 용량을 가진다는 단점이 있다. 따라서 CPU가 프로그램을 실행하기 ..

    [컴퓨터 구조] Addressing Mode

    [컴퓨터 구조] Addressing Mode

    [컴퓨터 구조] Instruction Set 컴퓨터의 Instruction set에 대해서 알아보자 Ex ) 3 + 6 = 9 Operands : '3', '6' Operator : '+' 명령어 사이클의 기본 상태 Diagram을 알아보자 Instruction fetch : 메모리에 있는 명령어를 가져오는 작업(Op.. hyeo-noo.tistory.com 명령어 set을 가져오기 위한 여러 주소 지정방식을 알아보자 Immediate mode : 명령어에 이미 operand가 있다. Register mode : 명령어에 operand가 있는 Register를 가리키는 게 있다. Direct memory mode : operand를 가진 메모리의 주소가 있다. Register indirect mode :..

    [컴퓨터 구조] Instruction Set

    [컴퓨터 구조] Instruction Set

    컴퓨터의 Instruction set에 대해서 알아보자 Ex ) 3 + 6 = 9 Operands : '3', '6' Operator : '+' 명령어 사이클의 기본 상태 Diagram을 알아보자 Instruction fetch : 메모리에 있는 명령어를 가져오는 작업(Op code) bring 대신 fetch를 사용한 이유 : CPU가 원하는 명령어의 주소를 메모리에 주고, 해당 주소에 있는 명령어를 받아오는 작업이기 때문에. Instruction operation decoding : 가져온 명령어를 해석한다. Operand의 주소를 계산해서 Operand를 메모리로부터 가져온다. Data Operation : 가져온 Operand와 Op code를 통해서 Data를 계산한다. Data의 계산 결과를 ..

    [컴퓨터 구조] Control Unit

    [컴퓨터 구조] Control Unit

    [컴퓨터 구조] Instruction Set 컴퓨터의 Instruction set에 대해서 알아보자 Ex ) 3 + 6 = 9 Operands : '3', '6' Operator : '+' 명령어 사이클의 기본 상태 Diagram을 알아보자 Instruction fetch : 메모리에 있는 명령어를 가져오는 작업(Op.. hyeo-noo.tistory.com Instruction과 Operand설명 Micro-Operations이 무엇인지, 실제 control을 위해서 어떤 기법들이 사용되는지 알아보자 Micro-Operations 위 그림을 살펴보면 Instruction을 Fetch 해서 decoding 하고 Operand의 주소를 계산해서 Operand를 Fetch 하고(Multiple operand..

    [컴퓨터 구조] ILP & Superscalar

    [컴퓨터 구조] ILP & Superscalar

    ILP : Instrction Level Parallelism ILP의 2가지 방법 Superscalar : 1 Cycle 동안에 서로 다른 독립적인 2개의 연산을 동시에 수행하는 기술이다. Superpipeline : 한 클럭을 2개로 나누고, 나누어진 클럭에서 각각 서로 다른 연산을 수행하는 기술이다. ILP실행의 한계점 1. True Data Dependency ADD의 r1과 MOVE의 r1은 서로 의존적이다. pipeline에서의 타이밍을 맞추지 못하면 MOVE에서 잘못된 r1값(add가 되기 전의 r1)을 받아서 틀린 연산 결과를 낼 수 있다. 2. Procedural Dependancy if(~) ... else(~) ... 위와 같은 branch가 있을 때 branch이전과 branch 이..

    [컴퓨터 구조] RISC (feat. CISC)

    [컴퓨터 구조] RISC (feat. CISC)

    CICS구조를 비교 모델로 삼아 RISC구조에 대해서 알아보자. RISC(Reduced Instruction Set Computer) - 명령어가 축약된 컴퓨터 명령어 set이 매우 짧고 심플하다 CISC에 비해서 레지스터의 수가 매우 많다 (CISC : 8~16, RISC : 32~520) 소프트웨어적인 기술의 중요성이 크다 (컴파일러의 역할 증가(레지스터 최적화)) 명령어의 개수 : 60~100 (CISC : 200~300) 명령어의 크기 : 4 (CISC : 1 ~ 60) addressing mode : 1 (레지스터를 사용) (CISC : 4 ~ 22) CISC(Complex Instruction Set Computer)가 나오게 된 이유, 장점 과거에는 소프트웨어보다 하드웨어 기술이 상대적으로 ..