아키텍처(architecture)란? 그리고 폰노이만구조와 하버드구조

컴퓨터구조 2015. 4. 30. 18:19

※ 아키텍처

정보기술에서, 특히 컴퓨터나 최근의 네트웍에서 말하는 아키텍처란, 프로세스와 전체적인 구조나 논리적 요소들 그리고 컴퓨터와 운영체계, 네트웍 및 기타 다른 개념들 간의 논리적 상호관계 등을 생각해내고 정의하는 등, 모든 곳에 적용되는 용어이다. 아키텍처는 OSI참조모델처럼 하나의 참조 모델이 될 수도 있지만, 특정 제품의 구조를 위한 모델을 의미하거나, 또는 인텔 펜티엄 프로세서나 IBM의 OS/390 운영체계처럼 특정 제품의 구조가 될 수도 있다.

컴퓨터 아키텍처는 입출력, 저장, 통신, 제어, 처리 등 다섯 개의 기본요소로 나뉠수 있다. 실제로 이러한 각 요소들(때로는 서브시스템이라고 불린다)는 아키텍처를 가지고 있다고 말하는 경우가 간혹 있다. 그러므로, 다른 경우와 마찬가지로 이러한 경우에는 관용적인 의미의 하나이다.

비교해보면, 설계라는 용어는 아키텍처보다 더 적은 범위의 의미를 내포하고 있다. 아키텍처는 하나의 설계이지만 대부분의 설계들이 아키텍처는 아니다. 하나의 단일요소 또는 어떤 새로운 기능은 전체적인 아키텍처 내에 맞추어지도록 설계된다.

비슷한 용어로서, 프레임웍이라는 용어가 있는데, 아키텍처의 일부 구조물이라고 생각할 수도 있다.



※ 폰 노이만 구조 (Von Neumann)

프로그램과 데이터를 하나의 메모리에 저장하여 데이터는 메모리에서 읽거나 메모리로 쓰기도 하는 반면, 명령어는 메모리에서 읽기만 하는 구조. CISC 구조


※ 하버드 구조 (Harvard)

폰 노이만 아키텍처의 변형으로써 명령어와 데이터가 서로 다른 메모리 영역을 차지하며 메모리 영영마다 주소버스, 데이터 버스, 제어 버스가 따로 존재한다. 또한 명령어와 데이터를 동시에 읽어 들일 수 있으며 명령어 길이가 표준 데이터 크기(워드)로 제한 받지 않는다. 명령 구조상 RISC구조이다.