V2M-Juno r2开发板采用两级供电设计,同时支持12V DC电源和标准ATX电源输入。这种双电源方案为开发者提供了灵活的供电选择,特别适合不同阶段的硬件验证需求。
主板的标准供电方案采用外置AC-DC适配器,输入电压范围覆盖100-240V AC,输出为12V DC。这个设计有三大技术考量:
电源连接器采用标准4针Molex接口,引脚定义如下表所示:
| 引脚 | 信号 | 规格要求 |
|---|---|---|
| 1 | +12V | 额定电流≥3A |
| 2 | GND | 低阻抗接地 |
| 3 | GND | 冗余接地 |
| 4 | +12V | 电流冗余路径 |
实际使用中发现,当采用第三方电源适配器时,务必确保接地引脚阻抗低于50mΩ,否则可能导致PMIC通信异常。
主板通过PMIC(RT5115)实现多电压域供电,主要分为三个层级:
电源状态通过三色LED直观显示:
实测数据表明,在Cortex-A72全核满载时,12V输入端的电流波动可达±0.5A,因此建议在电源入口处部署1000μF以上的储能电容。
Juno r2的DVFS系统通过SCP(System Control Processor) Cortex-M3处理器实现闭环控制,其工作流程如下:
关键寄存器配置示例:
c复制// PMIC电压调节寄存器
#define VDD_A72_SET 0x23
#define VDD_A53_SET 0x27
#define VDD_GPU_SET 0x2B
// SCP控制命令
typedef struct {
uint8_t cmd;
uint16_t delay_us;
uint8_t data[3];
} scp_ctrl_packet;
实测不同工作模式下的最佳V-F组合:
| 模式 | A72频率 | 电压 | 能效比 |
|---|---|---|---|
| Underdrive | 600MHz | 0.85V | 1200DMIPS/W |
| Nominal | 1GHz | 1.0V | 950DMIPS/W |
| Overdrive | 1.2GHz | 1.15V | 800DMIPS/W |
调试中发现,当环境温度超过65℃时,建议锁定在Nominal模式以避免PVT传感器触发降频。
主板采用分层时钟设计,核心时钟源为50MHz OSC0,通过以下路径分发:
系统参考时钟:
处理器时钟:
外设时钟:
通过修改microSD卡中的board.txt调整时钟参数:
ini复制[clock_generators]
osc0_freq = 50000000 ; 50MHz主时钟
a72_pll_mul = 24 ; 50MHz*24=1.2GHz
dmc_div = 4 ; 400MHz内存控制器时钟
常见配置问题排查:
芯片内置的PVT(Power-Voltage-Temperature)传感器实现三级保护:
校准参数存储在OTP区域,包含:
基于实测数据给出的散热方案:
典型故障案例:
通过SCP_I2C接口可独立控制各电源域:
bash复制# 关闭GPU电源域
i2cset -y 3 0x40 0x12 0x00
# 开启A53保留模式
i2cset -y 3 0x40 0x18 0x5A
实测功耗对比(1080p视频解码场景):
| 模式 | 整板功耗 | 节省比例 |
|---|---|---|
| 全功能模式 | 8.7W | - |
| GPU关闭 | 6.2W | 29% |
| A53-only | 3.8W | 56% |
通过APB寄存器控制时钟门控:
c复制#define CLK_GATE_EN 0x50020000
// 关闭SPI时钟
*(volatile uint32_t*)(CLK_GATE_EN) &= ~(1 << 3);
注意事项:
PCB布局要点:
调试技巧:
可靠性验证:
这套电源时钟系统在多个量产项目中已验证的优化方向包括:将PMIC的I2C上拉电阻从10kΩ减小到4.7kΩ可提升通信可靠性;在时钟发生器输出端串联22Ω电阻能改善信号过冲问题。对于需要进一步降低功耗的场景,可考虑用PMIC的PFM模式替代PWM模式,虽然会牺牲一些负载响应速度,但能在轻载时额外获得约15%的能效提升。