i.MX 8M Plus 시스템 온 모듈 DVFS의 CPU 주파수 지원

동적 전압 및 주파수 비율 조정(DVFS)은 임베디드 시스템에서 성능 및 에너지 효율을 최적화하는 데 필수적인 정교한 전력 관리 기술입니다. DVFS에서는 워크로드 수요를 기준으로 프로세서의 전압과 주파수를 동적으로 조정하여 전력 소비와 열 발생을 효율적으로 줄입니다. 이는 에너지 효율 및 열 관리가 중요한, 배터리로 구동되고 열적 제약이 있는 환경에서 특히 중요합니다.

DVFS는 프로세서의 주파수를 줄여서 전력 사용량과 열 발생을 직접적으로 줄이는 방식으로 작동합니다. 동시에 전압을 조정하여 프로세서가 다양한 성능 상태에서 안정적으로 유지되고 작동하도록 합니다. 이 동적 조정은 몇 가지 주요 이점을 제공합니다.

  1. 에너지 효율: DVFS는 전력 소비를 크게 줄여서 휴대용 장치의 배터리 수명을 연장합니다. 따라서 제한된 전원을 사용하는 모바일 및 IoT 장치에 중요한 기능입니다.
  2. 열 관리: DVFS를 사용하면 열 발생을 줄여서 장치의 신뢰성과 성능을 유지할 수 있습니다. 효율적인 열 관리를 통해 하드웨어 고장 또는 성능 저하로 이어질 수 있는 과열을 방지합니다.
  3. 성능 최적화: DVFS는 까다롭지 않은 작업을 수행하는 동안 에너지를 절약하면서 필요할 때 필수 컴퓨팅 전력을 공급하여 성능과 전력 사용의 균형을 조정합니다. 이 균형 조정을 통해 장치는 전력 효율적으로 작동할 수 있습니다.

i.MX 8M Plus 시스템 온 모듈(SoM)에서는 DVFS를 구현하여 DVFS의 중요성, 작동 메커니즘, 최적의 성능과 전력 효율을 달성하기 위해 DVFS을 활용하는 데 필요한 단계를 강조합니다. 개발자는 DVFS를 이해하고 활용하여 임베디드 시스템의 에너지 효율과 신뢰성을 개선함으로써 다양한 응용 분야에서 더욱 견고하고 뛰어난 성능을 발휘할 수 있습니다.

i.MX 8M Plus 시스템 온 모듈 개요

i.MX 8M Plus 시스템 온 모듈(SoM)(그림 1)은 NXP i.MX 8M Plus 응용 프로세서를 기반으로 제작됩니다. i.MX 8M Plus 응용 프로세서에는 최대 1.6GHz의 속도로 작동할 수 있는 강력한 쿼드 코어 Arm Cortex-A53 CPU가 탑재되어 있으며, 실시간 처리 작업을 수행하도록 설계된 Arm Cortex-M7 core로 보완됩니다. i.MX 8M Plus의 눈에 띄는 특징 중 하나는 2.3TOPS를 지원하여 머신 러닝 추론 작업을 크게 가속할 수 있는 통합 신경 처리 장치(NPU)입니다.

그림 1: iWave i.MX 8M Plus SoM (이미지 출처: iWave)

iWave i.MX 8M Plus SoM은 다양한 멀티미디어, 연결 및 AI 기능을 제공하여 현대 응용 분야의 다양한 요구 사항을 충족하도록 설계되었습니다. 이러한 특징으로 인해 산업 자동화, 로봇 공학, 스마트 홈 장치, 소비자 가전 등 다양한 응용 분야에 적합합니다.

주요 특징 및 기능:

  • 처리 성능:
    • 쿼드 코어 Arm Cortex-A53 프로세서 - 최대 1.6GHz로 실행
    • Cortex-M7 core - 실시간 처리 작업 수행
  • AI 및 머신 러닝:
    • 통합 NPU - 2.3TOPS를 지원하여 머신 러닝 추론 가속화
  • 연결 옵션:
    • 무선:
      • Wi-Fi 6 - 고속 무선 연결 지원
      • Bluetooth 5.0 - 주변 장치와의 강력하고 효과적인 무선 통신 지원
    • 유선:
      • 이중 CAN-FD(유연한 데이터 전송률을 갖춘 CAN) 인터페이스 - 산업 및 자동차 응용 분야에서 안정적인 실시간 통신 지원
      • 이더넷 커넥터 - 고속 결정적 네트워킹 솔루션 지원
  • 주변 장치 연결:
    • USB 3.0 및 USB 2.0 포트 - 유연하고 다양한 연결 옵션을 보장하여 다양한 주변 장치 연결
    • PCIe 3.0 슬롯 - 고속 데이터 전송 및 확장 옵션 지원
  • 멀티미디어 및 디스플레이:
    • 이중 LVDS(저전압 차동 신호) 인터페이스 - 여러 디스플레이 연결.
    • HDMI 2.0a TX 출력 - 고화질 동영상 출력, 4K 해상도 지원
    • 여러 MIPI 인터페이스:
      • MIPI CSI(카메라 직렬 인터페이스) 포트 2개 - 고급 카메라 솔루션용, 고품질 이미지 및 동영상 캡처 지원
      • MIPI DSI(디스플레이 직렬 인터페이스) 포트 1개 - 고급 디스플레이 솔루션용, 고성능 시각적 출력 보장

다양한 산업에서 정교한 고성능 응용 제품을 구현하려는 개발자는 강력한 처리 기능, 확장 연결 옵션 및 고급 멀티미디어 기능을 조합한 i.MX 8M Plus SoM를 다목적 솔루션으로 사용할 수 있습니다. 산업 제어 시스템, 스마트 홈 장치, 고급 멀티미디어 응용 제품 등에서 i.MX 8M Plus SoM을 사용하면 오늘날의 까다로운 기술 요구 사항을 충족하는 데 필요한 유연성과 성능을 확보할 수 있습니다.

i.MX 8M Plus에서 CPU 주파수를 줄이는 방법

i.MX 8M Plus에서 CPU 주파수를 줄이려면 DTS(Device Tree Source) 파일에서 작동 지점 테이블(opp-table)을 수정해야 합니다. DTS 파일은 가능한 CPU 주파수 및 해당 전압 레벨을 결정하는 시스템의 하드웨어 구성(사용 가능한 CPU 작동 지점 포함)을 정의합니다. 이러한 작동 지점을 조정하여 CPU가 작동하는 최대 및 최소 주파수를 제어할 수 있습니다(그림 2 및 목록 1).

그림 2: CPU 작동 주파수가 어떻게 변경되는지를 보여주는 흐름도 (이미지 출처: iWave)

복사a53_opp_table:opp-table 
{ 
               compatible=“operating-points-v2”; 
                opp-shared; 
                opp-100000000 { 
                        opp-hz = /bits/ 64 <100000000>; 
                        opp-microvolt = <850000>; 
                        opp-supported-hw = <0x8a0>, <0x7>; 
                        clock-latency-ns = <150000>; 
                        opp-suspend; 
                }; 
                opp-200000000 { 
                        opp-hz = /bits/ 64 <200000000>; 
                        opp-microvolt = <850000>; 
                        opp-supported-hw = <0x8a0>, <0x7>; 
                        clock-latency-ns = <150000>; 
                        opp-suspend; 
                }; 
                opp-800000000 { 
                        opp-hz = /bits/ 64 <800000000>; 
                        opp-microvolt = <850000>; 
                        opp-supported-hw = <0x8a0>, <0x7>; 
                        clock-latency-ns = <150000>; 
                        opp-suspend; 
                }; 
                opp-1000000000 { 
                        opp-hz = /bits/ 64 <1000000000>;
                        opp-microvolt = <850000>; 
                        opp-supported-hw = <0x8a0>, <0x7>; 
                        clock-latency-ns = <150000>; 
                        opp-suspend; 
                };

목록 1: CPU 작동 전압 및 주파수를 설정하기 위한 코드.

다음은 CPU 정주파를 설정하는 명령입니다.

  • 최대 주파수 사용:

echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

  • 현재 주파수를 정주파로 사용:

echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

  • 다음 두 명령은 비율 조정 관리자를 지정된 주파수(지원되는 경우)로 설정합니다. 주파수가 지원되지 않는 경우 지원되는 가장 가까운 주파수가 사용됩니다.

echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

echo <frequency> > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed

표 1: 이러한 항목은 다양한 작동 상태에 대한 주파수-전압 쌍을 지정하여 시스템에서 워크로드 요구 사항에 따라 성능을 동적으로 조정할 수 있도록 합니다.

요약

설계자는 DVFS 전력 관리 기술을 사용하여 임베디드 시스템에서 성능 및 에너지 효율을 최적화할 수 있습니다. DVFS를 사용하면 워크로드 수요에 따라 프로세서의 전압과 주파수를 동적으로 조정하여 전력 소비와 열 발생을 효율적으로 줄일 수 있습니다. 이는 배터리로 구동되고 열적 제약이 있는 환경에서 중요한 기능입니다.

작성자 정보

Image of Tawfeeq Ahmad

Tawfeeq Ahmad는 iWave Systems Technologies Pvt. Ltd에서 제품 마케팅 부서를 이끌고 있습니다. 전자 부품에 대한 열정과 마케팅 및 영업에 대한 관심을 품고 있는 Tawfeeq는 iWave의 다양한 내장 전문 지식을 통해 전 세계 조직이 제품 개발에서 개발 주기와 효율성을 향상시킬 수 있도록 지원하는 것을 목표로 합니다. 전자 및 통신 분야에서 학사 학위를 받고 마케팅 분야에서 MBA를 취득한 Tawfeeq는 iWave Systems가 제품 엔지니어링 조직으로서 글로벌 리더 반열에 오르는 것을 목표로 합니다.

More posts by Tawfeeq Ahmad
 TechForum

Have questions or comments? Continue the conversation on TechForum, Digi-Key's online community and technical resource.

Visit TechForum