컴퓨터구조 Ch.1

이종욱·2023년 9월 4일

개요

RISC-V에 대해 공부
전공서 Ch.1 ~ Ch.5 내용 강의
과제1. 어셈블리어
과제2. C언어

컴퓨터구조론에서는
Instruction Set Architecture(ISA, 기계언어모음집, 단어장)
Processor(90%이상 디지털 회로로 이루어져 있음, Andgate 안 트랜지스터 등등) -> 논리회로 공부 필요

Ch.1 컴퓨터구조 추상화 & 테크

컴퓨터 종류(이책에선 3종류)

  1. Personal 컴퓨터
  2. 서버
  3. Embedded computers

컴퓨터아키텍처가 발전하기 위해 쓰인 8가지 아이디어들

Make the common case fast
-> 많이 쓰이는 부분을 최적화해라 ex)프로그램이 도는데 시간이 많이 쓰이는

Dependability via redundancy
-> 부가적인 요소를 넣음으로써 독립적으로 작동하도록 해라
ex) 트럭 타이어가 터져도 갈 수 있게, 복구 설정 같은 것

컴퓨터구조

폰 노이만 아키텍쳐(차세대 기술과는 따로지만, 죽을 때까지 안 바뀔 듯)
-컴퓨터는 5개의 Components로 이루어져 있다.
-프로세서 = CPU = 마이크로프로세서(datapath + control)

Performance에 대해...

기준을 정해야 performance 나온다.
그 중에 Response time & Throughput
1. Response time(반응시간, 실행시간, execution time)
프로세서 하나에 대한, 줄어들면 좋음
2. Throughput(BW)
프로세서 여러 개에 대한, 늘면 좋음

=> 어느정도 Trade-off 관계(정확한 조사 필요)

Response time을 줄이는데 관심이 더 많음
-> Measuring performance 시간 재기(진짜 말그대로 초시계로 잼)

CPU clock

For 동기화, 클럭 없으면 컴퓨터 die(asychronous 컴퓨팅 제외)
Clock rate = Clock Frequency: cycles per second
ex) 클럭 1GHz이면 1초에 1G진동 -> 데이터 전송
CPU 속도 1G<2G<3G 데이터 많이 담을 수 있어서?
1/1ns = 1GHz

그럼 CPU Performance에 대해 얘기해보자...
Cycle 수, Cycle 길이 => Trade-off 관계
1. Cycle 수
Required for a program, 줄어들면 좋음
2. Cycle 길이
줄어들면 좋음

Instruction Performance는?
Cycles per instruction(CPI), 명령어 수행에 몇 사이클이냐?
ex) add: 2(cycle), mul: 10, div: 20

Power Trend

그래프를 해석해보면...
Clock Rate 발전 수준이 flat해졌다(20년 전에 대락 4GHz였는데 아직도 4GHz대, why?)
Power 수준도 flat해짐

Power ~= Voltage^2 * Freq (커패시터는 일단 생각하지 말고)
power가 늘어나면 좋긴 한데, 비용(누진세 등등)과 발열 측면에서 가성비를 생각해보면 소비전력 낮춰야 함.
Freq가 높기 때문에 Voltage(칩에 들어가는 공급전압)를 낮춰야 하는데 낮추는데 한계있음(누수전력, leakage)

이렇듯 전력도 발전수준이 flat(Power Wall)
-> 그러면 CPU에 여러 개의 core를 넣자!(multi-thread)

Amdahl의 법칙

성능 향상 계산 방식
예시를 보면 0 = 80seconds/n 인 걸 보아
이 factor를 가지고는 향상이 불가능 한 걸 볼 수 있다.
=> 영향을 많이 받는 critical한 부분을 최적화해라!!(8가지 아이디어 중)

MIPS does Not account for(= 전제조건 얘기)

짤막상식

ARM processor -> RISC-V 하네마네...(Ch.2에서 자세히)
bit는 b, Bite는 B
프로세서(우리나라ㅠㅠ), 메모리(삼성)
Power가 전압관리 한다.

IC칩 제조 비용

Yield(수율)은 기업마다 secret

profile
안녕하세요!

0개의 댓글