MSCALER
概述
MSCALER 用于图像放大和缩小,可独立调整宽、高,完成等比、非等比及宽高反向缩放,也可与 JPEG 编码器联动。输入支持单 Y、NV12(YUV420)和 YUYV(YUV422),输出保持输入格式,适用于图像尺寸调整与编码前处理。
性能概览
在 166.667 MHz 模块时钟下,1920 × 1080 原尺寸转换实测为 50.9 fps(NV12)、43.0 fps(YUYV);1920 × 1440 缩小至 1280 × 720 实测为 45.5 fps、42.2 fps。结果按连续 30 帧统计,为独立转换通路性能。
图像转换性能
1920 × 1440 原尺寸转换实测为 NV12 38.2 fps、YUYV 32.2 fps;最高已测帧率出现在 480 × 320 原尺寸转换,分别为 675.7 fps、574.3 fps。
| 输入分辨率 | 输出分辨率 | NV12 帧率 (fps) | NV12 平均耗时 (ms/帧) | YUYV 帧率 (fps) | YUYV 平均耗时 (ms/帧) |
|---|---|---|---|---|---|
| 1920 × 1440 | 1920 × 1440 | 38.2 | 26.1 | 32.2 | 30.9 |
| 1920 × 1080 | 1920 × 1080 | 50.9 | 19.6 | 43.0 | 23.2 |
| 1280 × 720 | 1280 × 720 | 114.2 | 8.7 | 96.6 | 10.3 |
| 640 × 480 | 640 × 480 | 340.3 | 2.9 | 288.6 | 3.4 |
| 480 × 320 | 480 × 320 | 675.7 | 1.4 | 574.3 | 1.7 |
| 1920 × 1440 | 1280 × 720 | 45.5 | 21.9 | 42.2 | 23.6 |
| 1920 × 1440 | 640 × 480 | 48.7 | 20.5 | 45.8 | 21.8 |
帧率和平均每帧耗时来自同一次连续 30 帧测量,表中数值分别保留一位小数。测量前预热 3 帧,重复使用同一块 DDR 目标缓冲区;不计素材读入、初始化、释放和 SD 写入时间,不能作为完整图像采集或存储链路的帧率。
扩展尺寸实测
最高已测输入、输出尺寸为 1920 × 2040,原尺寸转换实测为 NV12 26.1 fps、YUYV 22.0 fps;该输入缩小至 1280 × 720 时分别为 32.4 fps、30.1 fps。
| 输入分辨率 | 输出分辨率 | NV12 帧率 (fps) | NV12 平均耗时 (ms/帧) | YUYV 帧率 (fps) | YUYV 平均耗时 (ms/帧) |
|---|---|---|---|---|---|
| 1920 × 2040 | 1920 × 2040 | 26.1 | 38.2 | 22.0 | 45.3 |
| 1280 × 2040 | 1280 × 2040 | 39.0 | 25.5 | 32.9 | 30.3 |
| 1920 × 2040 | 1920 × 1440 | 28.2 | 35.3 | 24.4 | 40.9 |
| 1920 × 2040 | 1280 × 720 | 32.4 | 30.8 | 30.1 | 33.2 |
| 1920 × 1440 | 1920 × 2040 | 27.1 | 36.8 | 23.3 | 42.8 |
此组为独立一次测试,沿用 3 帧预热、连续 30 帧转换的统计方式。其中 1920 × 2040、1280 × 2040 输入使用固件自动生成图像;不同输入内容及负载下的性能需另行验证。模块功能文档标注的最大输入、输出尺寸为 1920 × 1440,以上扩展实测点不能视为更大尺寸的规格保证。
缩放功能与 JPEG 联动
单 Y、NV12、YUYV 下的 15 组几何配置均完成转换,共 45 项;覆盖 1:1、单方向缩放、等比与非等比缩放、宽高反向缩放。例如 640 × 480 → 1920 × 960(宽放大 3 倍、高放大 2 倍),以及 1920 × 640 → 640 × 1280(宽缩小、高放大)。另完成 640 × 480 → 1920 × 1440 的放大配置。
以上为转换流程验证;未给出缩放图像的定量误差、PSNR 或 SSIM,不能据此认定像素精度或画质等级。
| 验证项目 | 已测配置与结果 |
|---|---|
| 半直通联动 | 1280 × 720 → 640 × 480,单 Y、NV12、YUYV 分别使用 0.5 帧或 1 帧 DDR 回环空间,共 6 项;每项连续编码 3 帧,输出为合法 baseline JPEG,同格式跨空间配置的码流逐字节一致。 |
| 交互行数 | 需匹配 JPEG MCU 行高:单 Y 与 YUYV 为 8 行,NV12 为 16 行;640 × 480 输出的回环空间为 240 行或 480 行。 |
| 联动时钟比例 | 1280 × 720 NV12 → 640 × 480;MSCALER/JPEG 比例实测为 1.0、0.5、0.9、0.77、1.125、1.3、1.5,每组编码 5 帧,输出合法且各比例码流逐字节一致。0.77 为显示近似值,对应 JPEG/MSCALER 分频比 10/13。 |
联动测试验证了输出码流一致性,未给出联动帧率;上述独立转换性能不能代替 JPEG 联动吞吐。时钟比例为离散实测点,不构成连续比例范围保证。
测试条件
| 项目 | 条件 |
|---|---|
| 芯片与硬件 | G32S10 系列;性能数据在 S107 SK SLT 真片上取得,S103 不支持本次性能测量。 |
| MSCALER 时钟 | MPLL 父时钟,默认分频后的实际频率为 166.667 MHz;170 MHz 为控制器配置上限,并非本次测量频率。 |
| 性能负载 | 独立 MSCALER 转换通路,NV12/YUYV;常规组读入 SD 素材,扩展组的 2040 高度输入由固件生成。 |
| 联动时钟 | MSCALER 与 JPEG 均使用 MPLL 父时钟,通过各自的 1~16 分频配置形成上述比例;联动时钟测试单独切换频率。 |
文档入口:查看 MSCALER 用户手册 · 查看 MSCALER SDK 文档。