소프트웨어 전공/컴퓨터 구조 개론

    [Introduction of Computer Architecture] Pipelining

    [Introduction of Computer Architecture] Pipelining

    [4.5 Pipeline] > 파이프라이닝(pipelining); 여러 명령어가 중첩되어 실행되는 구현 기술 * 병렬로 동작하여 같은 시간에 더 많은 instrution을 끝낼 수 있다. * 하나의 instrunction을 수행하는 시간을 줄이는 것이 아니라, 여러 instruction의 전체 수행 시간을 줄인다. -> 지연 시간(execution time 혹은 latency)보다는 처리율을 향상 > 단일 사이클 vs. 파이프라인 성능 # 단일 사이클 모든 명령어가 한 클럭 사이클만큼 필요 -> 가장 느린 명령어를 수용 가능할 만큼 클럭 사이클이 길어야 한다. # 파이프라인 모든 파이프라인 단계가 한 클럭 사이클만큼 필요 -> 가장 느린 동작을 수용 가능할 만큼 클럭 사이클이 길어야 한다. > Pipel..

    [Introduction of Computer Architecture] Arithmetic for Computers

    [Introduction of Computer Architecture] Arithmetic for Computers

    > Floating Point > Floating Point Standard # IEEE std 754-1985에 의해 정의 # single precision (32-bit); float # double precision (64-bit); double > IEEE floating-point format > Exponent(= Actual exponent + Bias)를 구할 때 Bias를 더 하는 이유 actual exponent가 음수값일 경우를 고려해주기 위해서! > Single-Precision Range > Floating Point Example > Limited Precision 0.1이 왜 정확하게 0.1로 컴퓨터에서는 표현할 수 없는가? 결론적으로는 제한된 비트로 실수를 표현해야하기 때문에..

    [Introduction of Computer Architecture] 메모리 계층 구조

    [Introduction of Computer Architecture] 메모리 계층 구조

    5.1 서론 > 지역성의 원리(principle of locality) 프로그램은 어떤 특정 시간에는 주소 공간 내의 비교적 작은 부분에만 접근한다 # 시간적 지역성(temporal locality) 어떤 데이터가 참조되면 곧바로 다시 참조될 가능성이 높다는 원칙 #spatial locality 하나의 데이터가 참조되면 곧바로 그 주위의 데이터가 참조될 가능성이 높다는 원칙 > 메모리 계층구조(memory hierarchy) 여러 계층의 메모리를 사용하는 구조 프로세서로부터 거리가 멀어질수록 메모리 크기와 접근 시간이 증가한다. > 블록(block) / 라인(line) [가장 하위 계층의 메모리를 도서관이라고 했을 때 블록은 책 한권에 비유할 수 있다.] > 적중률(hit rate) = hits/acce..