폰 노이만 구조

폰 노이만 구조는 존 폰 노이만이 제시한 컴퓨터 아키텍처로, 프로그램 내장 방식이라고도 불립니다.

역사

폰 노이만 구조 이전의 컴퓨터는 배전반의 연결을 통해 연산을 수행했습니다. 만약 연산의 구조가 바뀐다면 직접 전선의 위치를 바꿔가며 프로그래밍을 수행해야 했다고 합니다. 끔찍하네요..

image

이런 번거로운 방식을 해결하기 위해 1945년, 우리의 폰 노이만 선생님께서는 새로운 구조를 발표합니다.

폰 노이만 구조의 특징

image
폰 노이만 구조는 최초로 등장한 프로그램 내장 방식의 컴퓨터 방식으로, 하드웨어적으로 전선을 재배치하는 기존의 방식과는 달리 소프트웨어의 교체 만으로 다른 연산을 수행할 수 있습니다.
먼저 연산의 수행과 관련된 명령어와, 연산에 필요하거나 결과로 나온 데이터를 메모리에 저장하며, 순차적으로 메모리에 저장된 것을 꺼내 연산을 수행합니다.

폰 노이만 구조 컴퓨터의 명령 주기

폰 노이만 구조의 컴퓨터에서는 미리 연산 수행에 관련된 명령어가 기억장치에 저장되어 있고, 이를 가져와 지시대로 연산을 수행합니다. 이를 명령어 실행 사이클이라고 합니다.
명령어 실행 사이클은 간략하게 다음과 같은 3단계를 거칩니다.

1. 명령어 가져오기
2. 명령어 실행하기
3. 인터럽트 체크 이를 세분화하면 5단계가 됩니다.

1. 명령어 가져오기(IF, Instruction Fetch)
    - 메모리로부터 명령어를 가져옵니다.
2. 명령어 해석(ID, Instruction Decode)
    - 앞서 가져온 명령어의 의미를 해석합니다.
3. 피연산자 인출(OF, Operands Fetch)
    - 명령의 실행에 필요한 정보를 메모리에서 가져옵니다.
4. 명령어 실행(EX, Instrction Execution)
    - 앞서 가져온 연산자와 데이터를 가지고 연산을 수행하고 결과를 저장합니다.
5. 인터럽트 체크 폰 노이만 구조 이후의 컴퓨터는 명령어 실행 사이클을 계속해서 반복합니다.

참고