본문 바로가기
잡다구리구리

현대 컴퓨터의 핵심 폰 노이만 구조(feat.병목현상)

by 으잇짜 2023. 9. 2.
반응형

1. 서론

 

존 폰 노이만의 컴퓨터 구조 개념, 일명 프로그램 내장 방식, 이론적으로는 튜링 머신과 동일한 기능 수행 능력을 갖췄다. 이전에는 스위치와 전선을 이용하여 프로그래밍하던 컴퓨터들이 존 폰 노이만의 아이디어로 혁신되었고, 폰 노이만 구조는 중앙처리장치(CPU), 메모리, 프로그램 이 세 가지 핵심 요소로 이루어져 있다.

 

2. 존 폰노이만 구조

2.1. 존 폰노이만

폰 노이만의 사진
존 폰노이만

존 폰 노이만(John von Neumann)은 20세기의 중요한 수학자, 컴퓨터 과학자, 물리학자, 및 게임 이론 연구자 중 하나로 꼽힙니다. 그는 1903년에 태어나 1957년에 사망했습니다. 폰 노이만은 다양한 분야에서 혁신적인 연구를 했으며 그의 업적은 컴퓨터 과학, 수리 논리학, 양자 역학, 게임 이론 등에 큰 영향을 미쳤습니다.

 

그는 현대 컴퓨터 아키텍처의 중요한 개념 중 하나인 "폰 노이만 아키텍처"를 개발하였습니다. 이 아키텍처는 프로그램과 데이터가 같은 메모리에 저장되어 프로그램을 자유롭게 수정하고 실행할 수 있는 컴퓨터 시스템의 기본 아이디어를 제시했습니다.

 

폰 노이만은 그의 다양한 분야에서의 기여로 인해 20세기 중요한 과학자 중 하나로 기억되며, 그의 업적은 현대 과학과 기술 분야에 지속적인 영향을 미치고 있습니다.

 

2.2. 애니악(ENIAC)

 

이 컴퓨터는 주로 포탄의 탄도학 계산에 사용되었으며, 1943년에 미 육군 소장인 글래디온 반즈에 의해 개발이 시작되었습니다. 에커트와 모클리의 공동 설계로 1946년 2월 14일에 완성된 30톤짜리 컴퓨터는 초기의 공학용 계산기로, 군용 목적으로 개발되었습니다. 그러나 제2차 세계 대전이 종료된 이후에 완성되어 전쟁에서는 활용되지 못했습니다.

 

이 컴퓨터는 원래의 목적인 탄도 계산을 넘어서서 다양한 과학 분야에서 활용되었습니다. 그중에는 난수 연구, 우주선 연구, 풍동 설계, 일기예보의 수치예보 연구 등이 포함되었습니다. 또한, 초기형 수소폭탄 시뮬레이션에도 사용되었습니다.

 

이 컴퓨터의 성능은 현재의 전자계산기와는 비교할 수 없을 정도로 낮았습니다. 주파수는 kHz 수준이었으며, 현재의 가정용 전자계산기와 비교하면 상당히 한계적인 수준이었습니다. 그럼에도 불구하고, 이 컴퓨터는 기술 발전과 정보기술의 시발점으로 기여하였습니다.

 

진공관 커패시터 기계식 스위치 저항 클럭수 전력량
18800개 10000개 6000개 70000개 100kHz 180kW

 

2.3. 존 폰노이만 구조 등장 (에드삭 EDSAC)

에드삭 컴퓨터 사진
에드삭의 모습

컴퓨터의 역사는 폰 노이만과 그의 컴퓨터 아키텍처에 큰 변화를 겪었습니다. 이 변화는 컴퓨터의 운영 방식과 발전에 혁명을 일으켰으며, 현재의 모든 범용 컴퓨터가 이 구조를 따르고 있습니다.

 

애니악(ENIAC)은 폰 노이만의 컴퓨터 아키텍처가 도입되기 이전에 사용된 컴퓨터입니다. 애니악은 계산을 수행할 때마다 직접 진공관 회로 스위치를 조정하여 입력을 처리하는 하드웨어 프로그램 방식을 사용했습니다.

 

하지만 폰 노이만은 "프로그램 내장 방식 컴퓨터"를 처음으로 제안하였습니다. 그 결과, 에드삭(EDSAC)이라는 컴퓨터가 제작되었고, 이것이 현재까지 사용되고 있는 컴퓨터 아키텍처의 기반이 되었습니다.

폰노이만 구조의 따른 구조모습으로 CPU와 메모리가 버스로 연결되어있는 모습니다.

폰 노이만 구조는 중앙처리장치(CPU), 메모리, 프로그램 세 가지 주요 요소로 구성됩니다. 이 구조에서 CPU와 메모리는 서로 분리되어 있으며 버스를 통해 데이터와 명령어를 주고받습니다. 이러한 분리된 구조는 명령어와 데이터를 동시에 접근할 수 없게 합니다.

 

폰 노이만 구조의 가장 큰 장점은 프로그램 내장 방식 컴퓨터라는 것입니다. 이것은 컴퓨터에 덧셈, 뺄셈과 같은 연산 기능을 소프트웨어로 내장시켜 놓았기 때문에, 사용자가 매번 하드웨어 연결을 변경하지 않고도 다양한 작업을 수행할 수 있게 해주었습니다.

 

이러한 구조에서 CPU는 메모리에 저장된 명령어를 가져와(fetch) 명령어를 해석하고(decode), 실행(execute)하며 결과를 저장(store)합니다. 또한, 폰 노이만 구조는 명령어를 순차적으로 처리하기 때문에 명령어가 한 번에 하나씩 실행됩니다.

폰 노이만의 컴퓨터 아키텍처는 컴퓨터 역사에서 혁명적인 역할을 하였으며, 현재까지도 컴퓨터의 기본 아키텍처로 사용되고 있습니다. 그의 아이디어는 컴퓨팅 분야에서 큰 변화를 가져오면서 우리의 디지털 세계를 형성하였습니다.

 

3. 장점

 

폰 노이만 구조의 주요 장점은 하드웨어를 재배치할 필요 없이 소프트웨어만 교체하여 다른 작업을 수행할 수 있다는 것이다. 이로써 인력과 시간을 절약하며 효율성을 극대화할 수 있다.

 

4. 단점

 

폰 노이만 구조의 주요 단점은 메모리 병목 현상이 발생할 수 있다는 점이다. 메모리 값의 읽기와 쓰기 작업이 메모리 계층 구조와 관련된 문제를 야기할 수 있으며, 정해진 입력에 따라 정해진 출력만 생성하는 한정적인 구조로 인해 실제 난수 생성과 같은 작업에는 한계가 있다.

폰 노이만 구조의 문제인 병목현상의 문제점을 나타내는 그림이다.
병목현상의 예시

5. 해결책 

 

컴퓨터의 역사를 살펴보면 폰 노이만 구조가 인간의 사고 과정에서 영감을 받아 설계되었다. 우리가 어떤 계산을 수행할 때, 뇌가 기억된 정보를 불러와 계산하는 과정과 폰 노이만 구조는 유사한 면이 있었다. 그러나 이러한 구조는 중요한 단점을 가지고 있었으며, 그 중요성은 폰 노이만 병목현상(Von-Neumann Bottleneck)에서 드러났다. 이 현상은 컴퓨터의 계산 속도가 기억장치 속도에 의해 제한된다는 것을 의미한다.

 

폰 노이만 병목현상을 극복하기 위해 다양한 기술과 구조가 등장했다. 그중에서도 하버드 구조(Harvard Architecture)는 주목할 만한 혁신 중 하나였다. 폰 노이만 구조에서 병목현상은 프로그램 메모리와 데이터 메모리가 하나의 버스를 공유하기 때문에 발생한다. 하버드 구조는 이러한 문제를 해결하기 위해 명령어와 데이터를 물리적으로 구분하는 명령용 버스와 데이터용 버스를 도입했다.

폰노이만의 병목현상을 해결하는 하버드 구조의 모습이다.
하버드 구조

하버드 구조는 CPU가 명령어와 데이터를 동시에 접근할 수 있도록 하여 폰 노이만 구조보다 더 빠른 속도를 제공한다. 현대의 대부분의 컴퓨터는 외부적으로는 폰 노이만 구조를 기반으로 하지만 내부적으로 하버드 구조를 사용하여 이러한 장점을 살려 속도를 향상했다.

 

이외에도 메모리 자체에 연산기능을 추가하여 병목현상 및 전력효율을 개선시키는 PIM 방식도 있습니다. 자세한 내용은 아래 글을 참고 바랍니다.

 

2023.09.02 - [AI/이것저것] - HBM-PIM이란? (HBM과의 비교 및 특징/장점)

 

HBM-PIM이란? (HBM과의 비교및 특징/장점)

1. 서론 PIM(Processing-In-Memory) 기술은 인공지능 분야와 반도체 기술 간의 혁신적인 관계를 논의할 때 핵심 주제 중 하나입니다. 인공지능의 급격한 발전은 대량의 데이터 처리와 복잡한 계산 능력

informyun.com

 

반응형

loading