评测丨飞凌i.MX6ULL开发板性能评测对比


OKMX6ULL-S开发板采用NXP的高性能、超高效、低成本处理器MCIMX6Y2开发设计,采用先进的ARM Cortex-A7内核。开发板采用Linux4.1.15+QT5.6操作系统,支持工业级和商业级两种配置:256MB DDR3L/512MB DDR3L,256MB NandFlash/4GB eMMC,支持OTG、SD/TF卡批量烧写方式,支持单步更新内核。

 

imx6ull开发板接口图

▲OKMX6ULL-S开发板


FETMX6ULL-S与FETMX6UL-C并无太大区别,堪称双胞胎。

FETMX6ULL-S将CPU更换为NXP的i.MX6ULL,主频提升到800MHz;成为FETMX6UL-C核心板的互补产品,而且在功能和FETMX6UL-C完全兼容。

imx6ul与imx6ull对比图 

FETMX6ULL-S相比于FETMX6UL-C最大的提升就是它的主频由528MHz提升到了800MHz。

主频高了,意味着CPU单位时间内可执行的时钟周期多了。可执行时钟周期多了,意味着CPU在单位时间能执行的指令数量就比较多。可用的系统资源相应就比较多。

一句话,主频高了,系统速度相应提高。

通过查看/proc/cpuinfo文件,可以获得CPU等信息:

i.MX6UL的CPU信息如下:


root@imx6ulevk:~# cat /proc/cpuinfo Processor : 0 model name : ARMv7 Processor rev 5 (v7l) BogoMIPS : 3.00 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc07 CPU revision : 5 Hardware : Freescale i.MX6 Ultralite (Device Tree) Revision : 0000 Serial : 262589d4ee6c5c1d


i.MX6ULL的CPU信息如下:


root@fl-imx6ull:~# cat /proc/cpuinfo processor : 0 model name : ARMv7 Processor rev 5 (v7l) BogoMIPS : 3.00 Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae CPU implementer : 0x41 CPU architecture: 7 CPU variant : 0x0 CPU part : 0xc07 CPU revision : 5 Hardware : Freescale i.MX6 Ultralite (Device Tree) Revision : 0000 Serial : 0000000000000000



为了更好地体现二者因主频带来的差异,特别进行了以下两个测试:



01、硬浮点测试

下面进行一个测试,在ubuntu中写一个测试程序,测试程序内容为让开发板进行10亿次加减乘除运算。将测试程序编译后分别移植入FETMX6ULL-S和FETMX6UL-C中,并分别在两个对应的开发板中运行这个硬浮点程序。测试程序如下:



#include <stdio.h> intmain() {    floata = 0.3f, b=1.0f;     longi;    for(i=0;i <1000000000;i++)    {       a = a*b;        a = a/b;        a = a+b;        a = a-b;   }    printf("success ok\n");    printf("%f\n", a * b);   return0; }



FETMX6UL-C硬浮点时间为1分33秒65,而FETMX6ULL-S硬浮点时间为1分02秒45。

由此可知执行相同次数的加减乘除运算,FETMX6ULL-S比FETMX6UL-C快了近30秒,所以FETMX6ULL-S主频高的最大体现就是它的运行速度更快。

02、播放相同的视频时CPU占用率

下载一个480p的视频作为测试素材。将OKMX6UL-C、OKMX6ULL-S两个开发板的频率调节到最大。

1. 当前内核中支持的所有cpufreq governor 类型:

root@freescale/$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors   

串口输出为:

conservative ondemand  userspace  powersave  interactive  performance其中userspace表示用户模式,在此模式下允许其他用户程序调节CPU频率。

2. 查看当前CPU支持的频率档位:

root@freescale/$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies

串口输出为:

198000 396000  528000

3. 设置为用户模式,修改频率为最高:

root@freescale/$ echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

root@freescale/$ echo 528000 > /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed

4. 查看当前频率:

root@freescale/$ cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq

串口输出:

528000

上述过程均以FETMX6UL-C为例,FETMX6UL-C的最高频率可设为528000,FETMX6ULL-S的最高频率可设为792000。

其次,将下载好的测试视频分别放入开发板中并播放。

mplayer-fs -vo fbdev /run/media/mmcblk0p1/t21.mp4

在播放的过程中对CPU占用率进行查询,可得如下图所示结果:

FETMX6UL-C的CPU占用率:

 

FETMX6ULL-S的CPU占用率:

通过图中数据可知FETMX6UL-C的CPU占用率为:99%,而FETMX6ULL-S的CPU占用率为:68%。

由此可知FETMX6ULL-S的占用率更低,因此能耗更低。

 

由上述两个测试可得出结论,因FETMX6ULL-S的主频高于FETMX6UL-C,故其性能相较于FETMX6UL-C也更为优异。与此同时,FETMX6ULL-S核心板与底板间采用的是邮票孔连接方式,其所占空间更小,节省了更多的空间,降低了成本,也更适合在高盐高湿的环境下使用。但因为FETMX6ULL-S采用邮票孔设计,核心板与开发板是一体的,故灵活度差于采用板对板连接器设计的FETMX6UL-C系列。

 

OKMX6UL-C

OKMX6ULL-S

 

综上为FETMX6UL-C和FETMX6ULL-S的对比测评,FETMX6ULL-S有更高的主频,更低的价格,无愧于“性价比之王”的美称。二者也是各有优势,FETMX6UL-C系列的推出时间较长,产品资料和成熟方案较多,成功的方案经验也更丰富一些,大家可根据自己的需求选择更符合自己要求的开发板。


点击此处进入飞凌嵌入式官网>>,了解关于OKMX6ULL-S开发板的更多信息。