[TIL] 폰 노이만 (Von Neumann) 구조

김예진·2021년 3월 21일
1

TIL

목록 보기
38/40
  • CODE 책을 읽다가 '폰 노이만 구조'라는 단어를 발견했다. 폰 노이만 구조? 뭐지? 싶어서 찾아본 내용이다.

폰 노이만 (Von Neumann) 구조 란?

폰노이만 구조가 등장하기 이전의 컴퓨터들은 스위치를 설치하고 전선을 연결하여 데이터를 전송하고 신호를 처리하는 식이었다.

프로그램과 데이터를 하나의 메모리에 저장하여 사용하는 방식.
데이터는 메모리에 읽거나 쓰는 것이 가능하지만 명령어는 메모리에서 읽기만 가능하다.
그 이전의 컴퓨터들은 스위치를 설치하고 전선을 연결하여 데이터를 전송하고 신호를 처리했으나, 폰 노이만 구조방식은 CPUCentral Processing Unit)와 한 개의 메모리를 사용하여 처리하는 현대의 범용 컴퓨터들이 사용하는 구조 모델이다.

장점

컴퓨터에 다른 작업을 시킬 경우 하드웨어(전선)을 재배치 할 필요가 없이 SW(프로그램)만 교체하면되기 때문에 범용성(여러 목적사용 가능) 이 향상됨에 따라 현대 컴퓨터가 폰 노이만 구조를 따르고 있다.

단점

메모리와 CPU를 이어주는 통로를 BUS 라 칭하는데 이 통로가 하나기 떄문에 폰 노이만 구조는 순차적으로 정보를 처리 함으로 고속 병렬처리에는 부적합하다 이에 대한 문제를 폰 노이만 병목(Von-Neumann Bottleneck) 현상 이라고 한다

병목현상이란 ?

  • 사전적 의미

    병의 목 부분처럼 넓은 길이 갑자기 좁아짐으로써 일어나는 교통 정체 현상.
    병은 일반적으로 목 부분이 좁아 물이나 액체를 따를 때 갑자기 쏟아지는 것을 방지하게 되어 있다. 이처럼 도로의 너비가 넓은 곳에서 갑자기 좁은 곳으로 차량이 몰려들면 좁아진 도로 너비로 인해 교통혼잡이 빚어지는 등 차량 정체 현상이 일어나는데, 이를 병의 목에 비유해 병목현상이라고 한다.

  • 폰 노이만 병목 현상
    기억장소의 지연 현상을 말한다 . 나열된 명령을 순차적으로 수행하고, 그 명령은 일정한 기억 장소의 값을 변경하는 작업으로 구성되는 폰 노이만 구조에서 병목현상은 나타날 수밖에 없다.
    메모리의 값을 읽고 쓰는 구조이기 때문에 명령과 데이터를 접근할 때 병목 현상이 생길 수 밖에 없다.

폰 노이만 구조에 대한 단점을 해결 하기위해 나온 대안으로 하버드(Harvard)구조가 있다

profile
Backend Developer 🌱 벨로그 내용을 티스토리로 이사중~!

0개의 댓글