컴퓨터/컴퓨터 관련 지식

임베디드 - 아두이노(MCU) vs 라즈베리파이(MPU)

달서비 2022. 7. 30. 10:31

언젠가는 꼭 써보고 싶었던 특집인데 그동안 밀어두다가 적게 되었습니다. 임베디드에서 교육용으로 보통 아두이노(ATmega128) 혹은 라즈베리파이(ARM)를 많이 사용합니다. 임베디드에 조금이라도 관심을 가지시는 분들은 아시겠지만 엄연하게 사용하는 역할이 다릅니다. 이번에는 각각의 차이점을 알아보는 시간을 가져보도록 하겠습니다. 

아두이노와 라즈베리파이 로고

우선 시작하기 앞서서 스포 하자면 둘의 가장 큰 차이는 운영체제를 사용할수 있는 유무가 가장 큰 차이점입니다.

 

(좌) 아두이노 우노, (우) 라즈베리파이 3B

아두이노 VS 라즈베리파이

위에서 말한 것과 같이 아두이노와 라즈베리파이의 차이점은 운영체제를 돌릴수 있는 것의 차이입니다. 

아두이노 같은 경우에는 외부 프로그램을 사용하여 업로드하면 직접 핀을 제어합니다. 

하지만 라즈베리파이 같은 경우에는 운영체제 안에서 직접 프로그래밍하여 해당 핀을 제어합니다. 

 

아두이노와 라즈베리파이는 위의 특징을 가져 각각 마이크로 컨트롤러와 마이크로 프로세서로 구분합니다.

 

마이크로 컨트롤러(MCU) VS 마이크로 프로세서(MPU)

(좌) ATMEGA328(MCU), (우) ARMv8-A(MPU)

우선 마이크로 컨트롤러의 약자와 마이크로 프로세서의 약자는 다음과 같습니다.

  • 마이크로컨트롤러 (Micro Controller Unit)
  • 마이크로프로세서 (Micro Processor Unit)

MCU와 MPU의 공통점은 프로세서 중심으로 돌아간다는 점입니다. 프로세서를 통하여 연산처리를 한다는 점에서 두 가지의 역할이 같습니다. 하지만 차이점이 있다면 메모리, IO장치가 어디에 있는가에 차이가 있습니다.

MCU 같은 경우에는 전부다 칩 안에 내장이 되어 있어 칩 하나 만으로 주변장치(핀)를 조정할 수 있습니다. 하지만 MPU 같은 경우에는 주변장치들을 추가하여 다뤄야 합니다. 해당 부분의 결정적인 차이점을 가지고 있습니다. 대신에 MPU는 연산에 특화되어 있기 때문에 데이터 처리에 있어서 많이 유리합니다. 메모리, IO장치와 연동하여 효율적인 연산처리를 위하여 MPU에는 운영체제를 설치하여 사용합니다. 

 

한마디로 요약하자면 칩 혼자서 전체를 다루는 강한친구가 이 MCU고 자신은 연산에 특화되어 주변을 다루는 똑똑한 친구가 MPU입니다.

  마이크로 컨트롤러 마이크로 프로세서
프로세서 성능 ▼ (약하다) ▲ (계산특화)
IO장치 다루는 파워 ▲ (MPU보다 강하다)
RAM,IO장치 내장되어있다 외부에 달아야한다
운영체제 X O
가격 ▼ (저렴하다) ▲ (가격이 있다)

 

마이크로프로세서 - pixabay

어느 하나가 더 좋고 나쁘고 가 없습니다. 대신 마이크로 컨트롤러, 마이크로 프로세서는 각각 고유한 역할이 있으며 필요한 역할을 골라서 이용하면 됩니다.