A40i评估板评测


1.1系统启动测试
接入电源,并使用Micro  USB线连接PC机和评估板的USB  TO  UART0调试串口。打开设备管理器,确认评估板USB  TO  UART0调试串口对应的COM端口号。
forum.jpg
打开串口调试终端Mobaxterm,新建Session,选择Serial, 对应的COM端口号,设置波特率为115200,建立串口连接,如下图所示。

forum.jpg

将Linux系统启动卡插入评估板Micro  SD卡槽,根据评估底板丝印将启动方式选择拨码开关拨为0(并非拨码开关上文字),此档位将优先从Linux系统启动卡中启动系统。将评估板上电启动,系统将会自动登录root用户,串口终端会打印如下类似启动信息。

forum.jpg

核心板LED在系统启动过程中的变化说明如下:评估板上电后,电源指示灯LED0点亮;随后U-Boot第一阶段启动,LED1点亮;紧接着U-Boot第二阶段启动,LED2点亮;直至内核启动运行时,LED2熄灭,LED1进行心跳闪烁;eMMC进行读写时,LED2闪烁。

1.2.2通过OpenSSH连接评估板

OpenSSH是SSH(Secure Shell)协议的免费开源实现。SSH协议族可用来进行远程控制,或在计算机之间传送文件,评估板文件系统默认已支持SSH库。

将评估板RGMII ETH网口通过网线连接至路由器。在评估板上执行如下命令可自动获取到IP,如下图所示。"-i"用于指定网卡,eth0为网卡名字,请根据实际情况修改。
Target#udhcpc -i eth0

执行如下命令
Target#ifconfig
可查询IP地址。本次查询到的IP地址是192.168.0.85
forum.jpg
创建ssh会话,操作如下:
forum.jpg
forum.jpg
1.2.3通过OpenSSH的SCP服务实现开发板与电脑之前互相文件
192.168.0.85是前一天查询结果, 评测有中断, 测试当天IP192.168.0.88看下图。
打开winSCP创建scp连接
forum.jpg
连接后会提示启动Putty SSH终端, 我们有更好用的mobaxterm, 就不用 putty
forum.jpg
forum.jpg
连接后, 可以看到开发板/root目录下文件列表,及电脑本地文件目录, 像操作windows一拖一下就可实现开发板与电脑之间文件互传。
forum.jpg
mobaxterm连接后, 也可以看到开发板文件目录, 这个不如winSCP方便稳定 。

forum.jpg

没有winSCP也使用scp命令实现 PC机与评估板文件互想

Mobaxterm打开一个命令行终端

使用scp命令从PC机传送文件至评估板执行如下命令:
Host#touch test1//新建文件
Host#scp test1 root@192.168.0.85
在PC新建文件test1,并使用scp命令将test1文件拷贝至评估板文件系统根目录。
forum.jpg
连接评估板ssh终端
Host#ssh root@192.168.0.85


如出现提示"Are you sure you want to continue connecting (yes/no)?",请输入:yes。
在评估板上执行如下命令可看到从PC机拷贝过来的文件,如下图所示。
Target#ls

使用OpenSSH从评估板传送文件至PC机执行如下命令在评估板文件系统根目录新建一个测试文件test2。
Target#cd /
Target#touch test2  //新建文件

1.3LED测试

评估底板LED1、LED2与GPIO对应关系如下表所示,系统启动后默认点亮。
LED与GPIO对应表如下:
LED1LED2
PB4   PB10
查询系统LED
ls /sys/class/leds
查看led状态值
cat /sys/class/leds/user-led0/brightness

forum.jpg
默认LED1 LED2是全亮的
forum.jpg
进入评估板文件系统,执行如下命令逐盏熄灭、点亮LED。
forum.jpg
forum.jpg

1.4按键测试
评估底板包含3个用户按键:KEY3、KEY4、KEY5。进入评估板文件系统,执行如下命令查看用户按键对应的事件号。其中KEY3和KEY4对应的按键事件号为event1,KEY5对应的按键事件号为event5。
Target#cat  /proc/bus/input/devices

执行如下命令,按下KEY5进行按键测试,可看到如下打印信息,"00ca"表示KEY5,按"Ctrl  +  C"可终止测试命令。
Target#od -x  /dev/input/event5

forum.jpg

1.5时钟设置测试
Linux系统中分系统时钟(软件时钟)和RTC时钟(硬件时钟),系统时钟掉电即会消失,RTC时钟在安装电池的情况下会长期运行。如需使用外部RTC时钟,请先安装RTC电池。如下为时钟相关的常用命令。

forum.jpg

2)查看RTC时钟
Target#hwclock  -u
(3)设置系统时间
Target#date -s  "2021-03-10  16:15:00"//设置时间:2021年3月10日16点15分00秒T
arget#date
(4)同步系统时钟至RTC时钟
Target#hwclock --systohc -u
Target#hwclock -u
(5)同步系统和RTC的时钟执行指令后,系统会同步RTC时钟作为系统时钟。
Target#hwclock --hctosys -u

forum.jpg

1.6DDR读写测试
DDR读写速度受实际情况影响,测试速率以具体情况为准,如下测试数据仅供参考。
(1)DDR读速度测试进入评估板系统,执行如下命令对DDR进行读速度测试。
Target#bw_mem 50M  rd图  30 测试从DDR中读取50MByte数据,可看到本次测试的读速度为1207.58MB/s。
(2)DDR写速度测试进入评估板系统,执行如下命令对DDR进行写速度测试。Target#bw_mem 50M  wr图  31 测试写入50MByte数据至DDR中,可看到本次测试的写速度为617.55MB/s。(3)DDR拷贝速度测试进入评估板系统,执行如下命令对DDR进行拷贝速度测试。
Target#bw_mem 50M  cp
forum.jpg

测试拷贝50MByte数据至DDR中,可看到本次测试的拷贝速度为328.59MB/s。1.7Micro SD接口读写测试本小节使用SanDisk品牌、128GByte容量的Micro  SD卡来测试评估板Micro  SD接口性能。请参考《Linux系统启动卡制作及系统固化》文档将其制作成Linux系统启动卡再进行测试。不同的Micro  SD卡以及不同的测试方法,对Micro  SD接口测试结果将造成一定差异。请先取出Linux系统启动卡,根据底板丝印将启动方式选择拨码开关拨为0,将评估板上电,系统将从eMMC启动,  再将Linux系统启动卡插入评估板Micro  SD卡槽。  进入评估板文件系统执行如下命令查看Micro SD卡信息。
Target#fdisk -l
forum.jpg

测试拷贝50MByte数据至DDR中,可看到本次测试的拷贝速度为328.59MB/s。1.7Micro SD接口读写测试本小节使用SanDisk品牌、128GByte容量的Micro  SD卡来测试评估板Micro  SD接口性能。请参考《Linux系统启动卡制作及系统固化》文档将其制作成Linux系统启动卡再进行测试。不同的Micro  SD卡以及不同的测试方法,对Micro  SD接口测试结果将造成一定差异。请先取出Linux系统启动卡,根据底板丝印将启动方式选择拨码开关拨为0,将评估板上电,系统将从eMMC启动,  再将Linux系统启动卡插入评估板Micro  SD卡槽。
  进入评估板文件系统执行如下命令查看Micro SD卡信息。
Target#fdisk -l

(1)Micro  SD接口写速度测试进入评估板系统,执行如下命令测试Micro  SD接口写速度。
Target#echo  3  >  /proc/sys/vm/drop_caches
Target#mkdir -p  /run/media/mmcblk1p7
Target#mount  /dev/mmcblk1p7  /run/media/mmcblk1p7
Target#time dd if=/dev/zero of=/run/media/mmcblk1p7/test bs=1024K count=500time
命令有计时作用,dd用于复制,从if(input  file)文件读出,写到of(output  file)指定的文件,bs是每次写块的大小,count是读写块的数量。"if=/dev/zero"不产生IO,即不断输出数据,可用来测试纯写速度。
此处一共写500MByte测试数据至Micro  SD卡的test文件,可看到本次测试的Micro  SD接口写速度约为:500MB/24.603s  =  20.32MB/s。
(2)Micro  SD接口读速度测试执行如下命令测试Micro  SD接口读速度。
Target#echo  3  >  /proc/sys/vm/drop_cachesTarget#time  dd  if=/run/media/mmcblk1p7/test  of=/dev/null  bs=1024K"of=/dev/null"
不产生IO,即不断接收数据,可用来测试纯读速度。

forum.jpg
此处从test文件一共读出500MByte的数据,可看到本次测试的Micro  SD接口读速度约为:500MB/26.714s  =  18.71MB/s。1.8eMMC读写测试将Linux系统启动卡插入评估板Micro SD卡槽,评估板上电启动完成后,执行如下命令查看信息。
Target#fdisk -l
(1)eMMC写速度测试执行如下命令对eMMC设备进行写速度测试。
Target#echo  3  >  /proc/sys/vm/drop_caches
Target#mkdir -p  /run/media/mmcblk0p7
Target#mount  /dev/mmcblk0p7  /run/media/mmcblk0p7
Target#time  dd  if=/dev/zero  of=/run/media/mmcblk0p7/test  bs=1024K  count=500
此处一共写500MByte测试数据至eMMC设备,可看到本次测试的eMMC设备写速度约为500MB/6.489s  =  77.05MB/s。
(2)eMMC读速度测试执行如下命令对eMMC设备进行读速度测试。Target#echo  3  >  /proc/sys/vm/drop_caches
Target#time  dd  if=/run/media/mmcblk0p7/test  of=/dev/null  bs=1024K
此处从eMMC设备中一共读出500MByte数据,可看到本次测试的eMMC设备读速度约为500MB/5.491s  =  90.05MB/s。