컴퓨터는 우리가 업무에 사용하는 기계부터 우리가 의존하는 스마트폰 및 스마트 워치에 이르기까지 일상 생활의 핵심 부분입니다.
크기에 관계없이 모든 컴퓨터는 소프트웨어와 하드웨어가 함께 결합하고 상호 작용하여 작동하도록 하는 방법을 설명하는 일련의 규칙을 기반으로 합니다. 이것이 바로 컴퓨터 아키텍처로 알려진 것입니다. 이 기사에서 우리는 실제로 컴퓨터 아키텍처가 무엇인지 탐구할 것입니다.
컴퓨터 아키텍처는 컴퓨터 시스템을 구성하는 구성 요소의 조직과 그 기능을 안내하는 작업의 의미입니다. 프로그래밍 언어 및 해당 컴파일러의 대상이 되는 기계 인터페이스에 표시되는 내용을 정의합니다.
컴퓨터 아키텍처의 세 가지 범주
컴퓨터 아키텍처에는 세 가지 범주가 있으며 모두 함께 작동하여 기계 기능을 만듭니다.
시스템 디자인
시스템 설계에는 데이터 프로세서, 다중 프로세서, 메모리 컨트롤러 및 직접 메모리 액세스를 비롯한 컴퓨터의 모든 하드웨어 부품이 포함됩니다. GPU(그래픽 처리 장치)도 포함됩니다. 이 부분은 물리적 컴퓨터 시스템입니다.
명령어 세트 아키텍처(ISA)
여기에는 중앙 처리 장치(CPU)의 기능과 기능이 포함됩니다. 임베디드 프로그래밍 언어이며 수행하거나 처리할 수 있는 프로그래밍을 정의합니다. 이 부분은 PC의 Windows나 Apple iPhone의 iOS와 같은 운영 체제와 같이 컴퓨터를 실행하는 소프트웨어로 데이터 형식과 프로그래밍된 명령 집합을 포함합니다.
마이크로아키텍처
마이크로아키텍처는 컴퓨터 구성이라고도 하며 데이터 처리 및 저장 요소와 이를 ISA에 구현하는 방법을 정의합니다. ISA가 특정 프로세서에서 구현되는 방식의 하드웨어 구현입니다.
프로세서의 진화
CISC(복합 명령어 집합 컴퓨터)와 RISC(축소 명령어 집합 컴퓨터)는 프로세서 아키텍처에 대한 두 가지 주요 접근 방식입니다.
CISC 프로세서에는 단일 처리 장치, 외부 메모리 및 수백 가지 다른 명령이 포함된 작은 레지스터 세트가 있습니다. 이 프로세서는 작업을 수행하기 위한 단일 명령을 가지고 있으며 작업을 완료하는 데 필요한 코드 줄이 더 적기 때문에 프로그래머의 작업을 더 쉽게 만드는 이점이 있습니다. 이 접근 방식은 메모리를 덜 사용하지만 명령을 완료하는 데 더 오래 걸릴 수 있습니다.
RISC 아키텍처는 고성능 프로세서의 개발로 이어진 재고의 결과였습니다. 하드웨어는 가능한 한 간단하고 빠르게 유지되며 복잡한 명령은 더 간단한 명령으로 수행될 수 있습니다.
마이크로프로세서는 기계어 명령을 읽고 실행하는 디지털 시스템입니다. 명령어는 어셈블리 언어라는 기호 형식으로 표현됩니다. 이들은 단일 집적 회로에서 구현되는 프로세서입니다. 오늘날 사용되는 일반적인 마이크로프로세서는 Intel Pentium 시리즈, IBM PowerPC, Sun SPARC 등입니다. 거의 모든 최신 프로세서는 von Neumann 기계에서 표준으로 사용 가능한 마이크로프로세서입니다.
폰 노이만 건축
수학자 John von Neumann 과 그의 동료들은 1945년에 von Neumann 아키텍처를 제안했는데, 이 아키텍처에서는 컴퓨터가 다음과 같이 구성되어 있다고 명시했습니다. 버스라고 하는 연결을 사용하여 프로세서와 직접 통신할 수 있는 메모리 장치; 입/출력 장치 연결; 및 데이터 저장 및 백업을 위한 보조 저장소를 포함합니다.
이 아키텍처의 중심 계산 개념은 명령과 데이터가 모두 컴퓨터의 주 메모리이며 주소 지정 가능한 위치 집합으로 구성된 동일한 메모리 장치에 로드된다는 것입니다. 그런 다음 프로세서는 버스라고 하는 전용 연결을 사용하여 컴퓨터 프로그램 실행에 필요한 명령과 데이터에 액세스할 수 있습니다. .
폰 노이만 아키텍처의 장단점
폰 노이만 아키텍처가 제안된 이후 76년 동안 물리적 객체로서의 컴퓨터는 극적으로 변화했습니다. 1940년대의 슈퍼컴퓨터는 크기는 작지만 성능은 비약적으로 높은 현대의 스마트워치에 비해 방 전체를 차지했지만 아주 기본적인 기능을 가지고 있었습니다. 그러나 본질적으로 컴퓨터는 거의 변경되지 않았으며 그 사이에 만들어진 거의 모든 컴퓨터가 거의 동일한 폰 노이만 아키텍처에서 실행되었습니다.
폰 노이만 아키텍처가 성공한 데에는 여러 가지 이유가 있습니다. 하드웨어에서 구현하기가 상대적으로 쉽고 폰 노이만 기계는 결정론적이고 내성적입니다. 수학적으로 설명할 수 있으며 컴퓨팅 프로세스의 모든 단계를 이해할 수 있습니다. 또한 하나의 입력 세트에서 항상 동일한 출력을 생성하도록 의존할 수 있습니다.
폰 노이만 기계의 가장 큰 문제는 코딩하기 어렵다는 것입니다. 이것은 실제 문제를 폰 노이만 기계에 설명하는 컴퓨터 프로그래밍의 성장으로 이어졌습니다.
소프트웨어 프로그램이 작성될 때 알고리즘은 von Neumann 기계가 따를 수 있는 형식적인 명령으로 축소됩니다. 그러나 문제는 모든 알고리즘과 문제를 줄이기가 쉽지 않아 해결되지 않은 문제가 남는다는 것입니다.
하버드 아키텍처
폰 노이만 아키텍처보다 덜 인기 있는 또 다른 컴퓨터 아키텍처는 하버드 아키텍처입니다.
Harvard 아키텍처는 명령과 데이터를 별도의 메모리에 보관하고 프로세서는 별도의 버스를 사용하여 이러한 메모리에 액세스합니다. 프로세서는 주소 및 데이터 버스의 전용 세트를 사용하여 '명령 메모리'에 연결되고 다른 세트의 주소 및 데이터 버스를 사용하여 '데이터 메모리'에 연결됩니다.
이 아키텍처는 DSP(디지털 신호 처리) 시스템과 같은 임베디드 컴퓨팅 시스템에서 광범위하게 사용되며 많은 마이크로 컨트롤러 장치는 Harvard와 유사한 아키텍처를 사용합니다.
'Tech' 카테고리의 다른 글
네트워크 계층 (0) | 2022.05.28 |
---|---|
Python Try Except 문 (0) | 2022.05.27 |
초보자에게 유용한 언어 Python (0) | 2022.05.27 |
CORS(교차 출처 리소스 공유)란 ? (0) | 2022.05.26 |
컴퓨터 시스템의 기본 구조 (0) | 2022.05.26 |
댓글