Microcontollers

내장형 마이크로 컨트롤러

콘텐츠

상위

명령어 집합 아키텍처(RISC-V, x86, ARM)

RISC-V

x86

ARM

평가 기판 vs 개발 기판 vs 단일 모듈 시스템

평가 기판

개발 기판

단일 모듈 시스템(SOM)

확장 기판

확장 기판 찾기

실시간 운영 체제(RTOS)

Zephyr 실시간 운영 체제

Zephyr RTOS:

FreeRTOS:

내장형 시스템 특성

코어 크기

메모리

클록 소스

타이머

통신 방법(UART, SPI, I2C)

통신 에코시스템(QWiiC, STEMMA QT, Grove)

범용 입력 및 출력(GPIO)

아날로그 디지털 컨버터(ADC)

마이크로 프로세서

마이크로 컨트롤러(MCU)

ST Microelectronics의 STM32 마이크로 컨트롤러 제품군

Texas Instruments의 MSP430 마이크로 컨트롤러 제품군

Microchip Technology의 ATMEGA328 마이크로 컨트롤러 제품군

디지털 신호 프로세서(DSP) / 디지털 신호 컨트롤러(DSC)

필드 프로그래밍 가능 게이트 어레이(FPGA)

단일 기판 컴퓨터(SBC)

SBC 단점

제품

내장형 마이크로 컨트롤러

내장형 시스템은 신호를 수신, 해석, 전송하는 전자 시스템에서 조율의 역할을 하는 경우가 많습니다. 내장형 시스템의 강력한 성능은 하드웨어와 소프트웨어의 조합에서 옵니다. 내장형 시스템이 생소하다면 C 프로그래밍 언어가 소프트웨어 개발을 위한 좋은 출발점이 될 수 있습니다.

아래 다이어그램은 이 페이지의 정보가 명령어 집합 아키텍처와 같은 중요한 주제에서부터 마이크로 컨트롤러와 같은 몇 가지 큰 제품 범주까지 어떻게 구성되어 있는지를 보여줍니다.

명령어 집합 아키텍처(RISC-V, x86, ARM)

명령어 집합 아키텍처란? 답변 보기

컴퓨터 아키텍처라고도 하는 명령어 집합 아키텍처(ISA)는 코드 명령어, 데이터 유형 및 지원되는 하드웨어가 어떻게 결합되어 마이크로 프로세서 유닛(MPU)을 형성하는지에 대한 정의입니다. 이러한 ISA에는 ARM, RISC-V, X86, MIPS 등 몇 가지 유형이 있습니다.

ISA 간에 상호 호환이 가능한가요? 답변 보기

일반적으로 ISA는 상호 호환되지 않으며, 한 유형의 ISA용으로 설계된 시스템은 다른 유형에서는 작동하지 않습니다. 예를 들어, x86 시스템과 소프트웨어는 ARM 기반 칩에서는 작동하지 않는데, 이는 코드 명령어와 데이터 세트를 처리하는 방식이 다르기 때문입니다.

참고: 이 문제를 위한 몇 가지 기존의 해결 방법으로는 1) 다른 ISA의 작동 조건을 모방하는 소프트웨어 또는 2) 서로 다른 ISA를 단일 패키지로 결합하는 방법을 들 수 있습니다. ARM은 이기종 멀티 프로세싱 아키텍처인 ARM big.LITTLE이라는 하이브리드 아키텍처를 개발하여 고전력 및 저전력 프로세싱 코어를 하나의 시스템으로 결합함으로써 고전력 프로세스의 우선 순위를 지정하고 저전력 및 우선 순위가 낮은 요청과 별도로 처리할 수 있어 유연성과 정밀한 전력 관리가 가능해졌습니다.

축소 명령어 집합 컴퓨터(RISC)와 복잡 명령어 집합 컴퓨터(CISC) 프로세서의 차이점은 무엇인가요? 답변 보기

RISC는 컴퓨팅 프로세스 중에 간단한 명령어 집합을 사용하여 단일 단계 작업을 수행하도록 설계된 컴퓨터 아키텍처의 한 유형입니다. 보다 일반적으로는 각 코드 명령어가 컴퓨터 시스템에 대해 한 가지 작업을 수행할 수 있다고 생각할 수 있습니다. 동작이 간단할수록 완료 속도가 빨라지고 전력 소비가 줄어들기 때문에 휴대용 기기나 전력 효율성이 중요한 다른 곳에서 널리 사용됩니다.

CISC는 컴퓨팅 프로세스의 각 단계에서 여러 명령어와 코드 동작을 수행할 수 있는 컴퓨터 아키텍처의 한 유형입니다. 이 용어는 RISC 기반 칩과 시스템의 개발에 대응하여 개발되었기 때문에 일반적으로 RISC가 아닌 모든 것을 의미한다고 생각할 수 있습니다. CISC에 대한 공식적인 정의는 없지만, 일반적으로 더 복잡하게 설계된 시스템(일반적으로 작동하는 데 더 많은 전력이 필요함)으로 생각할 수 있습니다.

RISC-V

RISC-V는 RISC에 기반한 개방형 표준 ISA입니다. 다른 칩 설계와 달리 RISC-V는 완전한 오픈 소스이며 개방형 아키텍처를 채택하고 있기 때문에 누구나, 어디서나, 라이선스 비용을 지불하지 않고도 RISC-V 칩을 만들 수 있습니다. 그러나 RISC-V의 핵심은 오픈 소스이지만 공유되지 않는 다른 애드온 및 확장 기능이 있을 수 있습니다.

RISC-V 기판:

x86

CISC 프로세서를 위한 가장 오래된 명령어 집합 아키텍처 제품군 중 하나입니다. 1970년대 후반 Intel 8비트 마이크로 프로세서의 확장으로 시작된 x86 프로세서 제품군은 오늘날 판매되는 가장 일반적인 유형의 컴퓨터 프로세서 중 하나가 되기까지 지속적으로 적응하고 개선되어 왔습니다. 일반적으로 노트북, 데스크톱, 워크스테이션, 슈퍼컴퓨터에서 볼 수 있는 이 칩은 최고의 성능을 위해 만들어졌습니다.

ARM

원래는 Advanced RISC Machines로 알려졌지만 오늘날에는 ARM으로 통용되는 ARM은 Arm LTD에서 개발 및 라이선스를 취득한 RISC 프로세서 제품군입니다. 전력 소비와 발열이 적은 ARM 기반 칩은 오늘날 전 세계적으로 휴대폰, 태블릿, 일부 노트북 및 기타 저전력 장치와 같은 모바일 및 휴대용 장치에서 사용되고 있습니다.

ARM 기판:

Image of Risc-V

모르는 분들을 위해; RISC-V(리스크 파이브로 발음)는 오픈 소스 커뮤니티를 대상으로 하여 2015년에 설립되었으며, 캘리포니아 대학교 버클리 캠퍼스(University of California, Berkeley)에서 처음 개발되었습니다.

자세히

Image of DigiKey Article Library

내장형 시스템의 최적 에너지 프로파일을 위해 RISC-V를 사용하여 명령어 세트와 하드웨어를 맞춤 설정합니다.

자세히

Image of RVfpga Webinar

웨비나 등록: 등록 웨비나 녹화: 제공 예정 요약 디지키에 가입하여 RISC-V 프로세서 코어의 내부 동작과 대상 (Xilinx) FPGA 소자에 소프트 RISC-V 프로세서 코어를 구현하는 방법을 보다 자세히 알아보십시오.

자세히

Image of ARM Education Media

ARM provides online courses for hobbyists, professionals, and practitioners that explain ARM architecture and principles of ARM software.

자세히

Image of Using asymmetric multi-core RISC-V SoC FPGA to implement AI edge computing

학생들과 Digi‑Key 고객이 RISC-V 소프트웨어 및 하드웨어에 대한 지식을 얻을 수 있도록 RISC-V에 대해 간단히 소개하는 안내서가 제작 및 게시되었습니다.

자세히

Image of RISC-V Logo

RISC-V (Reduced Instruction Set Computer) is a open-source, open architecture that enables processor innovation through open standards collaboration.

자세히

Image of Webinar: A Beginner’s Guide to Designing Embedded System Applications on Arm

Arm에 임베디드 시스템 애플리케이션을 설계하기 위한 초보자용 가이드 이 게시글은 Arm 기반의 임베디드 소자와 IoT의 흥미로운 세계를 ST Nucleo-F429ZI 기판에 기반한 예제와 함께 다루는 Arm Education의 “Arm에 임베디드 시스템 애플리케이션을 설계하기 위한 초보자용 가이드” 웨비나의 주요 요점 및 …

자세히

평가 기판 vs 개발 기판 vs 단일 모듈 시스템

신제품을 개발하려면 항상 시제품 제작, 개선, 생산 설계 단계를 모두 계획해야 합니다. 이러한 설계 과정을 돕기 위해 실험, 개발 및 생산에 바로 사용할 수 있는 다양한 회로 기판이 있습니다.

대부분의 제조업체뿐만 아니라 DigiKey 제품 분류에서도 평가 기판과 개발 기판을 동일한 것으로 분류합니다. 이는 시제품에서 생산 제품에 이르는 개발 과정에서 기능과 역할에 따라 기판을 구분하고 분류하는 편리한 방법입니다.

평가 기판

첫 번째 시제품이나 실험을 위해서는 평가 기판이 사용됩니다. 이러한 평가 기판은 실험 중인 집적 회로(IC)에 중점을 두며 실행 가능한 회로를 형성하기 위한 최소한의 구성 요소를 갖추고 있습니다.

전원은 일반적으로 외부 전원 공급 장치와 인터페이스를 통해 오프보드로 공급됩니다. 통신 선로는 매우 단순하여, 테스트 프로브를 회로 경로에 연결할 수 있는 테스트 포인트 인터페이스에 불과합니다.

이러한 기판은 다른 모든 것을 배제하고 IC의 성능이나 기능 중 한 가지 측면에만 집중합니다. 간단하지만 면적이 넓어 IC 또는 칩의 모든 라인을 분리할 수 있는 공간을 제공하므로 설계자가 어떤 회로를 활성화하거나 인터페이스할지 정확하게 선택할 수 있습니다.

개발 기판

실험 중인 집적 회로는 일반적으로 USB 포트, 헤더 소켓 또는 기타 플러그형 커넥터와 같이 사람이 사용할 수 있는 인터페이스 및 프로그래밍 옵션에 쉽게 액세스할 수 있도록 모든 외부 통신 라인이 분리되어 있습니다. 전원 공급은 전압 조정기 또는 기타 전원 소자를 통해 온보드로 제어되므로 개발자는 회로 지원이 아니라 핵심 칩 기능을 실험하는 데 집중할 수 있습니다.

대부분의 인기 있는 개발 기판 라인은 일반적으로 제조업체 또는 제품 라인 간에 일부 호환이 가능하므로 하나의 확장 기판을 여러 장치에서 재사용할 수 있습니다. 예를 들어, Arduino 라인의 경우 헤더 소켓 배열이 다른 제조업체의 회로 기판에도 적용되어 있습니다.

일반적으로 이러한 확장 기판은 비교적 큰 회로 기판 크기와 애매한 인터페이스 포트 배열로 인해 최종 응용 회로 기판에 직접 인터페이스하는 데는 적합하지 않습니다.

단일 모듈 시스템(SOM)

프로젝트를 워크벤치에서 생산 라인으로 이끄는 마지막 단계입니다. 단일 모듈 시스템(SOM)은 응용 회로 기판에 직접 통합할 수 있도록 회로 기판의 가장 핵심적인 부분을 가능한 한 최소의 공간으로 압축한 시스템입니다.

일반적으로 SOM은 설치 공간이 매우 작아 최대 전체 면적이 보통 몇 평방인치에 불과하며 표면 실장 부품과 함께 제작됩니다. SOM에는 일반적으로 케이블이나 다른 인터페이스 방식을 위해 사람이 사용할 수 있는 연결 포트가 없습니다. 실제로 대부분의 SOM은 사람이 직접 사용하고 실험할 수 있도록 브레이크아웃 기판에 SOM이 직접 배치된 개발 플랫폼을 갖추고 있습니다.

이러한 플랫폼은 RAM 스틱과 같이 에지 커넥터 인터페이스를 사용하여 회로 기판에 직접 납땜하거나 메자닌 커넥터를 사용해 적층할 수 있습니다.

Image of Utilizing the Build Analyzer in STM32CubeIDE

ST사의 최신 툴인 STM32CubeIDE는 이클립스(Eclipse, 범용 응용 소프트웨어 플랫폼) 기반의 IDE(Integrated Development Environment, 통합 개발 환경)로, 기존의 TrueSTUDIO IDE와 STM32CubeMX 코드 구성기(Code Configurator)를 하나로 통합함으로써 올인원의 개발 경험을 제공합니다.

자세히

Image of J-link Interface - JTAG Interface Connection

J-Link는 다양한 대상 인터페이스들을 지원합니다. 현재는 다음의 인터페이스들을 지원하고 있습니다: JTAG SWD/SWO/SWV cJTAG FINE SPD ICSP 흔한 인터페이스 예제 중 하나는 JTAG입니다.

자세히

Image of Servomotor control with limits and variable speed

마이크로컨트롤러 서보모터 제어에의 입문에는 일반적으로 “Sweep” 프로그램을 사용합니다.

자세히

Image of Debian: Getting Started with the BeagleBone Black

이 게시글은 텍사스 인스트루먼트의 Cortex-A8 기반 비글본 블랙에 대한 글입니다.

자세히

Image of Powering the Beaglebone Black

비글본 블랙에 전원을 공급하는 방법은 4가지 입니다.

자세히

Image of Differences in Raspberry Pi Compute Boards

두 라즈베리 파이 컴퓨트 모듈 간의 차이점은 무엇이며 또 무엇이 더 필요할까요? 주1) 주1) 본 게시글이 작성되던 시점에는 CM1과 CM3 두 종류만 있었기 때문에 본 게시글은 CM1과 CM3의 비교에 대한 글입니다.

자세히

Image of How to Select and Use the Right ESP32 Wi-Fi/Bluetooth Module for an Industrial IoT Application

ESP32 Wi-Fi/Bluetooth 모듈을 사용하여 산업 자동화 장비를 IoT에 연결합니다.

자세히

확장 기판

개발 기판으로 더 많은 작업을 수행하려면 어떻게 해야 하나요? 답변 보기

개발 기판은 초기 아이디어 단계부터 실제 응용까지 응용 제품을 개발하는 데 강력한 도구이긴 하지만, 개발자가 구상하는 모든 것을 바로 실현하지는 못합니다. 많은 응용 분야에서, 외부 세계와 인터페이스하거나 다른 구성 요소 및 기판과 연결하거나 단순히 수신할 수 있는 입력 범위를 확장하기 위해 개발 기판에는 메인 IC 외에 다른 구성 요소가 필요합니다.

대부분의 경우 센서, 디스플레이, 모터 구동기 또는 기타 IC를 쉽게 통합하기 위해, 대부분의 제조업체가 확장 기판이라고 하는 호환 가능한 플러그 앤 플레이 기판에 외부 IC와 필요한 구성 요소를 이미 배치해 놓았습니다. 이러한 확장 기판은 개발 환경을 위한 소프트웨어 라이브러리를 다운로드할 수 있는 개발 기판 위에 간단히 장착할 수 있습니다.

일반적으로 이러한 확장 기판에는 메인 기판과 연결되는 이름이나 테마가 있으며, 다음은 가장 인기 있는 개발 기판 시리즈와 확장 기판의 일부 목록입니다.

Arduino – 일반 UNO R3 스타일 또는 더 큰 MEGA R3 스타일에는 쉴드가 제공됩니다. Arduino R3 기판 레이아웃은 많은 회사와 서드 파티 제조업체에서 동일한 풋프린트로 기판을 생산하면서 사실상 표준이 되었습니다.
Beaglebone – 케이프는 일반적으로 비글 보드의 기능을 확장하지만, 일반적으로 핀아웃이나 폼 팩터보다는 보드의 기능에 기반한 비글 보드의 구체적인 버전에 따라 정의될 수 있습니다.
Raspberry Pi - HAT(상단 부착형 하드웨어)는 구형 26핀 버전 또는 최신 40핀 버전으로 제공될 수 있습니다. pHAT(부분 HAT)는 Raspberry Pi Zero 및 Zero W 기판의 형태와 일치하도록 설계된 변형입니다.
Feather - FeatherWing은 Adafruit Feather 개발 기판 시스템용 애드온 및 확장 기판으로, 프로토타입 영역, 감지 및 모터 제어, 유선 및 무선 연결 옵션, 오디오 및 디스플레이를 추가할 수 있습니다.
STM32 Nucleo – 이 확장 기판을 사용하면 기본 STM32 Nucleo 기판에 추가 기능을 추가할 수 있습니다. 추가할 수 있는 기능에는 감지, 제어, 연결, 전원 및 오디오가 포함됩니다. 확장 기판은 기본 기판 위에 꽂을 수 있으며 여러 확장 보드를 쌓아 여러 기능을 추가할 수도 있습니다.
MikroE – Click Board(mikroBUS™ Click™)는 MikroE의 확장 기판 제품군입니다. 1,000가지가 넘는 다양한 옵션이 있는 MikroE의 Click Board 확장 기판 제품군은 센서, 통신, 디스플레이 및 데이터 스토리지를 추가할 때 우수한 설계 선택과 속도를 제공합니다. 기판 공간 절약을 위해서는, 최대 4개의 서로 다른 클릭 기판을 동일한 데이터 버스에 추가할 수 있는 MikroE Shuttle클릭 리본 케이블 시스템을 사용할 수 있습니다.<
MicroMod - 프로세서, 통신 및 센서를 위해 쉽게 교체할 수 있는 연결을 포함하는 sparkfun의 모듈식 에코시스템입니다. Makers에서 이 플랫폼에 대한 자세한 내용을 알아보세요.
프로세서, 통신 및 센서를 쉽게 교체 체결할 수 있는 sparkfun의 모듈식 에코시스템입니다. a class="dk-link" href="/[orderlang]/maker/platforms/m/micromod" target="_blank">메이커를 위한 자세한 플랫폼 관련 내용을 알아보세요. 프로세서, 통신 및 센서를 쉽게 교체 체결할 수 있는 sparkfun의 모듈식 에코시스템입니다. a class="dk-link" href="/[orderlang]/maker/platforms/m/micromod" target="_blank">메이커를 위한 자세한 플랫폼 관련 내용을 알아보세요.

확장 기판 찾기

확장 기판은 기능에 따라 다른 위치에 나열됩니다. 일반적으로는 부속품(개발 기판, 키트, 프로그래머) 그리고 평가 기판-확장 기판, 도터 카드에서 찾을 수 있으며, 무선 통신 기능이 있는 확장 기판은 RF 평가 및 개발 키트, 기판 페이지에서도 찾을 수 있습니다.

Image of Arduino Uno External Power Supply

USB 케이블 없이도 일반적인 벽면형 전원 공급 장치로 매우 효과적으로 아두이노 우노에 전원을 공급할 수 있습니다.

자세히

Image of How to Turn Up an nRF9160 Feather IoT Development Board on a Cellular Network

nRF9160 페더 IoT 개발 기판은 셀룰러 네트워크를 사용하는 IoT 애플리케이션 개발에 사용될 수 있는 강력한 소형 장치입니다.

자세히

Image of BeagleBone Black

이 기사에서는 BeagleBone Black의 제품 사양, 사용 용이성, 콤팩트한 크기, 우수한 성능, 그리고 경쟁 제품에 대해 설명합니다.

자세히

Image of Getting Started with the Raspberry Pi Pico Multicore Microcontroller Board Using C

개발자는 RP2040 MCU용 Raspberry Pi Pico 개발 기판을 사용하여 애플리케이션을 빠르게 시작하고 실행할 수 있습니다.

자세히

Image of Simplify Motion Detection Using the ATtiny1627 Curiosity Nano

Microchip ATtiny1627 Curiosity Nano 및 PIR 센서를 통한 동작 감지에 대해 간단히 살펴보고 이를 활용하세요.

자세히

Image of Use the OpenMV Cam to Quickly Start Applying Machine Learning to Object Detection

OpenMV H7 카메라 모듈을 활용하면 머신 러닝 알고리즘과 데이터 세트를 사용하여 물체를 감지하고 이미지를 처리할 수 있습니다.

자세히

실시간 운영 체제(RTOS)

실시간 운영 체제 이미지 출처: DigiKey

실시간 운영 체제(RTOS)는 소형 경량의 운영 체제로, 일반적으로 컴퓨팅 리소스가 제한된 소형 내장형 시스템에서 실행하거나 시간이 중요한 멀티 스레드 프로그램 애플리케이션을 실행하도록 설계되었습니다.

운영 체제(OS)라 하면, Windows, macOS 또는 Linux와 같은 컴퓨터에서 볼 수 있는 소프트웨어를 말하는 경우가 대부분인데, 이러한 운영 체제는 범용 운영 체제(GPOS)의 일반적인 유형입니다. GPOS는 일반적으로 그래픽 사용자 인터페이스(GUI)를 실행하며 여러 애플리케이션을 동시에 실행할 수 있어야 합니다.

GPOS는 RTOS와 동일한 기능을 많이 가지나 중요한 차이점이 몇 가지 있는데, 그중 가장 중요한 차이점이 바로 코드 실행에 소요되는 시간입니다. GPOS에서 소프트웨어는 비결정적이기 때문에 코드로 작성된 명령어의 실행 타이밍이 유동적일 수 있으며, 이는 작업 완료에 필요한 시간을 예측하기가 매우 어렵다는 것을 의미합니다.

반면, RTOS는 마이크로 컨트롤러나 기타 내장형 시스템과 같이 작동 속도와 안정성이 사용자 인터페이스와 같은 기능보다 중요한 작고 성능이 낮은 시스템에서 실행되도록 설계되었습니다. RTOS는 동시 또는 멀티 스레드로 애플리케이션을 실행하거나 (또는 싱글 코어의 경우 동시에 실행되는 것처럼 보임) 엄격한 타이밍 데드라인을 준수할 수 있으므로 의료, 항공우주 또는 안전이 중요한 환경과 같이 -엄격한 타이밍이 필요한 응용 분야에서 훨씬 더 안정적입니다.

덜 까다로운 환경에서도 RTOS는 센서 판독값의 균형을 맞추고 중앙 허브로 무선 통신을 전송하는 등 마이크로 컨트롤러 플랫폼에서 여러 작업을 동시에 실행할 수 있어 개발자에게 여전히 매력적인 선택이 될 수 있습니다.

FreeRTOS 및 Zephyr와 같은 RTOS는 멀티 스레딩 지원이 필요한 내장형 마이크로 컨트롤러 시스템에서 찾을 수 있으며, 모듈식 코드를 실행해야 하는 애플리케이션에서도 찾을 수 있어 코드의 일부를 격리된 섹션에서 실행할 수 있으므로 보안을 개선하고 개발 시간을 단축할 수 있습니다.

두 소프트웨어 프로젝트 모두 완전한 오픈소스 프로젝트이며, FreeRTOS는 MIT 오픈소스 라이선스에 따라, Zephyr는 Apache 2.0 라이선스에 따라 배포됩니다.

Zephyr 실시간 운영 체제

Zephyr 실시간 운영 체제 이미지 출처: Zephyr

Zephyr RTOS는 사물 인터넷 장치 및 시스템과 같이 최소한의 처리 리소스로 연결된 내장형 시스템을 위해 설계된 무료 오픈소스 실시간 운영 체제입니다.

내장형 장치를 위한 작고 가벼운 운영 체제 커널 및 지원 서비스로 설계된 Zephyr RTOS는 최소 하드웨어 요구 사항으로 8KB 미만의 플래시 기반 스토리지와 5KB 미만의 RAM을 필요로 하며, 소형 센서 기반 노드부터 복잡한 멀티코어 시스템까지 확장이 가능하여 다른 운영 체제가 너무 크거나 복잡하여 적합하지 않은 곳에서도 사용할 수 있습니다.

Zephyr RTOS는 32비트 STM32 및 Cortex 마이크로 컨트롤러 ARM 라인, RISC-V 기반 마이크로 컨트롤러부터 모든 기능을 갖춘 64비트 x86 프로세서에 이르기까지 매우 이질적인 아키텍처를 가진 다양한 마이크로 컨트롤러 및 마이크로 프로세서에서 작동하면서도 컴파일된 동일 소프트웨어를 실행할 수 있습니다. 드라이버와 라이브러리를 하드웨어 추상화 계층(HAL)에 통합하고 하드웨어에 구애받지 않도록 작성하여 다양한 하드웨어 플랫폼에서 애플리케이션 코드를 재사용할 수 있습니다.

Zephyr RTOS의 가장 사랑 받는 기능 중 하나는 다양한 최종 애플리케이션과 요구 사항에 맞게 사용자 맞춤할 수 있는 유연성과 기능입니다. Bluetooth 5.3과 고유의 커널 개념에 내장된 고유한 IP 스택과 같은 연결과 네트워킹 기능을 통해 Zephyr RTOS는 거의 모든 센서 또는 네트워크 허브와 연결할 수 있습니다.

Analog Devices, Google, Nordic Semiconductor, NEXP, Meta 등 일부 대형 소프트웨어 및 하드웨어 개발업체의 지원을 받고 있습니다. Zephyr RTOS 프로젝트는 가장 인기 있는 오픈소스 RTOS 프로젝트 중 하나입니다.

장기 지원 버전의 경우 Windows, macOS 및 Linux 운영 체제에서 2년 이상 완벽하게 지원됩니다.

Zephyr RTOS:

Zephyr RTOS 호환 기판 전체 목록: https://docs.zephyrproject.org/latest/boards/index.html

FreeRTOS:

FreeRTOS 호환 제품군 전체 목록: https://www.freertos.org/RTOS_ports.html

Lim Jia Zh Article

실시간 운영 체제(RTOS)에서 "실시간"이란 물리적 속도가 아닌 실행 시간의 예측 가능성/결정성을 나타냅니다.

자세히

Image of The STM32F746G Discovery board

개발자는 즉시 사용 가능한 마이크로 컨트롤러 플랫폼을 사용하여 IoT를 위한 실시간 운영 체제(RTOS)를 시작할 수 있습니다.

자세히

Image of Use a Low-Cost Module and MicroPython to Quickly Build AI-Based Vision and Hearing Devices

개발자는 MicroPython 및 신경망 처리 모듈을 사용하여 머신 러닝 기반 음성 및 물체 인식 설계를 빠르게 구현할 수 있습니다.

자세히

Shawn Hymel blog and video

A real-time operating system (RTOS) is an operating system (OS) (often a lightweight OS) that runs multi-threaded applications and can meet real-time deadlines.

자세히

내장형 시스템 특성

DigiKey는 이러한 특성에 적합한 크기를 찾는 데 도움이 되는 파라미터 필터를 제공합니다. 이러한 파라미터 데이터 기능의 대부분은 마이크로 컨트롤러에 공통적으로 사용되며, FPGA와 같은 일부 다른 내장형 시스템에는 동일한 명명법이 적용되지 않을 수 있습니다.

코어 크기

코어 크기는 시스템 내 데이터 버스의 폭을 말하며, 코어의 크기에 따라 클록 주기 동안 처리할 수 있는 데이터의 양이 결정됩니다.

대부분의 내장형 시스템은 8비트, 16비트 또는 32비트 아키텍처이지만 컴퓨터용 마이크로 프로세서는 현재 64비트로 실행됩니다.

메모리

대부분의 최신 마이크로 컨트롤러에는 집적 회로 패키지에 일정량의 메모리와 스토리지가 내장되어 있으며, 각 메모리 유형에는 고유한 용도가 있습니다.

  • 플래시 메모리 - 프로그램 메모리에 사용되며 시스템을 실행하는 코드를 저장하는 위치입니다. 비휘발성 스토리지 유형으로, 마이크로 컨트롤러가 재설정되거나 전원이 꺼져도 지워지지 않습니다.
  • EEPROM - 데이터 메모리에 사용되며 환경 설정을 저장하는 경우가 많습니다. 비휘발성 메모리 유형으로, 마이크로 컨트롤러가 재설정되거나 전원이 꺼져도 지워지지 않습니다.
  • SRAM – 데이터 메모리에 사용됩니다. 휘발성 메모리 유형으로, 마이크로 컨트롤러가 재설정되거나 전원이 꺼지면 지워집니다.

클록 소스

마이크로 컨트롤러는 시간과 주기를 일정하게 유지하기 위해 내부 RC 발진기(저항-커패시터 회로)를 포함하거나 다른 형태의 외부 주파수원에 의존할 수도 있습니다.

  • RC 발진기 - 온도에 의존적이며 클록 신호는 1% ~ 5%까지 변할 수 있습니다. 일부 느린 주파수 타이밍이 요구되는 곳(예를 들어, 저주파 아날로그-디지털 변환)에 사용됩니다.
  • 수정 - 외부 발진기 회로에 일반적으로 사용되며 클록 신호의 안정성과 정밀도가 뛰어납니다. 수정 발진기는 일반적으로 RC 발진기처럼 백분율이 아닌 PPM(백만분율)으로 변화를 측정합니다.
  • 세라믹 공진기의 허용 오차는 10분의 1퍼센트 범위입니다.
  • 수동 소자 RC 발진기 - 마이크로 컨트롤러에서 떨어져 나오면 온도 변화를 더 잘 제어할 수 있지만, 전원 공급 레벨의 변화와 전기적 간섭으로 인해 발생하는 고려해야 할 변화가 여전히 존재하며, 이는 중대한 영향을 미치므로 외부 발진기 중 가장 정확도가 낮습니다.

타이머

타이머는 제한 값까지 카운트하거나 0까지 카운트할 수 있습니다. 마이크로 컨트롤러에는 범용 타이머와 워치독 타이머를 포함하여 여러 개의 타이머가 있을 수 있습니다. 타이머는 일반적으로 메인 CPU 클록(규격서에서 HCLK로 표시되는 경우가 많음)에 연결되며 전치 분주기로 나누어집니다.

통신 방법(UART, SPI, I2C)

통신 에코시스템(QWiiC, STEMMA QT, Grove)

범용 입력 및 출력(GPIO)

범용 입력 및 출력(GPIO) 핀을 사용하면 현실 세계와 연결하고 외부 부품과 인터페이스할 수도 있습니다. 일반적으로 IC 패키지 외부에 있는 프로그래밍 가능한 포트이며 시스템의 입력 또는 출력 역할을 하는 데 사용할 수 있습니다.

  • 입력 - 버튼, 액추에이터 및 센서
  • 출력 - LED 조명, 버저, 계전기 및 디스플레이

아날로그 디지털 컨버터(ADC)

내장형 시스템에 있는 외부 아날로그 회로와 더 쉽게 인터페이스하기 위해 대부분의 마이크로 컨트롤러는 패키지에 기본적인 아날로그 디지털 컨버터(ADC) 회로를 내장하고 있습니다. 나이퀴스트 정리에 따르면 순수한 사인파를 정확하게 재현하려면 샘플링 주파수가 수신 신호 속도의 두 배가 되어야 합니다. 보다 안전한 방법은 소스에서 캡처하려는 최대 주파수를 구한 다음 샘플링할 주파수에 10을 곱하는 것입니다.

참고: ADC의 전압은 다른 IO와 다른 전압에서 작동할 수 있습니다(자세한 내용은 규격서 참조). IO가 소진되는 것을 방지하려면 이 점을 알아두는 것이 좋습니다.

Image of Crystal Oscillator Load Cap Selection

이 글의 주제는 병렬 부하 커패시터를 사용하는 피어스 발진기라고도 알려진 보편적으로 사용되는 발진기 구성에 관한 것입니다.

자세히

Image of Functions of Ethernet PHY and Selections

이더넷 물리계층에는 두 가지 주요 기능이 있습니다. 첫째, PHY의 디지털 영역은 필드 프로그래머블 게이트 어레이(Field Programmable Gate Array, FPGA), 마이크로컨트롤러(MCU)

자세히

Image of Understand and Minimize the Impact of Jitter on High-Speed Links

고속 링크 설계자는 100fs 미만의 지터를 생성하는 Abracon의 고유한 수정 발진기 설계를 응용할 수 있습니다.

자세히

Image of Development Tools Tune Power Consumption for MCUs

소프트웨어를 통한 MCU 전력 소비 최소화

자세히

Image of Leveraging Market’s First Arm® Cortex®-M33-Based MCU – Part 1: Manage Power and Performance

복잡한 워크로드를 처리할 수 있는 안전한 저전력 설계를 위해 특수 하드웨어를 통해 범용 프로세서 코어를 확장하는 마이크로 컨트롤러를 사용하십시오.

자세히

Image of Servomotor control with limits and variable speed

Enhanced Sweep 마이크로컨트롤러 서보모터 제어에의 입문에는 일반적으로 “Sweep” 프로그램을 사용합니다.

자세히

마이크로 프로세서

마이크로 프로세서 유닛(MPU)은 시스템의 두뇌로 간주되곤 합니다. 코드가 실행되고, 메모리로부터 데이터를 불러오거나 전송하며, 데이터로 계산을 하는 로직이 포함된 집적 회로(IC)입니다.

마이크로 프로세서는 일반적으로 서버, 워크스테이션 데스크톱, 노트북 컴퓨터에서 찾을 수 있습니다. 마이크로 프로세서 기반 설계를 최대한 활용하기 위해 일반적으로 범용 운영 체제도 함께 포함되어 메모리 및 스토리지 요구 사항이 더욱 증가합니다.

MPU는 성능이 매우 뛰어나고 클록 주기가 높지만 가격도 마이크로 컨트롤러보다 훨씬 높습니다.

마이크로 프로세서로 작업할 때는 일반적으로 소켓 유형을 살펴보고 통신 및 메모리 관리 칩이 내장된 호환 가능한 기판을 찾습니다.

마이크로 프로세서를 사용하여 설계할 때는 명령어 집합 아키텍처(RISC-V, x86, ARM)를 잘 알아야 합니다.

마이크로 프로세서는 어디에 사용되나요? 답변 보기

  • 서버
  • 랩톱을 비롯한 컴퓨터
  • 모바일 장치
  • 비디오 게임 콘솔

마이크로 컨트롤러(MCU)

마이크로 컨트롤러는 마이크로 프로세서보다 성능은 낮지만, 그 안에 더 많은 시스템이 통합되어 있고 가격도 저렴합니다.

마이크로 컨트롤러는 일반적으로 처리 회로, 어느 정도의 플래시 기반 기억 장치 및 처리에 필요한 RAM(Random Access Memory)을 포함하고 있습니다. 효율적으로 압축한 설계이며, (GPIO와 ADC 같은) 다양한 주변 장치 인터페이스 회로도 포함하고 있습니다.

독립형 마이크로 프로세서는 일반적으로 GPOS를 실행하는 반면, 마이크로 컨트롤러는 RTOS: 실시간 운영 체제(RTOS)를 실행합니다.

마이크로 컨트롤러는 어디에 사용되나요? 답변 보기

  • 자동판매기
  • 의료 장치
  • 가전
  • 로봇

ST Microelectronics의 STM32 마이크로 컨트롤러 제품군

ST Microelectronics의 STM32 마이크로 컨트롤러 제품군은 가장 인기 있는 마이크로 컨트롤러 제품군 중 하나입니다. ARM 프로세싱 코어, 플래시 메모리, 정적 RAM과 다양한 주변 장치를 하나의 패키지에 결합하여 거의 모든 버전의 STM32를 다양한 응용 분야에서 융통성있게 사용할 수 있습니다. 1세대 STM32는 2007년에 출시되었으며 그 이후 여러 차례의 설계 수정을 거쳤습니다. 최신 버전의 클록 속도는 48MHz부터 400MHz 이상까지 다양하므로 거의 모든 애플리케이션에 적합한 부품이 제품군에 포함되어 있습니다.

다음은 1세대 STM32 마이크로 컨트롤러의 몇 가지 참조 사양입니다.

  • 코어: 32비트 Single-Core ARM® Cortex®-M3(72MHz에서 작동).
  • 연결: CANbus, I²C, IrDA, LINbus, SPI, UART/USART, USB
  • 데이터 컨버터: 아날로그-디지털 - 10채널(12비트 분해능)
  • 프로그램 메모리 크기: 64KB(64K x 8) 플래시 메모리
  • RAM 크기: 20K x 8

Texas Instruments의 MSP430 마이크로 컨트롤러 제품군

Texas Instruments의 MSP430 MSP430 마이크로 컨트롤러 제품군은 저전력, 저비용 16비트 마이크로 컨트롤러 제품군입니다. 1992년에 처음 출시된 MSP430 제품군은 지속적으로 업데이트되고 개선되어 FRAM(강자성 메모리) 및 기타 주변 장치와 같은 Texas Instruments의 최신 기술을 통합하고 있습니다. 산업 환경에 최적화된 MSP430은 모든 최신 기능을 갖추고 있지는 않지만 전력 소비가 적고 안정성이 높아 이에 맞는 애플리케이션에 널리 사용됩니다.

다음은 3세대 저전력 버전의 몇 가지 참조 사양입니다.

  • 코어: 16비트 MSP430 CPU16(16MHz에서 작동)
  • 연결: I²C, SPI, USI 채널
  • 데이터 컨버터: 아날로그-디지털 - 8채널(10비트 분해능)
  • 프로그램 메모리 크기: 8KB(8K x 8) 플래시 메모리
  • RAM 크기: 256 x 8

Microchip Technology의 ATMEGA328 마이크로 컨트롤러 제품군

Microchip의 ATMEGA328 마이크로 컨트롤러 제품군은 연산 능력 자체보다는 단순하고, 전력 소비가 낮으며, 저렴한 비용이 필요한 경우에 매우 인기 있는 8비트 마이크로 컨트롤러 제품군으로 알려져 있으며, 클록 속도는 20MHz, 플래시 메모리는 32KB, 정적 RAM은 2KB입니다.

ATMEGA328 제품군은 고급 모델의 복잡성이나 비용 없이 단순한 8비트 마이크로 컨트롤러를 필요로 하는 응용 분야에서 성공을 거두었습니다. 그 덕분에 20년 넘게 Arduino 개발 기판의 핵심으로 자리 잡았습니다.

다음은 1세대 ATMEGA328 마이크로 컨트롤러의 대표적인 사양 몇 가지입니다.

  • 코어: 8비트 AVR(20MHz에서 작동).
  • 연결: I²C, SPI, UART/USART
  • 데이터 컨버터: 아날로그-디지털 - 6채널(10비트 분해능)
  • 프로그램 메모리 크기: 32KB(16K x 16) 플래시 메모리
  • RAM 크기: 2K x 8

임베디드 프로젝트를 디버깅할 때, LED를 깜박거리는 것 외에도 직렬 콘솔에 유용한 메시지를 출력하는 것은 가장 단순하고, 가장 간단하며 가장 일반적인 기법입니다.

자세히

아두이노와 페더(Feather) 기판과 같은 고급 개발 플랫폼은 사용하기 쉬운 라이브러리와 흔한 예제 코드를 통해 NeoPixel LED, 스트립, 매트릭스 등과 인터페이스 할 수 있도록 이미 훌륭한 지원을 제공하고 있습니다.

자세히

Image of Easily Use scanf on STM32

임베디드 시스템과 인터페이스 하는 많은 접근법이 있지만, 가장 단순하면서 다용도인 것 중 하나는 직렬 콘솔로부터 사용자 입력을 받는 것입니다.

자세히

A close up view of one end of the Raspberry Pi Pico evaluation board

개발자는 RP2040 MCU용 Raspberry Pi Pico 개발 기판을 사용하여 애플리케이션을 빠르게 시작하고 실행할 수 있습니다.

자세히

Image of Getting Started with the VL53L5CX ToF Sensor

VL53L5CX는 거리측정 데이터를 4 x 4 또는 8 x 8의 개별 구역에 생성할 수 있는 다구역 거리측정 ToF(Time-of-Flight) 센서입니다.

자세히

Image of How to Use Arduino Analog Functions in Your Design

Arduino의 아날로그 기능에 대한 기초를 형성하는 하드웨어 및 소프트웨어 리소스를 소개합니다.

자세히

Image of How to Perform Over-the-Air (OTA) Updates Using the ESP32 Microcontroller and its ESP-IDF

Espressif Systems의 ESP32 마이크로 컨트롤러와 관련 모듈 및 ESP-IDF에서 IoT OTA 펌웨어 업데이트 실행을 단순화하는 방법

자세히

디지털 신호 프로세서(DSP) / 디지털 신호 컨트롤러(DSC)

디지털 신호 프로세서(DSP)는 오디오, 비디오 또는 실시간 위치 처리와 같이 고속 디지털 신호 처리가 필요한 애플리케이션을 위해 설계된 내장형 마이크로 프로세서입니다. 일반적으로 DSP 칩에는 개발자가 애플리케이션에 맞게 프로그래밍할 수 있는 디지털 필터링 기능과 함께 고해상도 아날로그 디지털 컨버터(ADC) 및 디지털 아날로그 컨버터(DAC)가 있습니다.

디지털 신호 컨트롤러(DSC)는 디지털 신호 프로세서(DSP)와 마이크로 컨트롤러의 특화된 조합으로 간주할 수 있습니다.

DSC에는 워치독 타이머, 펄스 폭 변조 채널, C 프로그래밍 언어 또는 기본 하드웨어 어셈블리 언어와 같은 저수준 언어로 프로그래밍할 수 있는 기능 등 마이크로 컨트롤러에 있는 기능이 포함되는 경우가 많습니다.

또한 디지털 신호 컨트롤러에는 강력한 아날로그 디지털 컨버터 채널, 데이터 시프트 매트릭스, 유한 임펄스 응답 필터 구현 등 대부분의 MCU 기능에서 흔히 볼 수 없는 DSP의 핵심 아키텍처와 기능도 포함됩니다.

Block Diagram of a DSP application with IoT connections

설계자는 저전력 디지털 신호 프로세서에서 실행되는 독점 알고리즘을 기반으로 한 드롭인 키트를 사용하여 점유 모니터링을 빠르게 구현할 수 있습니다.

자세히

보안 IC와 고성능 DSC 및 저전력 MCU를 조합하여 효과적인 내장형 시스템 보안 플랫폼을 구현할 수 있습니다.

자세히

개발자는 자동차와 e-모빌리티 시스템을 위한 보다 효과적인 설계를 신속하게 구현하기 위해 디지털 신호 컨트롤러 제품군을 사용할 수 있습니다.

자세히

필드 프로그래밍 가능 게이트 어레이(FPGA)

필드 프로그래밍 가능 게이트 어레이(FPGA)는 상호 연결을 사용자가 프로그래밍할 수 있는 설정 가능한 논리 블록(CLB) 집합체를 기반으로 하는 반도체 소자입니다.이러한 CLB와 이들 사이의 연결을 통해 출고 후 애플리케이션에 맞게 재프로그래밍하고 기능을 추가할 수 있습니다.

FPGA의 견고한 구조와 빠른 연산 속도는 환경이 열악한 경우 또는 더 많은 ASIC(애플리케이션별 집적 회로)를 설치하기에는 너무 비싼 경우 매우 매력적인 옵션입니다.

대부분의 FPGA는 정적 RAM(SRAM) 기반 메모리로 인해 여러 번 다시 프로그래밍할 수 있지만, 일회성 프로그래밍 가능(OTP) 옵션도 존재합니다.

FPGA는 일반적으로 다른 내장형 옵션에 비해 단위당 가격이 더 높습니다. 또한 개발 기판에는 특수 소프트웨어가 필요한 경우가 많습니다.

FPGA는 어디서 사용되나요? 답변 보기

  • 네트워킹 장비
  • 기지국용 신호 처리
  • 자동차의 비전 시스템
  • 방위 안내 시스템

소프트 코어와 하드 코어 FPGA란 무엇인가요? 답변 보기

하드 코어 FPGA에는 고정/정적 마이크로 프로세서 유닛(MPU)이 포함되어 있어 더 빠르고 성능이 뛰어난 프로세서를 제공합니다. 하드 코어 프로세서는 사전 정의된 실리콘 조각이므로 재구성할 수 없습니다.

소프트 코어 FPGA에는 FPGA 패브릭을 사용하여 구현된 프로세서가 있습니다. 일반적으로 하드 코어 FPGA보다 실행 속도가 느리고 전력을 더 많이 소비하며 크기가 더 크지만 재구성이 가능하고 맞춤형 요구 사항에 적합할 수 있습니다.

Image of Taking advantage of FPGA Hardware Development in C with Microchip

마이크로칩, FPGA 하드웨어 개발에 C 활용하기 PolarFire™ 시스템 온칩(SoC)의 등장으로, 설계자들은 이제 프로세서로 애플리케이션을 구현하거나 FPGA IC에서 기능을 가속하는 진정한 트레이드오프를 설계하고 평가할 수 있습니다.

자세히

Image of Intel MAX10 10M04SC FPGA Device Pin Information

Intel® MAX®10 중 10M04SC FPGA 소자 핀 정보를 찾고 있는 경우, 아래 Intel에서 제공한 정보를 참고하시기 바랍니다.

자세히

Image of How to use FPGA SoCs for Secure and Connected Hard Real-Time Systems

Linux 지원 RISC-V MCU 서브 시스템에서 FPGA SoC를 사용해 안전이 중요한 실시간 시스템을 보호할 수 있습니다.

자세히

Image of Why and How to Use Efinix FPGAs for AI/ML Imaging

Efinix FPGA와 관련 개발 기판을 사용하여 설계자는 AI/ML 이미징 응용 분야를 빠르게 개발하고 배포할 수 있습니다.

자세히

Image of Each programmable logic block contains a collection of elements

최적의 설계 솔루션은 종종 FPGA, 프로세서와 FPGA의 조합 또는 내부 프로세서 코어를 자랑하는 FPGA에 의해 제공됩니다.

자세히

Image of The Selection and Use of FPGAs for Automotive Interfacing, Security, and Compute-Intensive Loads

FPGA를 사용하면 자동차의 기존 마이크로 컨트롤러 및 응용 프로세서를 강화하여 연결, 처리 성능 및 보안을 개선할 수 있습니다.

자세히

Image of Fundamentals of FPGAs – Part 2: Getting Started with Lattice Semiconductor’s FPGAs

Lattice Semiconductor는 에지부터 클라우드까지 네트워크 문제를 해결하는 저전력 장치에 중점을 두고 로우레인지부터 미드레인지까지 다양한 FPGA를 제공합니다.

자세히

단일 기판 컴퓨터(SBC)

단일 기판 컴퓨터(SBC)는 컴팩트한 폼 팩터에 연산 능력과 처리 속도를 모두 제공합니다 이름에서 알 수 있듯이 SBC는 마이크로 프로세서를 기반으로 하는 완전한 컴퓨터로, 일반적으로 한 면이 몇 인치에 불과한 단일 회로 기판으로 축소 및 압축된 제품입니다.

일반적인 ARM 또는 x86 기반 마이크로 프로세서 코어와 함께 이러한 기판은 전체 범용 운영 체제(GPOS)를 실행하며, 대부분 Linux 배포판을 실행하지만 Android 모바일 장치 운영 체제 또는 Windows 10/11 운영 체제를 실행할 수 있는 다른 기판도 있습니다.

크기가 작기 때문에 일반적으로 최신 데스크톱 컴퓨터나 워크스테이션과 경쟁할 수 없지만, 일부 최신 기판은 최대 8GB 램 메모리로 최대 1GHz의 클록 속도에 도달할 수 있습니다.

SBC는 저렴한 가격대와 연산 능력으로 교육 및 메이커 스페이스에서 산업 및 항공우주 분야에 이르기까지 다양한 응용 분야에 매우 매력적입니다. 기판 크기와 인터페이스 옵션이 다양하므로 각 애플리케이션에 적합한 폼 팩터의 SBC를 찾기 쉽습니다.

SBC 단점

강력하고 융통성이 높은 기판이기는 하지만, 프로젝트에 SBC를 도입하기 전에 고려해야 할 몇 가지 단점이 있습니다.

첫 번째는 대부분의 SBC가 단순한 플러그 앤 플레이 플랫폼이 아니라, 외부 소스로부터 운영 체제 소프트웨어를 설치하고 설정하기 위해 외부 컴퓨터가 필요한 설정 과정이 요구된다는 점입니다.

또한 모니터, 키보드, 외부 저장 장치, 적절한 전원 공급 장치 및 케이블을 별도로 구매해야 하는 등 여러 가지 주변 장치도 고려해야 합니다.

적절히 선택하고 사전에 QA 테스트를 수행한 경우 마이크로 컨트롤러 개발 기판을 산업 응용 분야에 사용할 수 있습니다.

자세히

단일 기판 컴퓨터(SBC)는 에지에서 탁월한 처리 성능을 제공할 수 있지만, 설계자는 가장 적합한 솔루션을 선택하여 적용하는 방법을 알아야 합니다.

자세히

Image of 10 Things to Know Before Starting a Raspberry Pi Project

사용자가 Raspberry Pi의 기존 사용자로부터 조언을 얻으면 Raspberry Pi 단일 보드 컴퓨터의 성능을 빠르고 효과적으로 구현할 수 있습니다.

자세히

Image of Speed Configuration of Industrial Automation Facilities Using Remote Microcontroller Debuggers

Wi-Fi를 통해 연결된 원격 마이크로 컨트롤러 디버거는 여러 산업용 SBC의 프로그래밍 및 펌웨어 디버깅을 크게 간소화할 수 있습니다.

자세히

제품