第一款64位的香蕉派—Banana PI-M64评测

第一款64位的香蕉派—Banana PI-M64评测

**0.**引言

随着目前单板计算机(SBC)的快速发展,国内外都涌现出了一批十分优秀的开源硬件。像树莓派、香蕉派,还有96boards都是其中的代表,而香蕉派几乎就是国产开源SBC的领导品牌了。香蕉派家族使用的是国产的CPU,以全志公司的为主。香蕉派产品不仅仅能够用于开发项目,更可以直接作为小型安卓平板进行日常应用,由于在拥有不俗配置的同时兼顾了成本,因此能够扬名全球。

去年年底,深圳市源创通信技术有限公司推出了一款新的香蕉派系列产品,这就是香蕉派M64(BananaPiM64,下文简称 BPI-M64),这款产品是第一款64位的香蕉派产品,同时搭载的CPU ——Allwinner A64,也是全志公司第一款64位的CPU。

随着目前64位的ARM Cortex-A系列核心的流行,开源硬件市场上面也出现了一批不错的64位开发板。作为其中的一员,BPI-M64有什么特别之处,下面笔者将会详细介绍。

**1.**开发板外观展示

BPI系列开发板一贯使用的就是这种非常简单的包装,包装上只有商品名,一个条形码,没有过多的介绍。给人的感觉就是低调。


图1.1 开发板外包装

图1.2展示的就是这款BPI-M64产品,板卡布局上面与前面几代都比较相似,不过芯片多了一些。多数元件都在这一面


图1.2 开发板正面

图1.3展示的是板卡的背面,背面主要是SD卡槽与两块内存芯片,以及一些电容。


图1.3 开发板背面

图1-4展示的是BPI-M64(左)与BPI-M3(右)的对比,这两款产品是目前BPI家族最强的两款开发板。BPI-M64与BPI-M3的尺寸,接口位置都几乎一样,不过BPI-M64去掉了SATA接口。


图1.4 BPI-M64与BPI-M3

**2.**硬件介绍

这一部分笔者将介绍一下开发板上面的硬件资源。

从一台完整的SBC的角度来说,必须的部分由以下几个:CPU、存储器、电源、GPIO口、通信用的接口。下面笔者就从这个角度介绍一下BPI-M64的硬件组成:

1、CPU:全志A64

全志A64是全志公司推出的新一代64位产品。相应的,这款产品也支持64位操作系统。同时这款芯片的成本较低,性价比极高,具体参数如下:

  • CPU:四核ARM Cortex-A53,主频1.2GHz

  • GPU:双核 Mali400 GPU 频率为500MHz,支持 OpenGL ES 2.0

  • 支持H.265 4K@30fps视频输出

  • 支持HDMI

  • 支持500万像素摄像头,最大支持1080p@30fps拍摄

  • 支持LPDDR2/ LPDDR3/ DDR3/ DDR3L SDRAM

  • 支持eMMC 5.0标准的存储。

其内部框图如下:


图2.1 全志A64框图

2、存储器

RAM部分,芯片为来自SKhynix公司的H5TQ4G83AFR-PB,其容量为512MB每片,共有4片。此内存的标准为DDR3-1600。

ROM部分,芯片为来自 三星公司的KLM8G1WEPD-B031,其容量为8GB,支持的标准为eMMC 5.0。

此外,开发板还支持使用SD卡,最大的容量为256GB,也可以使用U盘与移动硬盘等便捷存储设备。

3、通信接口

板载的通信接口包括无线WiFi/蓝牙,千兆以太网,两路USB Host,一路USB otg,一路HDMI输出,一路MIPI CSI摄像头接口,一路MIPI DSI视频输出,一路3.5mm音频输出。

  •  WiFi/蓝牙模块型号为AP6212,来自台湾Ampak公司,这个模块的主控芯片为博通公司Broadcom43438芯片,支持2.4GHz IEEE802.11b/g/n 标准WiFi和蓝牙4.0,这个模块在国产开发板上面使用得十分广泛。此模块挂载在SDIO接口上面。
    
  •  以太网PHY是来自realtek公司的RTL8211E,此芯片支持IEEE 802.3标准10/100/1000兆以太网自适应。
    
  •  USB扩展芯片为TERMINUS公司的FE 1.1s ,用于将CPU的一路USB 2.0 Host扩展成两路USB 2.0 Host。
    
  •  HDMI、MIPI CSI、MIPI DSI、音频输出都为CPU本身支持的功能。
    

4、供电

开发板上面有一块电源管理芯片AXP803,此芯片负责将外部供电转换为开发板上面众多模块的电源供应。开发板需要的外部供电为5V 2A。

5、40pin GPIO口

这里的40pinIO口与树莓派2上面的兼容,具体定义如下


图2.2 GPIO定义

从硬件方面来说,这块开发板的配置确实不错,提供了2GB DDR3,8GB eMMC,以及众多的通信接口,加上64位CPU独有的优势,可以说BPI-M64比前面的产品还是有一定的提升。

这一部分的最后,笔者将BPI M64与BPI M3进行个简单对比,看看这两款BPI家族最强者有哪些不同。
[table=530]
[tr] [td=143]

[/td] [td=180]

BPI-M64

[/td] [td=208]

BPI-M3

[/td] [/tr]
[tr] [td=143]

主控芯片

[/td] [td=180]

全志A64

[/td] [td=208]

全志A83t

[/td] [/tr]
[tr] [td=143]

CPU

[/td] [td=180]

4核cortex A53 1.2 GHz

[/td] [td=208]

8核cortex A7 2.0 GHz

[/td] [/tr]
[tr] [td=143]

GPU

[/td] [td=180]

Mali 400 MP2 500MHz

[/td] [td=208]

SGX544 MP2 700 MHz

[/td] [/tr]
[tr] [td=143]

USB(Host+otg)

[/td] [td=180]

2+1

[/td] [td=208]

2+1(外加一路扩展SATA)

[/td] [/tr]
[tr] [td=143]

WIFI/蓝牙

[/td] [td=180]

AP6212

[/td] [td=208]

AP6212

[/td] [/tr]
[tr] [td=143]

以太网口

[/td] [td=180]

千兆

[/td] [td=208]

千兆

[/td] [/tr]
[tr] [td=143]

摄像头接口

[/td] [td=180]

[/td] [td=208]

[/td] [/tr]
[tr] [td=143]

LCD接口

[/td] [td=180]

[/td] [td=208]

[/td] [/tr]
[tr] [td=143]

HDMI

[/td] [td=180]

[/td] [td=208]

[/td] [/tr]
[tr] [td=143]

RAM

[/td] [td=180]

2GB DDR3

[/td] [td=208]

2GB DDR3

[/td] [/tr]
[tr] [td=143]

EMMC

[/td] [td=180]

8GB

[/td] [td=208]

8GB

[/td] [/tr]
[tr] [td=143]

价格(官方)

[/td] [td=180]

285

[/td] [td=208]

429

[/td] [/tr]
[tr] [td=143]

面积(mm*mm)

[/td] [td=180]

92*60

[/td] [td=208]

92*60

[/td] [/tr]
[/table]

可以看出,二者区别主要还是在CPU与价格方面,由于A83t本身比A64贵,因此BPI-M3价格也要比BPI-M64贵。

**3.**开发环境搭建

这一部分介绍一下如何搭建开发环境,为进一步开发做准备。

对于这种高性能开发板来说,只要能够在开发板上面部署操作系统,就能够进行独立开发,不再需要PC机。因此,搭建开发环境工作主要就是烧写系统。

这个开发板支持的操作系统有很多,包括各式各样的Linux系统的衍生版,比如Raspbian、Ubuntu、kali、Cent OS,还有就是大家很熟悉的Android系统,以及最近很热门的win 10 iot这里推荐大家使用Android系统,由于全志公司本身是将这块芯片应用在安卓平板方向,因此这个安卓系统算是全志官方支持的系统。值得一提的是,这款开发板支持的是最新的安卓6.0.接下来笔者就以烧写Android6.0系统为例介绍一下如何烧写系统。

烧写Android系统的步骤如下:

1、准备好以下工具:开发板一块、USBA-B线一条、HDMI线一条、支持HDMI的显示屏一块、鼠标、键盘、PC机一台

2、获取系统镜像,系统镜像在以下网址获取:

https://pan.baidu.com/s/1jI7GeTC

3、为了提高启动系统的速度,需要将系统烧到eMMC里面。这一步在ubuntu 64下面操作。Ubuntu虚拟机的建立过程这里不介绍了。建立完虚拟机之后需要下载一个应用LiveSuit,下载地址为:

https://pan.baidu.com/s/1nuXFnC1

第2、3步下载完之后应该得到如图3.1所示的两个压缩包


图3.1 下载所需文件

4、下载完成后,将烧写软件LiveSuit与操作系统的镜像复制到虚拟机中,解压,命令为

Extract LiveSuitV306_For_Linux64.zip ;

Extract BPI-M64_Android_HDMI_V2.zip ;

5、安装LiveSuit,执行如下几个命令:

sudo apt-get install dkms ;

chmod +x LiveSuit.run ;

./LiveSuit.run ;

执行完之后会出现如图3.2所示的信息


图3.2安装LiveSuit

6、完成上述步骤之后进入home ~/Bin目录,可以执行这个LiveSuit.sh,命令如下:

cd ~/Bin ;

sudo dpkg -iawdev-dkms_0.5_all.deb ;

sudo ~/Bin/LiveSuit/LiveSuit.sh ;

执行完这三条命令之后可以打开如图3.3所示的界面


图3.3 打开LiveSuit

7、点击软件界面上的Image按钮选择.img格式的镜像,如图3.4所示


图3.4 选择镜像

8、开发板连接电源,然后长按电源键10秒关机,用USB线连接开发板与PC,然后按住网口旁边的uboot键,再长按电源键开机,此时PC端会显示有USB设备。操作过程如图3.5。(注意uboot键要一直按住直到有显示新设备)


图3.5 开发板进入烧写emmc

9、此时软件界面会弹出对话框,询问是否烧写系统,选择Yes


图3.6 确认烧写系统

10、等待烧写完成,进度条走到100%,随后开发板上面的三个LED会同时亮起,说明烧写完成。


图3.7 完成烧写系统

11、如果此时有USB转串口的线的话,可以利用串口连接开发板,可以看到开机的信息。


图3.8 串口输出

至此就完成了整个烧写过程。相比起前几代的BPI,这款开发板烧写emmc的过程稍微复杂一点。

此外,如果使用SD卡的话,还是可以使用Imagewriter这款软件。

**4.**系统体验与测试

下面来介绍一下官方为BPI-M64优化了的Android 6.0系统。这款开发板可以说是大陆第一款支持安卓6.0的开源SBC,可以说是与时俱进。

首先是开机界面,是BPI的标志。


图4.1 开机界面

开机之后进入安卓的主界面,这里的界面布局和安卓5.1的差不多。第一次开机需要进行简单设置。


图4.2 桌面

打开WLAN设置,连接WiFi,打开浏览器看是否能够打开网页,以此检测WiFi是否可用


图4.3 浏览网页

下面开始进行性能方面的评估,利用跑分软件安兔兔用于评估开发板的整体性能。

下面直接上测试结果


图4.4 性能测试

安兔兔的分数是:20616。从CPU的角度来说,这个全志A64的性能大约相当于高通的APQ8064处理器,符合其入门级平板方案的定位。

下面进行温度测试,使用的软件为CPU-Z安卓版。全志公司的芯片的一大特点是内部集成了温度传感器,这样能够在温度过高的时候降频,以免烧坏CPU。

如图4.5所示,在CPU-Z的SENSOR界面下可以找到temperature sensor的选项,打开,可以进行测试。


图4.5 打开温度测试

在不运行应用的情况之下,如图4.6所示,温度为47摄氏度


图4.6无应用温度测试

而在播放1080P视频一段时间的时候,芯片温度为55摄氏度。


图4.7播放视频时温度测试

最后来进行功耗测试,下载获取Google公司专门用于测试功耗的软件powertutor 。powertutor是美国密歇根大学与谷歌公司于2012年推出的一款软件,可以测试安卓设备的功耗,包括屏幕,CPU,GSM等,由于此次使用的是HDMI显示屏,同时全志A64没有GSM功能,所以得到的结果就只是CPU的功耗。

如图4.8所示,在没有运行应用的情况下得到的功耗约为430mW。


图4.8无应用时功耗测试

在播放1080P视频的情况下得到的功耗约为733mW。


图4.9播放视频时功耗测试

这里的温度测试与功耗测试使用了播放视频时与无应用时(即相当于操作系统本身消耗)进行对比,可以看出CPU在节能方面做得还是不错的。

**5.**测评总结

本次评测介绍了BPI家族的新一代开发板——BPI-M64。这款开发板是大陆第一款支持Android 6.0的开源SBC,同时采用了全志公司的第一款64位CPU,无论在软件还是硬件方面都有不俗的表现。这块开发板不仅仅可以用于开发,更可以直接作为运行安卓6.0或ubuntu 16的平板电脑来使用。得益于其2.0GB的DDR3内存,这块开发板能够同时运行多个应用。

这块开发板目前稍显不足的就是开发文档比较少,主要还是由于开发板刚出不久,使用的人还比较少。不过这一问题会随着官方对开发板相关文档的不断更新而解决,就像初代香蕉派一样,目前已经有不少的资料了。

不错,不错,写得好。

你好,楼主,请问用SD卡烧写ubuntu应该怎么做,我按照这个帖子的操作进行的http://forum.banana-pi.org.cn/thread-1376-1-1.html,结果开发板一点反应都没有,USB转串口一直不识别,只有红色电源灯亮,你觉得有可能是什么问题呢;还有usb的串口是系统烧好之后才能识别的吗

M64 linux 系统的烧制现在不可按照 官方的方法和 使用官方网站提供的系统 ,原因是 官方系统只是简单拷贝 和修改了 其他相似板子的系统,并没有集成 许多正确的驱动 。具体原因可参考:
https://forum.armbian.com/index.php/topic/3169-request-for-banana-pi-m64

现在有个 老外 提供了 m64 可用的 ubuntu系统,以及 将系统刷入emmc的sh
https://github.com/avafinger/bpi-m64-firmware
具体系统具体 情况可以查阅这个论坛中的:
终于有高手提供了可用的香蕉派M64 定制的ubuntu系统 新人帖

不推荐 安装 现在官方发布的 Linux OS , 它们是基于 树莓派 芯片优化的 OS ,会损失掉许多cpu 性能, 单从 sysbench 的结果来看 相差有10倍,,,
https://forum.armbia…3arm64/?p=12462

我测试 我推荐的非官方系统 cpu 的total time 可以达到 3秒左右 和上面链接 的 Pine64+ (相同 cpu) 结果相似

看来要烧到eMMC上还得andriod……
不过总算是有个可以解放一张SD卡的合理方案了……
看英文头晕,好难解……
另外这板子对SD卡的读取也好坑,动不动就出错……

我现在用的那个 老外提供的ubuntu的os 烧在emmc里面还不错, 那个老外也提到了 sd卡的问题, 这个版是比较挑卡

我也把老外提供的ubuntu烧到了emmc,但是怎么感觉这个系统似乎不太稳定,有时开机完成需要挺久的时间,就是出现附件图片上红色部分就特别慢;然后安装好的东西在重启系统之后就没有了,又要重新装才能使用,如vim。不知楼主和各位是否也有这种情况,这是什么原因导致的,谢谢!

我没有遇见过,系统启动速度还可以,不过我还没有链接蓝牙设备,从你的截屏看貌似是蓝牙在 配对??

不确定, 不过 你可以到那个git上吧你的问题贴上去 ,看看那个作者有什么主意