728x90
반응형
Von Neumann Architecture 폰 노이만 구조
거의 모든 컴퓨터의 기본이 되는 구조
Idea
- 연산
- 제어
- 저장
세 가지의 핵심 기능이 필요함
연산 & 제어 → CPU
저장 → memory
장치 간 데이터 및 신호 교환 → bus
CPU 중앙 처리 장치
- ALU (산술 논리 장치) : 산술 및 논리 연산을 실행함
- Control Unit : CPU를 제어하는 제어장치
- Register (레지스터) : CPU에 필요한 데이터를 저장함 - Program counter 등이 포함되어 있음
등으로 이루어짐
Memory 기억장치
- 주기억장치 (Ram) : 프로그램 실행과정에서 필요한 데이터들을 임시로 저장하기 위해 사용
- 보조기억장치 (HDD, SSD) : 운영 체제, 프로그램 등과 같은 데이터를 장기간 보관하고자 할 때 사용
Bus 버스
컴퓨터 부품과 부품 사이 또는 컴퓨터와 컴퓨터 사이에 신호를 전송하는 통로
- 데이터 버스(Data Bus)
- 주소 버스(Address Bus)
- 제어 버스(Control Bus)
등이 존재함
단점 - 병목현상
폰노이만 구조에서는 명령과 데이터를 모두 메모리에 저장하여 사용함
CPU는 명령어와 데이터를 모두 메모리에서 가져와서 사용하게 됨
- 메모리 대역폭 제한: 대규모 데이터를 처리하거나 많은 명령어를 순차적으로 실행할 때, CPU와 메모리 간의 데이터 전송 속도가 한계에 도달할 수 있음. 이 경우 CPU는 메모리 접근이 끝날 때까지 대기해야 하며, 실행 속도가 저하됨
- 메모리 지연: 메모리 접근 시간이 일관적이지 않거나 지연될 경우, CPU가 명령어를 실행하는 동안 대기해야 할 수 있음. 메모리의 지연은 CPU의 처리 속도를 제한할 수 있음
병목현상 해결 방법 - 캐시메모리 사용, 메모리 계층 구조 최적화
Harvard Architecture 하버드 구조
기존 폰 노이만 구조에서는 명령어와 데이터를 같은 메모리, 같은 버스에서 가져오는 단순한 구조로 이루어졌다면, 하버드 구조는 폰 노이만 구조를 기반으로 하여 명령과 데이터를 다른 메모리, 다른 버스에서 가져오는 구조이다
폰노이만 구조의 병목현상을 해결하기 위해 개발됨
Modified Harvard Architecture 수정된 하버드 구조
하버드 구조가 메모리가 2개였다면, 수정된 하버드 구조는 메모리는 하나이지만, 캐시가 두개 이다
- data cache
- instruction cache
명령어와 데이터를 처리하는 캐시가 분리되어 있어 임시 접근 속도를 향상시킨다.
728x90
반응형
'CS > Computer Architecture' 카테고리의 다른 글
[Assembly] 데이터 이동 (0) | 2024.09.20 |
---|---|
Static Link vs Dynamic Link (0) | 2024.09.05 |
함수의 프롤로그 & 에필로그 (0) | 2024.08.22 |
Register (0) | 2024.08.16 |
[Assembly] Intel vs AT&T (2) | 2024.08.14 |