본문 바로가기

컴퓨터구조3

[컴퓨터구조] Tomasulo Algorithm Tomasulo Algorithm In-order Execution vs Out-of-order Execution In-order Execution 순차 실행 (순서대로 실행) 앞의 Instruction들이 Issue 되어야 현재 Instruction이 Issue 될 수 있다. RAW dependencies or structural hazards가 있을 때, 해결될 때까지 Issue 단계에서 Stall 된다. Out-of-order Execution 비순차 실행 (실행 순서가 유동적) In-order와 달리 hazards가 존재하더라도, 기다리지 않고 Reservation Station에 Instruction이 전달된다. Issue Buffer 안에 있는 앞선 Instruction들이 있더라도, 뒤에 나.. 2023. 10. 20.
[컴퓨터구조] Memory Hierarchy Memory Hierarchy 이번 포스팅에서는 Memory Hierarchy에 대해 소개해보겠다. CPU가 발전하면서 Computing Time은 빠르게 발전하였지만, Memory는 그것에 비해 발전 속도가 느렸다. 그 결과, 현재 Memory Wall 시대가 도래했다. 즉, 아무리 빨리 계산할 수 있어도, 메모리 접근하는 시간이 오래 걸려 성능이 저하되는 현상이 발생하는 것이다. Memory Hierarchy는 메모리를 어떻게 하면 최대한 효율적으로 접근하고, 사용할지에 대한 결과물이다. Capacity와 Latency 측면에서 Register 2023. 10. 18.
[컴퓨터구조] Basics of Computer Architecture Basics of Computer Architecture 컴퓨터구조를 배우기 위한 기본적인 지식들에 대한 정리이다. 추후에 계속 추가될 예정이다. Moore's Law The number of transistors on integrated circuits doubles roughly every two years 집적회로에 들어가는 트랜지스터의 수가 2년마다 2배 증가한다는 내용으로, 즉, 집적도가 증가한다는 뜻이다. Two principles of locality Temporal Locality: 한 번 참조되었으면, 곧 다시 같은 것이 참조될 가능성이 높다. (c.f. Loop) Spatial Locality: 한 개의 주소가 참조되면, 그 근처에 있는 주소도 접근할 확률이 높다. (c.f. array.. 2023. 10. 17.