1. 1 OK3519 BSP整体测评
OK3519A 采用Hi3519AV100,该芯片支持 H.265/H.264编解码,编码/解码性能高达4K*2K@60fps/1080p@240fps,集成了海思第四代ISP,支持WDR、多级降噪、六轴防抖及多种图像增强和矫正算法,内置高性能全景拼接引擎,集成了智能加速引擎包括IVE,DSP,NNIE,DPU,可进行图片分类,目标检测等。适用于适用于医疗,金融,防控等多个领域的计算机视觉。
整理来说,OK3519A 视频编解码,视频输入方面的性能强大,集成了智能加速引擎,提供了高效且丰富的计算资源。海思提供了大量的库文件,应用可调用海思的库实现。
飞凌优化了原厂BSP,移植了QT5.9.4,支持鼠标和触摸屏。目前QT显示功能与海思原生测试冲突,不能直接同时使用。如果希望同时使用,需从代码上去掉对MPI和VB的重复初始化。
默认出厂程序HDMI显示,加载QT主界面,如下图:
f_2c769a041581baab18b307edc53872f5&t=png&o=&s=&v=1601196153.jpg

OK3519A 支持MIPI-DSI和HDMI屏幕接口,HDMI支持4K输出。2种方式切换屏幕:uboot菜单动态控制和烧写系统时环境变量指定。
QT与命令行demo,均有测试例程,客户可参考,添加自己的应用。减少开发时间。
1. 2 OK3519 A  接口功能简介

串口支持odd、even、mark、space校验,实测波特率可9600到1500000。
网络支持SSH/SFTP/WEB服务。
支持移远ec20 4G模块,华为ME909S 4G 模块。
MIPI-DSI屏显示(1024x600分辨率ARGB1555输出显示,ft5x06和gt911触摸),支持背光调节。
支持RX-RTC8010。
音频支持2路AI输入,1路AO输出,支持HDMI音频输出,支持VQE。
默认支持索尼的imx290和imx334。支持MIPI-CSI(OV5640)预览到HDMI上。
f_f288f9766899a97bf19150b52c16ba3a&t=png&o=&s=&v=1601197062.jpg

支持PCIE接口(与USB3.0 共用资源,默认为USB3.0)。
支持看门狗功能。
支持SPI接口,一路片选。
支持原厂MPP例程。
支持SD卡烧写,支持ext4 烧写,速度快。
多种启动方式:SPI NAND flash(支持yaffs文件系统,24位ECC)、eMMC启动(ext4文件系统)。
1.3 OK3519 性能测试
1.3. 1. USB2.0 读写速度测试
存储设备不同,测试结果存在差异。
写入测试:
$dd if=/dev/zero of=/run/media/sda1/test bs=1M count=500 conv=fsync
f_42c49b324aadf2baf33b52e64235ba93&t=png&o=&s=&v=1601197077.jpg

读取测试:
$dd if=/run/media/sda1/test of=/dev/null bs=1M
f_25c04bff7cfe49ccbf41bfd586bca4cc&t=png&o=&s=&v=1601197088.jpg

1.3.2 USB3.0 读写速度测试
存储设备不同,测试结果存在差异。
写入测试:
$dd if=/dev/zero of=/run/media/sda1/test bs=1M count=500 conv=fsync
f_ec90fd1b95ee78f0fe0f23797125039a&t=png&o=&s=&v=1601197096.jpg

读取测试:
$dd if=/run/media/sda1/test of=/dev/null bs=1M
f_27982592aaa58f40cebe04bb976cac8b&t=png&o=&s=&v=1601197103.jpg

1.3.3 SD卡读写测试
SD卡支持Default Speed(DS)/High Speed(HS) /ddr50 /SDR12 /SDR25 /SDR50 /SDR104模式。实测工作在SDR50时的读写速度。
f_e50d5ba8ad04a3ef29426f33e80c4451&t=png&o=&s=&v=1601197111.jpg

写入测试:
$dd if=/dev/zero of=/run/media/mmcblk1/test bs=1M count=500 conv=fsync
f_39772fb796011f82f2474a6b876b0ed1&t=png&o=&s=&v=1601197119.jpg

读取测试:
$dd if=/run/media/mmcblk1/test of=/dev/null bs=1M
f_6735015512b5283ae88227c7f7a1d8e4&t=png&o=&s=&v=1601197127.jpg

1.3.4 eMMC读写测试
eMMC采用HS400模式,以读写ext4文件系统速度为例,如下:
写入测试:
$ dd if=/dev/zero of=/test bs=1M count=100 conv=fsync
f_94c17bc7b38a4581e4d721699c829cc4&t=png&o=&s=&v=1601197139.jpg

读取测试:
$dd if=/test of=/dev/null bs=1M
f_68036ce6e18f89efa19c5a4b77b69ffa&t=png&o=&s=&v=1601197146.jpg
1.3.5 有线网络吞吐量测试
组网环境如下:
f_5d056819583d20d48f08c8a73e59841b&t=png&o=&s=&v=1601197154.jpg

TCP发送吞吐量测试:
PC机做服务器:ipeRF3.ext -s
OK3519上测试:iperf3  -c 192.168.2.72 -t 10 -i 1
Connecting to host 192.168.2.72, port 5201
[  4] local 192.168.2.147 port 35524 connected to 192.168.2.72 port 5201
[ ID] Interval           Transfer     Bandwidth       Retr  Cwnd
[  4]   0.00-1.00   sec   108 MBytes   908 Mbits/sec   12    191 KBytes
[  4]   1.00-2.00   sec   112 MBytes   941 Mbits/sec    4    154 KBytes
[  4]   2.00-3.00   sec   112 MBytes   941 Mbits/sec    1    218 KBytes
[  4]   3.00-4.00   sec   110 MBytes   925 Mbits/sec    7    211 KBytes
[  4]   4.00-5.00   sec   112 MBytes   939 Mbits/sec    4    164 KBytes
[  4]   5.00-6.01   sec   112 MBytes   932 Mbits/sec    4    215 KBytes
[  4]   6.01-7.00   sec   112 MBytes   942 Mbits/sec    0    215 KBytes
[  4]   7.00-8.01   sec   113 MBytes   941 Mbits/sec    1    225 KBytes
[  4]   8.01-9.00   sec   112 MBytes   939 Mbits/sec    2    238 KBytes
[  4]   9.00-10.00  sec   112 MBytes   941 Mbits/sec    1    211 KBytes
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bandwidth       Retr
[  4]   0.00-10.00  sec  1.09 GBytes   935 Mbits/sec   36             sender
[  4]   0.00-10.00  sec  1.09 GBytes   933 Mbits/sec                  receiver

iperf Done.
TCP接收与UDP发送接收,其他测试方法类似。
1.3.6 Coremark 跑分
2K performance run parameters for coremark.
CoreMark Size    : 666
Total ticks      : 18799
Total time (secs): 18.799000
Iterations/Sec   : 5851.375073
Iterations       : 110000
Compiler version : GCC6.3.0
Compiler flags   : -O3 -funroll-all-loops --param max-inline-insns-auto=550 -DPERFORMANCE_RUN=1  -lrt
Memory location  : Please put data memory location here
(e.g. code in flash, data on heap etc)
seedcrc          : 0xe9f5
[0]crclist       : 0xe714
[0]crcmatrix     : 0x1fd7
[0]crcstate      : 0x8e3a
[0]crcfinal      : 0x33ff
Correct operation validated. See README.md for run and reporting rules.
CoreMark 1.0 : 5851.375073 / GCC6.3.0 -O3 -funroll-all-loops --param max-inline-insns-auto=550 -DPERFORMANCE_RUN=1  -lrt / Heap
1.3.7 Dhrystone测试
/run/media/mmcblk1p1 # echo 50000000 | ./dhrystone
Dhrystone Benchmark, Version 2.1 (Language: C)
Please give the number of runs through the benchmark:
Execution starts, 50000000 runs through Dhrystone
Execution ends
Final values of the variables used in the benchmark:
Int_Glob:            5
        should be:   5
Bool_Glob:           1
        should be:   1
Ch_1_Glob:           A
        should be:   A
Ch_2_Glob:           B
        should be:   B
Arr_1_Glob[8]:       7
        should be:   7
Arr_2_Glob[8][7]:    50000010
        should be:   Number_Of_Runs + 10
Ptr_Glob->
  Ptr_Comp:          648336
        should be:   (implementation-dependent)
  Discr:             0
        should be:   0
  Enum_Comp:         2
        should be:   2
  Int_Comp:          17
        should be:   17
  Str_Comp:          DHRYSTONE PROGRAM, SOME STRING
        should be:   DHRYSTONE PROGRAM, SOME STRING
Next_Ptr_Glob->
  Ptr_Comp:          648336
        should be:   (implementation-dependent), same as above
  Discr:             0
        should be:   0
  Enum_Comp:         1
        should be:   1
  Int_Comp:          18
        should be:   18
  Str_Comp:          DHRYSTONE PROGRAM, SOME STRING
        should be:   DHRYSTONE PROGRAM, SOME STRING
Int_1_Loc:           5
        should be:   5
Int_2_Loc:           13
        should be:   13
Int_3_Loc:           7
        should be:   7
Enum_Loc:            1
        should be:   1
Str_1_Loc:           DHRYSTONE PROGRAM, 1'ST STRING
        should be:   DHRYSTONE PROGRAM, 1'ST STRING
Str_2_Loc:           DHRYSTONE PROGRAM, 2'ND STRING
        should be:   DHRYSTONE PROGRAM, 2'ND STRING

Register option selected?  YES
microseconds for one run through Dhrystone:     0.2
Dhrystones per Second:                       4989727.1
VAX MIPS rating =   2839.913
原文链接:https://www.forlinx.com/article_view_519.html