MPU(Micro Processor Unit)

Donghwi Kim·2024년 2월 25일
0

잡다한 개발 지식

목록 보기
25/26

Micro Processor

CPU의 핵심 기능을 통합한 집적 회로(IC).

프로그램 가능한 다목적 실리콘 칩으로서, 클럭 구동 방식/레지스터 기반, 이진 데이터를 입력으로 받아들이고 메모리에 저장된 지침에 따라 처리한 후 출력을 제공한다.


작동 방식

프로세서는 기본적으로 ALU, ControlUnit 및 RegisterArray로 구성된 컴퓨터의 두뇌이다.

  • ALU: IO 장치 or Memory에서 수신한 데이터에 대한 모든 산술 논리 연산 수행.
  • ControllUnit: 시스템 전체에서 명령 및 데이터 흐름 제어
  • RegisterArray: 데이터 처리를 위한 임시 고속 액세스 메모리 위치로 작동하는 일련의 레지스터로 구성됨.

기본적으로 마이크로 프로세서는 IO 장치에서 입력을 취하여 메모리에 주어진 지시에 따라 처리하고 출력을 생성.

공통 용어

마이크로 프로세서 분야에서 사용되는 몇 가지 공통 용어가 있음

버스
데이터를 전송하거나, 정보를 마이크로 프로세서의 다른 요소에 주소를 지정하거나 제어하기 위한 도체 집합.

  • 일반적으로 데이터 버스, 제어 버스 및 주소 버스의 3가지 유형의 버스를 가진다.
    • 데이터 버스: 실제 데이터 비트 전송에 사용. CPU와 메모리 간의 데이터 읽기/쓰기, 주변 장치와의 데이터 전송은 데이터 버스를 통해 이루어짐. 데이터 버스의 너비 or 폭은 한 번에 전송되는 데이터 비트 수.
    • 제어 버스: 시스템의 제어 신호 및 명령을 전송하는 데 사용. CPU와 다른 하드웨어 컴포넌트 간의 제어 신호를 주고받아 시스템 동작을 조절한다. CPU가 메모리에서 데이터를 읽기 위해 데이터 버스를 사용하기 전 제어 버스를 통해 읽기 명령 발행
    • 주소 버스: CPU가 메모리 or 주변장치에서 데이터를 읽거나 쓸 때 사용되는 주소 정보를 전송하는 데 사용. 주소 버스의 너비는 주소 공간의 크기를 결정. 16비트 주소 버스를 갖는 시스템은 최대 2^16(64K)개의 주소를 지원하며, 32비트 주소 버스 시스템은 2^32(약 4GB) 개의 주소를 지원
  • 8비트 프로세스가 8비트 광역 버스를 사용

명령 집합

마이크로 프로세서가 이해할 수 있는 명령 그룹. 하드웨어와 소프트웨어 간의 인터페이스.
명령어는 프로세서가 데이터 처리를 위해 관련 트랜지스터를 전환하도록 명령한다.
예를 들어 ADDA, B;는 레지스터 A와 B에 저장된 2개의 번호를 추가하는 데 사용된다.

단어 길이

프로세서의 내부 데이터 버스에 있는 비트 수 or 한 번에 처리할 수 있는 비트 수. 데이터 버스의 크기라고 생각하면 될 듯.

캐시 메모리

프로세서에 통합된 랜덤 액세스 메모리.
일반 RAM보다 캐시 메모리의 데이터에 더 빨리 액세스 할 수 있음. CPU 메모리라고도 한다.
캐시 메모리는 작업 중에 소프트웨어 또는 프로그램에서 자주 참조하는 데이터 or 지침을 저장하는 데 사용된다.

클럭 속도

마이크로 프로세서는 클럭 신호를 사용하여 명령이 실행되는 속도를 제어하고, 다른 내부 구성 요소를 동기화하고, 명령 간의 데이터 전송을 제어한다. 클럭 속도는 마이크로 프로세서가 명령을 실행하는 속도를 말한다.
일반적으로 Hz(헤르츠)로 측정된다.

RISC(Reduced Instruction Set Computer)

마이크로 프로세서 아키텍처의 한 종류.
전문화된 명령어 세트가 아닌 소규모의 일반적인 목적과 고도로 최적화된 명령 세트를 사용. CISC에 비해 상대적으로 높은 성능을 제공.

주요 특징

1. 간소화된 명령어 집합: 간단하고 기본적인 연산을 수행하는 데 중점을 둔다. 복잡한 명령어나 주소 지정 모드는 제거되거나 최소화된다.

2. 고정된 명령어 길이: 일반적으로 고정된 길이를 가지며, 이로써 명령어 디코딩 및 실행이 간단해진다. 이러한 간소화된 형식은 하드웨어 구현을 단순화하고 성능을 향상시킨다.

3. 파이프라인 구조: 파이프라인 구조를 사용하여 명령어 실행을 분할하고 병렬 처리를 향상시킨다. 이로 인해 한 번에 여러 명령어를 처리할 수 있으며 실행 속도를 높일 수 있다.

4. 빠른 명령어 실행: 명령어는 단순하며 주로 레지스터 간의 연산을 수행한다. 이로 인해 명령어 실행이 빠르고 효율적이다.

5. 레지스터 사용: RISC 아키텍처는 많은 수의 레지스터를 사용하여 데이터 및 주소를 저장하고 연산에 활용한다. 이는 메모리 액세스를 줄이고 프로세서 성능을 향상시킨다.

장점

  • 빠른 실행 속도: 간소화된 명령어와 파이프라인 구조로 인한 빠른 실행 속도를 제공.
  • 하드웨어 단순화: 명령어 집합이 간소화되고 고정된 길이의 명령어를 사용하므로 하드웨어 디자인이 단순화.
  • 성능 예측 가능성: 명령어 실행이 예측 가능하므로 프로세서 성능을 예측하기 쉬움.
  • 전력 효율성: RISC 아키텍처는 전력 효율성을 높이는 경향이 있음.

CISC(Complex Instruction Set Computer)

마이크로 프로세서 아키텍처의 한 종류.
프로그램별 명령 수를 줄이기 위해 명령별 사이클 수를 무시한다.
따라서 하드웨어에 직접 복잡한 지침이 적용되므로 프로세서가 복잡해지고 작동 속도가 느려진다.
이 아키텍처는 실제로 프로그램 길이를 줄여 메모리 비용을 줄이도록 설계되었다.

주요 특징

1. 다양한 명령어 집합: 명령어들은 복잡한 연산 및 주소 지정 모드를 처리하는 데 사용됩니다. 이로써 하나의 명령어로 여러 동작을 수행할 수 있다.

2. 가변 길이 명령어: 가변 길이를 가질 수 있으며, 이로 인해 명령어 디코딩이 복잡할 수 있다.

3. 메모리 접근 복잡성: 메모리 주소를 자동으로 처리하는 데 필요한 복잡한 주소 계산 모드를 갖고 있습니다. 이로 인해 명령어 실행이 느릴 수 있다.

4. 파이프라인 구조: 일부 CISC 프로세서는 파이프라인을 사용하여 명령어 실행을 병렬로 처리하려고 시도한다. 그러나 파이프라인 구조는 명령어의 가변 길이 및 복잡성으로 인해 효과적이지 않을 수 있다.

5. 레지스터 사용: CISC 아키텍처는 레지스터 사용을 강조하지만 메모리에 대한 접근도 높게 의존한다.

장점

  • 복잡한 연산: 하나의 명령어로 복잡한 연산을 수행할 수 있어 프로그래밍이 편리함.
  • 메모리 접근 감소: 메모리에 대한 접근 횟수가 줄어들어 메모리 대역폭을 효율적으로 활용할 수 있음.

단점

  • 디코딩 복잡성: 명령어 디코딩 및 실행이 복잡하므로 프로세서 설계가 어려울 수 있음.
  • 성능 예측 어려움: 명령어 실행 시간이 다양하므로 프로세서 성능 예측이 어려울 수 있음.
  • 전력 효율성: 복잡한 명령어와 복잡한 주소 지정 모드로 인해 전력 효율성이 낮을 수 있음.

DSP - 디지털 신호 처리기

디지털 신호 처리를 위해 특별히 설계된 마이크로 프로세서.
아날로그 신호를 디지털 형식으로 샘플링하고 처리하여 신호 처리 작업을 수행.

주요 특징

1. 디지털 신호 처리: 아날로그 신호를 디지털 데이터로 변환하고, 디지털 신호 처리 알고리즘을 적용하여 필요한 작업을 수행한다.

2. 고성능 및 고속 처리: 높은 처리 속도와 낮은 지연 시간을 제공한다. 이는 음성 및 영상 신호 처리, 통신 시스템에서 중요하다.

3. 프로그래밍 가능: 사용자가 다양한 애플리케이션에 맞게 프로그래밍할 수 있다. 이는 유연성을 제공하며, 새로운 신호 처리 알고리즘을 구현하기에 적합하다.

4. 실시간 처리: 많은 DSP 시스템은 실시간 응용 분야에서 사용되며, 매우 빠른 신호 처리가 요구된다.

5. 저전력 소비: 휴대용 장치 및 배터리 작동 시스템에서도 사용된다. 저전력 DSP는 에너지 효율적인 신호 처리를 가능하게 한다.

응용 분야

  • 음성 처리: 음성 인식, 음성 압축, 음성 효과 처리 및 음성 통신 시스템에서 사용.
  • 영상 처리: 디지털 카메라, 비디오 스트리밍, 영상 인식 및 처리, 영상 향상 기술에서 사용.
  • 통신 시스템: 휴대전화, 무선 통신, 위성 통신, 레이더 및 소프트웨어 라디오에서 사용.
  • 제어 시스템: 자동차 제어 시스템, 로봇 공학, 산업 자동화 및 로봇 컨트롤에서 사용.
  • 의료 이미지 처리: 의료 영상 및 의료 진단 장치에서 영상 처리를 위해 사용.

0개의 댓글

관련 채용 정보