컴퓨터 아키텍처
컴퓨터 아키텍쳐/Computer Architecture
컴퓨터의 여러 구성요소를 배치하는 방법을 의미함
기본적인 구성요소
- 폰 노이만 구조
- 하버드 구조
폰노이만 구조
- 폰 노이만이 고안한 내장 메모리 순차처리 방식
- 데이터 메모리와 프로그램 메모리가 구분되어 있지 않아 하나의 버스를 사용
- 명령과 데이터가 같은 신호버스와 메모리를 사용하기 때문에 CPU에서 동시 접근이 불가
- 소프트웨어만 교체하면 되기 때문에 범용성이 크게 향상됨
- 대부분의 컴퓨터는 폰 노이만의 설계를 기본 구조로 함
- 병목현상이 발생하기 쉬움
- 이는 나열된 명령을 순차적으로 수행하고 그 명령은 일정한 기억장소 값을 변경하는 작업으로 구성되는 구조 때문에 발생하는 문제이다.
하버드 구조
- 폰노이만 병목현상을 해결하기 위해 약간의 변형을 가하여 설계
- 메모리를 명령어가 저장되는 곳과 데이터를 저장하는 곳으로 구분
- 즉, 명령용 버스와 데이터용 버스가 물리적으로 분할
- 명령과 데이터를 동시에 읽는것이 가능
- 처리속도를 높이려면 많은 전기회로가 필요하고 가격이 비싸짐
결과
- CPU 내부는 하버드 아키텍쳐를 적용, 외부는 폰노이만 구조를 사용
- 하버드 구조에서 사용했던 통합 캐시 메모리를 분리하여 하나의 클록 사이클에 적재와 저장 명령어를 동시에 실행 할 수 있게 함
- 캐시 메모리 장치는 명령용과 데이터용으로 구분되어 있음
- 현대 컴퓨터의 대부분은 이 구조를 사용함