CS/컴퓨터 구조

[컴퓨터 구조] 폰 노이만 아키텍처 vs 하버드 아키텍처

겜도리도리 2022. 3. 26. 23:02
반응형

개요

폰 노이만 아키텍처와 하버드 아키텍처는 컴퓨터 구조의 한 종류이다.

 

폰 노이만 구조

존 폰 노이만이 제시한 컴퓨터 구조로 프로그램 내장 방식이라고도 부른다.

폰 노이만 아키텍처에는 다음이 포함된다.

  • 산술 논리 장치와 프로세서 레지스터를 포함하는 처리 장치
  • 명령 레지스터와 프로그램 카운터를 포함하는 컨트롤 유닛
  • 데이터와 명령어를 저장하는 메모리
  • 외부 대용량 저장소
  • 입출력 메커니즘

 

 

장점

컴퓨터에 다른 작업을 시킬 때 하드웨어의 교체 없이 소프트웨어만 교체하면 되므로 범용성이 매우 향상된다.

즉, 전선을 일일이 교체하지 않고 프로그램만 교체하는 것으로 다른 작업을 수행할 수 있다.

 

단점

폰 노이만 구조에서는 나열된 명령을 단순히 순차적으로 실행하는 것을 반복하기 때문에 지연 현상이 발생하고, 이를 폰 노이만 병목 현상이라고 한다.

CPU가 명령어를 빨리 처리해도 명령어를 불러오는 속도가 느리다면 전체 속도가 느려진다.

병목 현상을 해결하기 위해 여러 방법들이 고안되었다.

  • 하버드 아키텍처
  • 메모리 계층 구조
  • NUMA

 

하버드 아키텍처

폰 노이만 병목현상을 해결하기 위해 제안된 컴퓨터 구조이다.

프로그램의 메모리와 데이터 메모리가 물리적 구분 없이 하나의 버스로 CPU와 교류하기 때문에 폰 노이만 병목 현상이 발생한다. 이를 프로그램 메모리와 데이터 메모리를 물리적으로 구분해 다른 버스를 사용하게 하게 만든것이 하버드 아키텍처이다.

따라서 명령어가 끝나고 다음 명령어를 바로 가져올 수 있기에 하버드 아키텍처는 폰 노이만 구조보다 빠르게 작동할 수 있다.

현대 컴퓨터는 외부적으로 폰노이만 구조를 따르면서 CPU 내부는 하버드 아키텍처를 적용해 속도를 향상시켰다.

 

https://velog.io/@ckstn0777/%EC%BB%B4%ED%93%A8%ED%84%B0-%EA%B5%AC%EC%A1%B0

 

반응형