i.MX 8M Plus 系统级模块 DVFS 支持 CPU 频率控制
动态电压和频率调节 (DVFS) 是一种复杂的电源管理技术,对于优化嵌入式系统的性能和能效至关重要。DVFS 可根据工作负载需求动态调整处理器的电压和频率,从而有效降低功耗和发热。这在电池供电和热受限的环境中尤其重要,因为在这些环境中,能效和热管理是关键因素。
这项技术的工作原理是降低处理器的频率,从而直接减少功耗和发热。同时,通过调节电压确保处理器在各种性能状态下都能保持稳定并可靠运行。这种动态调节有几个主要优势:
- 能效:DVFS 可显著降低功耗,从而延长便携式设备的电池续航时间。这使其成为依赖有限电源的移动和物联网 (IoT) 设备的重要功能。
- 热管理:通过降低发热,DVFS 有助于维持设备的可靠性和性能。有效的热管理可防止过热,而过热会导致硬件故障或性能下降。
- 性能优化:DVFS 通过在需要时提供必要的计算能力,同时在执行要求不高的任务时节省能源,从而在性能和功耗之间取得平衡。这种平衡可确保设备高效运行,而不会影响电源效率。
在 i.MX 8M Plus 系统级模块 (SoM) 上实施 DVFS,突出了其重要性、运行机制以及利用此功能实现最佳性能和电源效率所需的步骤。通过了解和利用 DVFS,开发人员可以提高其嵌入式系统的能效和可靠性,使这些系统在各种应用中更稳健、更强大。
i.MX 8M Plus 系统级模块概述
i.MX 8M Plus 系统级模块 (SoM)(图 1)以 NXP i.MX 8M Plus 应用处理器为核心。该处理器采用强大的四核 Arm Cortex-A53 CPU,运行速度高达 1.6 GHz,并辅以专为实时处理任务而设计的 Arm Cortex-M7 内核。i.MX 8M Plus 有一个突出特点:该器件集成的神经处理单元 (NPU) 能够提供每秒 2.3 万亿次运算 (TOPS),显著加快了机器学习推理任务的速度。
图 1:iWave i.MX 8M Plus SoM。(图片来源:iWave)
该 SoM 旨在通过提供广泛的多媒体、连接和 AI 功能来满足现代应用程序的多样化需求。这些特性使其适用于从工业自动化和机器人到智能家居设备和消费类电子产品等应用。
主要特性和功能:
- 处理能力:
- 四核 Arm Cortex-A53 处理器,运行频率高达 1.6 GHz
- Cortex-M7 内核,用于处理实时处理任务
- AI 和机器学习:
- 集成的 NPU,提供 2.3 TOPS 算力,加速机器学习推理过程
- 连接选项:
- 无线:
- 支持 Wi-Fi6,实现高速无线连接
- 蓝牙 5.0,可与外围设备进行稳定高效的无线通信
- 有线:
- 双 CAN-FD(具有灵活数据速率的控制器区域网络)接口,在工业和汽车应用中实现可靠的实时通信
- 以太网连接器,提供高速、确定性网络解决方案
- 外设连接:
- USB 3.0 和 USB 2.0 端口,连接各种外设,确保提供灵活多样的连接选项
- PCIe 3.0 插槽,用于高速数据传输和扩展选项
- 多媒体和显示器:
- 双 LVDS(低压差分信号)接口,用于连接多台显示器
. - HDMI 2.0a TX 输出,用于高清视频输出,支持 4K 分辨率
- 多个 MIPI 接口:
- 2 个 MIPI CSI(摄像头串行接口)端口,用于高级摄像头解决方案,实现高质量图像和视频采集
- 1 个 MIPI DSI(显示器串行接口)端口,用于高级显示器解决方案,确保高性能视觉输出
i.MX 8M Plus SoM 兼具强大的处理能力、广泛的连接选项和先进的多媒体功能,使其成为开发人员在各个行业中实现复杂、高性能应用的多功能解决方案。无论是用于工业控制系统、智能家居设备还是先进的多媒体应用,i.MX 8M Plus SoM 都能提供满足当今苛刻的技术要求所需的灵活性和性能。
如何利用 i.MX 8M Plus 降低 CPU 频率
利用 i.MX 8M Plus 降低 CPU 频率涉及修改设备树源 (DTS) 文件中的操作点表 (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 可根据工作负载需求动态调整处理器的电压和频率,从而有效降低功耗和发热,这在电池供电和热受限的环境中至关重要。
Have questions or comments? Continue the conversation on TechForum, Digi-Key's online community and technical resource.
Visit TechForum