처리 장치 인 임베디드 장치의 두뇌는 장치가 설계된 작업을 수행하는 데있어 장치의 성공 또는 실패를 결정하는 핵심 요소입니다. 처리 장치는 입력에서 시스템, 최종 출력에 이르는 모든 프로세스를 담당하므로 다른 모든 것이 해당 결정의 정확성에 따라 달라 지므로 장치 설계 중에 뇌에 적합한 플랫폼을 선택하는 것이 매우 중요합니다.
마이크로 컨트롤러 및 마이크로 프로세서
임베디드 장치에 사용되는 처리 구성 요소는 크게 두 가지 범주로 나눌 수 있습니다. 마이크로 컨트롤러 및 마이크로 프로세서.
마이크로 컨트롤러 는 프로그래밍 가능한 특수 및 범용 입출력 (I / O) 포트와 함께 메모리 장치가 내장 된 하나 이상의 처리 코어를 포함하는 단일 칩의 작은 컴퓨팅 장치입니다. 특히 반복적 인 특정 작업 만 수행해야하는 애플리케이션에 사용됩니다. 임베디드 프로젝트에 적합한 마이크로 컨트롤러를 선택하는 방법에 대해 이미 논의했습니다.
반면에 마이크로 프로세서 는 중앙 처리 장치의 모든 기능을 칩에 통합하지만 메모리와 같은 주변 장치와 마이크로 컨트롤러와 같은 입력 및 출력 핀을 포함하지 않는 범용 컴퓨팅 장치입니다.
제조업체는 현재 마이크로 프로세서 용 칩의 메모리 사용 및 마이크로 컨트롤러가 외부 메모리에 연결하는 기능과 같이 마이크로 컨트롤러와 마이크로 프로세서 간의 경계를 모호하게 만드는 많은 것들을 변경하고 있지만, 이러한 구성 요소 간에는 여전히 주요 차이점이 존재하며 설계자는 특정 프로젝트를 위해 그들 중에서 가장 좋은 것을 선택해야합니다.
마이크로 컨트롤러와 마이크로 프로세서의 차이점에 대해 자세히 알아보십시오.
MPU 또는 MCU를 선택할 때 고려할 요소
임베디드 제품 설계에 사용할 처리 장치에 대한 방향을 결정하기 전에 설계 사양을 개발하는 것이 중요합니다. 설계 사양을 개발하면 세부 사항, 해결해야 할 문제, 해결 방법, 사용할 구성 요소 등을 강조하는 데 도움이되는 장치 사전 설계를위한 방법이 제공됩니다. 이를 통해 설계자는 프로젝트에 대해 정보에 입각 한 일반적인 결정을 내리고 처리 장치로 이동할 방향을 결정하는 데 도움이됩니다.
마이크로 컨트롤러와 마이크로 프로세서 중에서 선택하기 전에 고려해야 할 설계 사양의 몇 가지 요소가 아래에 설명되어 있습니다.
1. 처리 능력
처리 능력은 마이크로 컨트롤러와 마이크로 프로세서 중에서 선택할 때 고려해야 할 주요 사항 중 하나입니다. 마이크로 프로세서에 사용되는 주요 요인 중 하나입니다. DMIPS (Dhrystone Million of Instructions Per Seconds)로 측정되며 마이크로 컨트롤러 또는 마이크로 프로세서가 1 초에 처리 할 수있는 명령어 수를 나타냅니다. 본질적으로 장치가 할당 된 작업을 얼마나 빨리 완료 할 수 있는지를 나타냅니다.
설계에 필요한 정확한 계산 능력을 결정하는 것은 매우 어려운 작업 일 수 있지만 작업을 검토하여 교육 된 추측을 할 수 있으며, 수행 할 장치가 생성되고 이러한 작업의 계산 요구 사항이 무엇 일 수 있습니다. 예를 들어 임베디드 Linux, Windows CE 또는 기타 OS 중 하나 의 전체 운영 체제를 사용해야하는 장치를 개발하려면 프로세서처럼 들리는 500DMIPS의 처리 능력이 필요합니까? 예. 여기에 추가하려면 장치에서 운영 체제를 실행 하려면 필요한 처리 능력을 높이는 메모리 관리 장치 (MMU)가 필요합니다. 많은 산술이 필요한 장치 응용 프로그램에도 매우 높은 DMIPS가 필요합니다.값과 장치가 수행하는 수학 / 숫자 계산이 많을수록 요구되는 처리 능력으로 인해 설계 요구 사항이 마이크로 프로세서 사용쪽으로 기울어집니다.
마이크로 프로세서와 마이크로 컨트롤러 사이의 선택에 영향을 미치는 처리 능력의 또 다른 주요 의미는 사용자 인터페이스 와 같은 것의 복잡성 또는 단순성입니다. 요즘에는 가장 기본적인 응용 프로그램에서도 다채롭고 상호 작용하는 GUI를 갖는 것이 바람직합니다. QT와 같은 사용자 인터페이스를 만드는 데 사용되는 대부분의 라이브러리에는 80 – 100DMIPS의 처리 능력이 필요하며 더 많은 애니메이션, 이미지 및 기타 멀티미디어 콘텐츠를 표시할수록 필요한 처리 능력이 더 많이 필요합니다. 그러나 저해상도 화면에서 더 간단한 사용자 인터페이스는 처리 능력이 거의 필요하지 않으며 요즘에는 많은 수의 마이크로 컨트롤러를 사용하여 전원을 공급할 수 있으며 다른 디스플레이와 상호 작용할 수있는 임베디드 인터페이스가 제공됩니다.
위에서 언급 한 일부 핵심 기능 외에도 통신 및 기타 주변 장치를 위해 일부 처리 능력 을 예약하는 것이 중요합니다. 위에 제시된 대부분의 예는 마이크로 프로세서의 사용을 지원하는 경향이 있지만 일반적으로 마이크로 컨트롤러에 비해 비용이 많이 들고 특정 솔루션에서 사용할 경우 과잉입니다. 예를 들어 전구를 자동화하기 위해 500DMIPS 마이크로 프로세서를 사용하면 전체 비용이 발생합니다 제품의 정상보다 높고 궁극적으로 시장에서 실패로 이어질 수 있습니다.
2. 인터페이스
제품의 여러 요소 를 연결 하는 데 사용되는 인터페이스 는 마이크로 컨트롤러와 마이크로 프로세서 사이에서 선택하기 전에 고려해야 할 요소 중 하나입니다. 사용할 처리 장치에 다른 구성 요소에 필요한 인터페이스가 있는지 확인하는 것이 중요합니다.
예를 들어 연결 및 통신 측면에서 대부분의 마이크로 컨트롤러와 마이크로 프로세서는 통신 장치에 연결하는 데 필요한 인터페이스를 갖추고 있지만 초고속 USB 3.0 인터페이스와 같은 고속 통신 주변 장치, 여러 개의 10/100 이더넷 포트 또는 기가비트 이더넷 포트가 필요한 경우 마이크로 프로세서를 지원하는 데 필요한 인터페이스는 일반적으로 많은 양의 데이터를 처리하고 처리 할 수 있고 데이터가 전송되는 속도를 더 잘 처리 할 수 있기 때문에 일반적으로 마이크로 프로세서에서만 발견됩니다.
이러한 인터페이스에 사용되는 프로토콜이 펌웨어에 필요한 메모리 양에 미치는 영향은 메모리 요구 사항을 증가시키는 경향이 있으므로 확인해야합니다. 특히 시스템이 운영 체제를 사용하는 경우 교환되는 많은 양의 데이터와 함께 고속 연결이 필요한 애플리케이션에 마이크로 프로세서 기반 설계를 채택 하는 것이 일반적 입니다.
3. 메모리
이 두 데이터 처리 장치는 메모리와 데이터 저장을 다르게 처리합니다. 예를 들어 마이크로 컨트롤러는 내장형 고정 메모리 장치와 함께 제공되는 반면 마이크로 프로세서는 메모리 장치를 연결할 수있는 인터페이스와 함께 제공됩니다. 이것의 두 가지 중요한 의미는 다음과 같습니다.
비용
마이크로 컨트롤러는 추가 메모리 장치를 사용할 필요가없는 반면 마이크로 프로세서는 이러한 추가 요구 사항으로 인해 채택되는 값 비싼 솔루션이되므로 더 저렴한 솔루션이됩니다.
제한된 메모리
마이크로 컨트롤러의 고정 메모리는 저장할 수있는 데이터의 양을 제한합니다. 일반적으로 외부 메모리 장치에 연결되므로 프로세서에 적용 할 수없는 상황입니다. 이 제한이 문제가 될 수있는 좋은 예는 장치 용 펌웨어를 개발할 때입니다. 코드 크기에 킬로바이트를 더 추가하려면 마이크로 컨트롤러를 사용해야 할 수 있지만 설계가 프로세서를 기반으로하는 경우 메모리 장치 만 변경하면됩니다. 따라서 마이크로 프로세서는 메모리에 더 많은 유연성을 제공합니다.
고려해야 할 메모리에 따라 몇 가지 다른 요소가 있으며 그중 하나 는 시작 (부팅) 시간 입니다. 예를 들어 마이크로 프로세서는 펌웨어를 외부 메모리 (일반적으로 외부 NAND 또는 직렬 플래시 메모리)에 저장하고 부팅시 펌웨어는 프로세서의 DRAM에로드됩니다. 이 작업은 몇 초 내에 발생하지만 특정 응용 프로그램에는 적합하지 않을 수 있습니다. 다른 한편으로 마이크로 컨트롤러는 시간이 적게 걸립니다.
일반적인 속도 고려 사항의 경우 MCU는 일반적으로 사용되는 프로세서 코어로 인해 가장 시간이 중요한 응용 프로그램을 처리 할 수있는 능력으로 인해 승리 합니다. 메모리가 내장되어 있고 여기에 사용되는 펌웨어는 항상 RTOS 또는 베어 메탈입니다. 씨.
4. 힘
마지막으로 고려해야 할 사항은 전력 소비입니다. 마이크로 프로세서에는 저전력 모드가 있지만 이러한 모드는 일반 MCU에서 사용할 수있는 모드만큼 많지 않으며 마이크로 프로세서 기반 설계에 필요한 외부 구성 요소를 사용하는 경우 저전력 모드를 달성하는 것이 약간 더 복잡합니다. 저전력 모드를 제외하고 MCU가 소비하는 실제 전력량은 마이크로 프로세서가 소비하는 전력량보다 훨씬 적습니다. 처리 능력이 클수록 프로세서를 가동 및 실행하는 데 필요한 전력량이 더 많기 때문입니다.
따라서 마이크로 컨트롤러 는 원격 제어, 가전 제품 및 배터리 수명의 수명에 중점을 둔 여러 스마트 장치와 같은 초 저전력 처리 장치가 필요한 애플리케이션을 찾는 경향이 있습니다. 매우 결정적인 동작이 필요한 경우에도 사용됩니다.
반면에 마이크로 프로세서는 운영 체제가 필요하고 계산 집약적이며 고속 연결 또는 많은 미디어 정보가있는 사용자 인터페이스 가 필요한 산업 및 소비자 애플리케이션에 이상적입니다.
결론
몇 가지 다른 요소가 존재하고이 두 플랫폼 중에서 선택하기위한 결정 요소 역할을하며 모두 성능, 기능 및 예산에 속하지만 적절한 시스템 사전 설계가 있고 요구 사항이 명확하게 명시되면 전체 선택이 더 쉬워집니다. 마이크로 컨트롤러 는 대부분 BOM 예산이 매우 빡빡하고 전력 요구 사항이 엄격한 솔루션에 사용되는 반면 마이크로 프로세서 는 엄청난 계산 및 성능 요구 사항이있는 애플리케이션에 사용됩니다.