1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > AI 边缘计算平台 - 爱芯元智 AX620A 爱芯派开箱

AI 边缘计算平台 - 爱芯元智 AX620A 爱芯派开箱

时间:2018-12-17 02:19:27

相关推荐

AI 边缘计算平台 - 爱芯元智 AX620A 爱芯派开箱

最近疫情有点猛,宅在家里,没事找点事干,撸撸板子吧。

拿出来趁着双 11 优惠,花了 520 RMB / 块,买的两块爱芯派(套餐),来个开箱贴,顺便测试一下开发板的串口、网口、音频、摄像头、屏幕,以及 NPU。

作为一款能耗有很大优势的 AI 边缘计算平台,当然也要测试一下不同工作状态下的功耗情况。

开箱照

厂家SIPEED已经把外壳、屏幕、摄像头和开发板组装好了,套餐还带有读卡器、USB 线和支架等。

详细资料及具体使用方法,参看传送门。

为了看清楚一点,把外壳和插卡拆下来,看看主要部件:

核心板参数:

底板参数:

烧录系统

爱芯派默认板卡没有存储介质,因此需要准备一张 SD 卡来启动设备。

目前爱芯派提供的是 Debian11 Bullseye 镜像,镜像文件比较大,厂家仅提供百度云下载链接。

前往百度云 点我 ,提取码sdls,下载文件,镜像包与校验文件都已经放在里面了。当前最新的版本是:sipeed_ax620a_debian11_1116.img.xz(大约 1.19GB,解压后大约 5.75GB)。

在Windows 10下,选用大于 8GB 的 SD 卡,使用Etcher,烧录系统。

系统烧录好后,插入板卡 SD 卡槽,接一个耳机或者外接音箱,通过 USB 线连接到电脑(USB3.0接口可以提供 1A 电流),板卡会自动启动,启动完成后能听到一段很酷的声音,屏幕显示如下:

接下来,就可以使用 Putty,通过 USB 串口(外边 USB 口,标 Power UART)连接到爱芯派了。

登陆到爱芯派后,就可以通过 ifconfig 命令查询到板子的网络地址,使用网络接口连接。

也可以通过 USB 的线,连接中间 USB 口(标 USB-OTG),通过 USB 网口连接电脑。

如果电脑不能识别 RNDIS 设备,可以在设备管理器里,手动从计算机的设备驱动程序列表中选择,在硬件设备列表中往下拉,找到网络适配器,在网络适配器窗口的制造商列表中选择微软公司,右侧列表中选择远程NDIS兼容设备,来手动更新驱动。

登录后显示:

login as: root

root@192.168.2.178's password: root

Linux AXERA 4.19.125 #56 SMP PREEMPT Mon Nov 14 12:10:17 HKT armv7l

The programs included with the Debian GNU/Linux system are free software;

安装 neofetch,看看系统信息。系统已经设置好安装包的腾讯云镜像了。

(腾讯云 /debian bullseye/main armhf)

root@AXERA:~# apt install neofetch

root@AXERA:~# neofetch

使用htop查看加载的程序及 CPU 使用情况。

root@AXERA:~# htop

测试摄像头和屏幕

我的爱芯派套餐摄像头是低配 gc4653 400w 基础体验版本,成像效果一般,显示是 5 寸的 MIPI DSI 4 Lane 屏,分辨率是 480 x 854。

系统自带一个例子:sample_vin_vo来测试摄像头输入和屏幕显示。

对于我们不熟悉的命令,直接敲入程序名,不带参数,会显示该程序的帮助信息。

root@AXERA:~# sample_vin_vo

[main]-550: ISP Sample. Build at Sep 21 19:22:49

[PrintHelp]-134: command:

[PrintHelp]-135: -c: ISP Test Case:

[PrintHelp]-136: 0: Single OS04A10

[PrintHelp]-137: 1: Single IMX334

[PrintHelp]-138: 2: Single GC4653

[PrintHelp]-139: 3: DUAL OS04A10

[PrintHelp]-141: -e: SDR/HDR Mode:

[PrintHelp]-142: 1: SDR

[PrintHelp]-143: 2: HDR 2DOL

[PrintHelp]-145: -v Interface@Resolution@VRefresh:

[PrintHelp]-146: dpi@<w>x<h>@<refresh>: dpi output

[PrintHelp]-147: dsi0@<w>x<h>@<refresh>: mipi dsi0 output

[PrintHelp]-148: dsi1@<w>x<h>@<refresh>: mipi dsi1 output

[PrintHelp]-149: 2dsi@<w>x<h>@<refresh>: dual mipi dsi output

[PrintHelp]-150: bt656@<w>x<h>@<refresh>: bt656 output

[PrintHelp]-151: bt1120@<w>x<h>@<refresh>: bt1120 output

[PrintHelp]-152: -s: camera chn

[PrintHelp]-154: Example:

[PrintHelp]-155: ./sample_vin_vo -c 2 -e 1 -s 0 -v dsi0@1280x800@45

[PrintHelp]-156: ./sample_vin_vo -c 0 -e 1 -s 0 -v dsi0@480x360@60

root@AXERA:~# sample_vin_vo -c 2 -e 1 -s 0 -v dsi0@480x854@60

[main]-550: ISP Sample. Build at Sep 21 19:22:49

[ParseVoPubAttr]-249: dsi0 output

[ParseVoPubAttr]-280: reso: 480x854-60

[AX_SYS_LOG] AX_SYS_Log2ConsoleThread_Start

AX_POOL_SetConfig success!

[COMMON_SYS_Init]-85: AX_POOL_Init success!

[COMMON_ISP_GetI2cDevNode]-448: get board_id = 2

[RegisterSns]-556: set sensor bus idx 0

gc4653_sensor_set_mode

[sample_isp][COMMON_CAM_Open][167] pFile

[COMMON_CAM_Open]-170: AX_ISP_LoadBinParams will user sensor.h

Cannot open /sys/class/gpio/gpio496/direction.

Cannot open /sys/class/gpio/gpio496/direction.

i2c_init: i2c device is /dev/i2c-0

line_period 22.000000us

ISP IFE INIT done.

ISP ITP INIT done.

[main]-691: camera 0 is open

g_vo_log_target = 0, g_vo_log_level = 0, g_perf_trace_enable = 0

[VoInit]-429: u32LayerNr = 1

[VoInit]-449: layer0 u32Width = 2560, u32Height = 1440

[SAMPLE_VO_CREATE_POOL]-307: u32BlkCnt = 3, u64BlkSize = 0x546000, pPoolID = 7

[VoInit]-459: layer pool id = 0x7

[SAMPLE_COMM_VO_StartChn-161] layer0 u32Width:2560, u32Height:1440, u32Square:1

[SAMPLE_COMM_VO_StartVO-364] done, s32Ret = 0x0

[VoInit]-488: done

[IspRun]-95: cam 0 is running...

^C

[__sigint]-161: Catch signal 2

ISP IFE DEINIT done.

ISP ITP DEINIT done.

[COMMON_CAM_Close]-269: COMMON_CAM_Close: pipe 0: exit.

[AX_SYS_LOG] Waiting thread(2978484784) to exit

[AX_SYS_LOG] AX_Log2ConsoleRoutine terminated!!!

exit[AX_SYS_LOG] join thread(2978484784) ret:0

实际运行,整个板卡的电流是 710mA,功耗大约是 3.6W,显示效果如图:

CPU 资源占用如图:

测试麦克风和喇叭

爱芯派采用顺芯的 ES8388 音频编解码芯片(24bit,8~96kHz ADC/DAC,95dB 信噪比,40mW 耳机放大),板载两个 MENS 麦克风(歌尔 S15OT421),和一个带麦克风输入的耳机插座。

使用 alsamixer 来调整合适的录音和播放的音量,使用 arecord 录音,使用 aplay 播放,这几个程序已经集成在系统里,不需要额外安装;如果想播放 mp3,需要安装 mplayer。

root@AXERA:~# alsamixer

串口终端和网络终端显示的信息不完全一样,网络终端的信息更完整。

让喇叭播放固定频率声音,CTRL+C 结束。

root@AXERA:~# speaker-test -t sine -f 440 -c1

录音并回放:

使用开发板自带的两个麦克风,直接采用缺省的 8kHz 录音,数据类型默认是 U8,效果比较差,有很大的刺啦声,估计是数据类型和音量太大导致的溢出,有时间可以分析一下。

root@AXERA:~# arecord test.wav

Recording WAVE 'test.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono

^C Aborted by signal Interrupt...

arecord: pcm_read:2152: read error: Interrupted system call

root@AXERA:~# aplay test.wav

Playing WAVE 'test.wav' : Unsigned 8 bit, Rate 8000 Hz, Mono

采用 S16 格式和 48kHz 录音,信号很好,声音很干净。

root@AXERA:~# arecord -f dat test48.wav

Recording WAVE 'test48.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo

^C Aborted by signal Interrupt...

root@AXERA:~# aplay test48.wav

Playing WAVE 'test48.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo

安装 mplayer,播放 MP3 音乐。

root@AXERA:~# apt install mplayer

root@AXERA:~# mplayer gsls.mp3

其中一个 CPU 核心的负载是 67.6%,其他三个核心闲置,播放 mp3 时板卡的电流是 540mA。

测试NPU

运行系统自带的例子,yolov5s,循环 1000 次:

root@AXERA:~# /home/ax-samples/build/install/bin/ax_yolov5s -m /home/models/yolov5s.joint -i /home/images/cat.jpg -r 1000

--------------------------------------

model file : /home/models/yolov5s.joint

image file : /home/images/cat.jpg

img_h, img_w : 640 640

[AX_SYS_LOG] AX_SYS_Log2ConsoleThread_Start

Run-Joint Runtime version: 0.5.10

--------------------------------------

[INFO]: Virtual npu mode is 1_1

Tools version: d696ee2f

run over: output len 3

--------------------------------------

Create handle took 491.12 ms (neu 23.34 ms, axe 0.00 ms, overhead 467.78 ms)

--------------------------------------

Repeat 1000 times, avg time 22.47 ms, max_time 22.98 ms, min_time 22.43 ms

--------------------------------------

detection num: 1

15: 89%, [ 167, 28, 356, 353], cat

[AX_SYS_LOG] Waiting thread(2868897024) to exit

[AX_SYS_LOG] AX_Log2ConsoleRoutine terminated!!!

exit[AX_SYS_LOG] join thread(2868897024) ret:0

推理时 CPU 负载率:

可以看到,除了在模型加载的时候,CPU 的占用比较大,用 NPU 做推理的时候,CPU 的负载很小,而推理时整个板卡的电流只有 640mA,功耗是 3.2W。

看看推理结果图像:

root@AXERA:~# fbon

root@AXERA:~# fbv yolov5s_out.jpg

小结

爱芯派采用的 AX620a 芯片功耗确实很优秀,都不需要散热片。用一个 5V 输出电流不小于 1A 的充电宝就可以供电。

AX620A 14.4Tops@int4,3.6Tops@int8 的 AI 能力也很不错,以 3.2W 的低功耗,运行 yolov5s 模型做推理,单张 640 x 640 图片,只需要 23ms 。

老徐,/11/22

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。