ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 03.20 수업
    학교 수업 정리/컴퓨터구조 2023. 3. 21. 23:49

    ISA는 명령어들의 집합이다. 아키텍처라는 말이 붙는 이유는 같은 명령어를 사용하면 구조가 같기 때문이다. 컴퓨터 구조와 밀접한 관련이 있음.

    마이크로 아키텍처는 명령어에 맞는 설계 방법이며 파이프라이닝, 캐시, 분기예측 등등의 방법을 사용하여 성능이 좋은 아키텍처를 만든다.

    ISA의 종류는 2가지가 있다.

    CISC(Complex Instruction Set Computer)는 많은 수의 복잡한 명령어 집합이다. 레지스터뿐만 아니라 메모리에 있는 데이터도 연산이 가능하다. 가변길이 명령어이며 실행시간이 일정하지 않아 파이프라이닝에 어려움이 있어 현재는 사용하지 않는다.

    RISC(Reduced Instruction Set Computer)은 적은 수의 간단한 명령어 집합이다. 고정 길이이며 Load-store 구조라서 데이터를 메모리에서 레지스터로 무조건 가지고 와서 연산해야 한다.

    word는 연산의 기본 데이터 크기이다. 클수록 병렬처리를 늘릴 수 있다. 64bit이면 32bit씩 2개 또는 16bit씩 4개 이런 식으로 병렬화 가능하다. 레지스터의 크기도 기본적으로 word단위이며 주소는 2^word만큼 지정이 가능하나 실제로 이렇게 크게 사용하지는 않고 제한을 두어 40bit, 50bit 이런 식으로 사용한다. 주소의 지정개수를 늘리면 라인도 맞추어 늘려야 해서 칩의 면적이 늘어난다. 64bit면 64개의 라인으로 병렬연결해야 하기 때문이다.

    메모리가 256MB라면 2^28bit이고 최소 28bit의 주소가 필요하다.

    과거에는 cpu가 메모리에 10사이클 내로 접근이 가능했지만 최근에는 100사이클이 넘어가는 시간이 소요된다. 따라서 캐시를 두어 미리 데이터를 넣어놨다가 빠르게 접근하는 방법을 사용한다.

    클럭은 10의 승수를 사용하고 메모리는 2의 승수를 사용한다. 10^3이 kHZ 2^10이 kB.

    IPC는 클럭당 처리가능한 명령어수이다. 클럭과 같이 봐야 한다.

    파이프라인이 깊어질수록 실행 중인 명령어가 많아지게 되고 분기가 일어나면 취소할 명령어가 많아져 효율이 떨어진다. 다만 stage수가 늘어나면 각 stage의 시간이 줄어들어 클럭이 증가한다.

    하이퍼스레딩은 하드웨어 멀티스레딩 기술로 2개의 프로그램을 동시에 실행이 가능하다.

    캐시는 3단계로 나누는데 L1은 데이터를 저장하는 캐시와 명령어를 저장하는 캐시가 분리되어 있다. cpu에서 접근법이 약간 달라 따로 만드는 게 효율적이다. L2부터는 구분 없이 합쳐서 만든다. L3캐시의 적중률은 95% 정도이다.

    시스템 버스의 속도가 200 MHz 일 때 쿼드 펌핑을 하면 한 사이클 안에 3번을 더보 내 총속도는 800 MHz가 된다.

    Transmission Line에서 처음에 버퍼가 있고 일렬로 칩이 연결되어 있으면 처음 칩과 끝쪽 칩에 신호가 도착하는 시간이 차이가 나서 사이클타임이 길어지고 클럭이 낮아진다. point to point방식은 하나의 소자 바로 뒤에 다시 버퍼가 있고 신호를 하나씩 전달하는 방식이다. 사이클타임이 짧아지고 클럭이 높아진다.

    2000년대 초반까지는 단일코어의 성능을 개선시켜 무어의 법칙을 따라갔지만 그 이후에는 코어를 여러 개 설치해 동시에 여러 프로그램을 돌려서 Throughput(처리량)을 증가시키는 방식으로 무어의 법칙을 만족시켰다. 갈수록 단일 코어의 성능을 발전시키는 것은 어려워지고 있다.

    '학교 수업 정리 > 컴퓨터구조' 카테고리의 다른 글

    03.22 수업  (0) 2023.03.23
    03.15 수업  (0) 2023.03.18
    03.13 수업  (1) 2023.03.15
Designed by Tistory.