폰 노이만 아키텍쳐

  • EDVAC 컴퓨터에 대한 보고서에서 처음으로 등장 아키텍쳐

  • 폰 노이만 아키텍쳐 컴퓨터의 구성 요소
    • ALU와 프로세서 레지스터를 지닌 CPU
    • 명령어 레지스터와 PC를 가진 제어 유닛
    • 데이터와 명령어를 저장하는 주기억장치
    • 큰 용량의 외부 보조기억장치
    • I/O 메커니즘
  • 폰 노이만 아키텍쳐는 점차 '프로그램 내장식 컴퓨터(stored-program computer)' 라는 단어로 진화
    • Instruction fetch와 Data operation이 동시에 일어나지 않아야 함
    • 그 둘은 같은 System bus를 공유하기 때문
    • 이러한 특성으로 인해 폰 노이만 병목 현상이 발생되어, 종종 성능 저하 발생
  • 폰 노이만 아키텍쳐와 하버드 아키텍쳐의 가장 큰 차이는 Main memory가 아닌 캐시 아키텍쳐에 적용됨(분산 캐시 구조)

폰 노이만 병목 현상

  • 프로그램 메모리와 데이터 메모리를 공유하는 시스템 버스는 폰 노이만 병목 현상을 야기함
    • CPU와 메모리 사이의 제한된 데이터 전송률로 인해 발생
  • 하나의 버스는 프로그램 메모리, 데이터 메모리 중 하나의 메모리에만 접근 가능하기 때문에, throughput이 CPU의 작업 속도에 한참 미치지 못함
  • 특히, 적은 CPU 사용에 많은 양의 데이터를 필요로 할 때 그 성능 저하가 극에 달하게 됨

병목 현상 완화 방안

  1. CPU와 Main memory 사이에 cache 설치
  2. 분리된 캐시 혹은 명렁어와 데이터에 분산된 접근을 사용(so-called Modified Harvard architecture)
  3. 분기 예측 알고리즘과 로직을 사용
  4. 메모리 접근 횟수를 줄이기 위해 제한된 수의 CPU 스택 혹은 다른 on-chip Local memory를 사용


'Software Convergence > Computer Architecture' 카테고리의 다른 글

기억장치  (0) 2018.09.08
CPU의 구조와 기능  (0) 2018.09.08
시스템 버스, I/O 및 인터럽트  (0) 2018.09.07

+ Recent posts