프로그램 내장 방식의 폰노이만 구조(Von Neumann Architecture)

    폰노이만 구조(Von Neumann Architecture)는 존 폰노이만이 제시한 컴퓨터 아키텍처이다. 이를 다른 말로 프로그램 내장 방식(Stored Program Concept)으로도 불리는데 에드박(EDVAC)의 보고서 최초 초안(1945년)인 First Draft of a Report on the EDVAC에서 설명한 컴퓨터 아키텍처이다. 이처럼 폰노이만이 제안한 컴퓨팅 모델은 그의 이름을 따서 폰노이만 아키텍처라고 부르거나 그의 소속 대학을 따서 프린스턴 아키텍처(Princeton Architecture)라고 부르기도 한다.

     

    폰노이만 구조 이전, 비슷한 시도를 한 것은 컴퓨터의 아버지라 할 수 있는 영국의 앨런 튜링이었다. 이미 앨런 튜링은 1937년에 튜링 기계(Turing Machine)을 소개하면서 소프트웨어를 사용하는 방법을 고안한 적이 있었으나, 세계 2차 대전 이후 이후 미국은 적극적으로 주도하여 ENIAC을 비롯하여, 프로그램 내장 방식의 다음 모델은 EDVAC까지 일사천리로 진행하고 있었다. EDVAC은 폰 노이만이 컨설던트로 참여하여, 메모리에 프로그램과 데이터가 저장되는 구조를 제안하였고, 이 구조는 아직까지 사용하게 된다.


    참고로 최초의 폰노이만 컴퓨터는 컨설던트로 참여한 EDVAC이 아니고, 폰노이만이 직접 진두지휘한 IAS(Institute for advanced studies) 컴퓨터로 1946년에 개발하기 시작하여 1952년에 프린스턴이 완성한 컴퓨터이다.




    프로그램 내장 방식의 폰 노이만 구조


    가. 폰 노이만 구조의(Von Neumann Architecture)의 개념

    - 튜링이 완전하며, 명령어와 데이터가 함께 있는 프로그램 내장 방식의 컴퓨터 아키텍처

    - 단일 저장장치(메모리)에 연산의 수행과 관련된 일련의 명령어와 연산에 필요 혹은 결과로 생성된 데이터를 함께 수용하는 컴퓨터 아키텍처


    John Von Neumann (1903 ~ 1957)

    나. 특징

    범용성향상 : HW 전선을 재배치 할 필요 없이 SW만 교체 (최초의 프로그램이 내장된 컴퓨터)

    병목현상 : 메모리에 명령어와 데이터가 함께 존재 

    - 병목현상을 없애기 위해서, 메모리 계층 구조, NUMA, 하버드 아키텍처 등과 같은 다양한 기술 및 아키텍처 등장



    폰노이만 아키텍처의 구조도

    • CPU는 한번에 하나의 명령어만 실행이 가능하다
    • 명령어 실행은 반드시 메모리에 상주하여 수행한다
    • Fetch -> Decode -> Execute -> Stored Cycle로 처리한다


    폰 노이만 구조의 문제점과 해결방안


    가. 폰 노이만 구조의 문제점

    • CPU의 비효율적 활용 : 한번에 하나의 명령어 처리로 CPU를 효율적으로 사용하지 못함
    • 메모리 버스 병목현상 : 명령어와 데이터를 하나의 주기적 장치에 저장


    나. 폰 노이만 구조의 문제점 해결방안

    • 병렬처리 : 명령어 병렬처리, SMP, MPP 등 다양한 병렬처리 시도
    • 하버드아키텍처 : 데이터 버스를 명령어용과 데이터용으로 분리

    IBM 등에서 인간의 뇌 구조를 모방한 "뉴로모픽 컴퓨팅"으로 궁극적인 아키텍처의 한계점을 벗어나는 노력 시도 중



    참고자료


    연관자료


    댓글

    Designed by JB FACTORY