CS/마이크로프로세서

[마이크로프로세서] 분류

nowkoes 2023. 10. 2. 16:15

마이크로컨트롤러 분류

개요

 마이크로컨트롤러는 여러 기준에 따라 분류될 수 있다. 주요 분류 기준은 비트 수, 메모리 접근 방식, 그리고 명령어 구성 방식이다. 각 분류 기준에 따라 마이크로컨트롤러의 특성과 사용법이 달라질 수 있으므로, 이를 이해하고 적절한 마이크로컨트롤러를 선택하는 능력이 필요하다. 따라서 이번 시간에는 이러한 분류법에 대해 배워보도록 하겠다.


본문

비트 수에 의한 분류

 비트 수에 의한 마이크로컨트롤러의 분류는 주로 데이터 버스의 너비를 기준으로 한다. 이는 마이크로프로세서가 한 번에 처리할 수 있는 데이터의 양을 의미하는데, 비트 수에 따라 다음과 같이 주요 분류가 이루어진다.

 

 먼저 8비트 마이크로프로세서는 주로 센서 데이터의 읽기, 기본적인 모터 제어, 그리고 간단한 통신 기능과 같은 기본적인 작업에 적합한 프로세서다. 저전력 및 저비용 기기에 적합하며, 가정용 기기나 일상생활에서 흔히 볼 수 있는 제품에 주로 사용된다.

 

 16비트 프로세서는 중간 수준의 처리 능력을 가지며, 복잡한 알고리즘 실행이나 데이터 처리에 적합하다. 고속 연산, 복잡한 입출력 제어, 네트워킹과 같은 작업에 주로 사용되지만, 8비트와 32비트 프로세서의 발전으로 인해 점차 사용 빈도가 감소하고 있는 추세다.

 

 32비트 프로세서는 높은 처리 능력을 보유하며, 고성능이 필요한 어플리케이션에 주로 사용된다. 그래픽 처리, 고속 데이터 처리, 복잡한 통신 및 네트워킹과 같은 고급 작업에 적합하며, 최근에는 임베디드 시스템에서도 널리 사용되고 있다. 


메모리 접근 방식에 의한 분류

 메모리 접근 방식에 의한 분류는 명령어와 데이터가 메모리에서 어떻게 처리되는지에 따라 나누는 방법이다. 크게 폰 노이만 구조와 하버드 구조로 나눌 수 있다.

 

 

 폰 노이만(Von Neumann) 구조명령어 메모리와 데이터 메모리가 동일한 메모리 공간을 공유한다. 이 의미는 명령어와 데이터가 동일한 메모리 주소 공간에 저장된다는 것과 단일 데이터 버스와 주소 버스를 갖고 있다는 것을 의미한다. 또한 명령어와 데이터는 한 번에 하나의 메모리 연산만 수행하는 내장 메모리 순차 처리 방식을 사용한다.

 

 폰 노이만 구조는 통합된 메모리 구조와 단일 버스 시스템을 사용하여 설계가 단순하므로 별도의 복잡한 구조나 관리가 필요하지 않다. 또한 필요에 따라 동적으로 메모리 공간을 조정할 수 있어 유연성을 갖추고 있다. 그리고 모든 정보가 동일한 방식으로 메모리에 저장되므로, 프로그래밍과 메모리 관리가 더 간단하고 일관성 있다.

 

 하지만 명령어를 읽는 동안 데이터 접근이 일시 중단되거나, 데이터를 접근하는 동안 명령어 읽기가 중단되는 병목 현상이 발생할 수 있다. 또한 동일한 대역폭을 공유한다는 특성 때문에 메모리 대역폭이 제한될 수 있다는 단점이 있다.

 

 

 하버드(Harvard) 구조는 폰 노이만 구조의 병목 현상을 해결하기 위해 등장한 기법으로, 데이터와 명령어를 위한 메모리와 버스가 별도로 존재한다. 이로 인해 데이터와 명령어가 동시에 처리(병렬 처리)될 수 있어, 실시간 시스템이나 고성능 마이크로컨트롤러, 디지털 신호 처리기 등에 사용된다. 

 

 하지만 물리적으로 구분된 데이터 영역과 프로그램 영역을 유지하기 위해 복잡한 물리적, 전기적 설계가 필요하고, 하드웨어 비용이 증가한다는 단점이 있다. 또한 프로그래머가 두 개의 메모리 영역을 고려하여 소프트웨어를 작성해야 하므로, 개발 과정이 복잡하다는 단점이 있다.


명령어 구성 방식에 의한 분류

 명령어 구성 방식에 의한 분류는 크게 CISC와 RISC로 나뉜다. 이에 대한 내용은 컴퓨터 구조 시간에 배웠으므로, 해당 링크를 통해 자세한 내용을 알아보면 되겠다.


요약

마이크로컨트롤러 분류
1. 비트 수
 a. 8비트: 소용량 마이크로 컨트롤러로, 저전력 및 저비용 기기에 적합
 b. 16비트: 중간 수준의 처리 능력을 가지고, 고속의 마이크로 컨트롤러로 사용
 c. 32비트: 높은 수준의 처리 능력을 가지고, 고성능 및 고비용 기기에 적합
2. 메모리 접근 방식
 a. 폰 노이만 구조
  - 데이터 메모리와 프로그램 메모리가 구분되지 않고, 내장 메모리 순차 처리 방식을 사용.
  - 장점: 설계가 간단하고 동적으로 메모리 공간을 관리할 수 있음
  - 단점: 병목 현상
 b. 하버드 구조
  - 데이터 영역과 프로그램 영역이 물리적으로 구분되어 있음
  - 장점: 병렬 처리가 가능하며 속도가 빠름
  - 단점: 개발 과정이 복잡하고, 고비용
3. 명령어 구성 방식에 의한 분류
 a. CISC(가변 길이)
  - 하나의 명령어로 복잡한 작업을 수행하며, 많은 명령여 세트를 보유. 주로 폰 노이만 구조에 사용됨
  - 장점: 프로그램 메모리를 효율적으로 사용하고, 메모리 접근 횟수가 감소
  - 단점: 명령어마다 길이가 달라 병렬 처리가 어렵고, 해석이 어려움. 하드웨어가 큼
 b. RISC(고정 길이)
  - 단순한 명령어를 반복해서 복잡한 작업을 수행. 주로 하버드 구조에 사용됨
  - 장점: 병렬 처리 가능, 하드웨어 소형화 가능
  - 단점: 복잡한 명령어를 처리하려면 메모리 사용량이 증가하며, 고성능 컴파일러가 필요

반응형