打印
[嵌入式Linux]

评测|立体认识飞凌OK1028A-C,内外兼修

[复制链接]
560|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
llck|  楼主 | 2020-10-14 11:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

在 [color=inherit !important]OK1012A-[color=inherit !important]C、OK1043A-C、OK1046A-C 之后,[color=inherit !important]飞凌嵌入式推出了OK1028A-C新一代Layerscape 系列[color=inherit !important]开发板。在OK1028A-C到来之前,OK1046A-C的性能毋庸置疑处于大师兄的位置,OK1043A-C紧随其后,OK1012A-C妥妥的只能当个小师弟。OK1028A-C的到来必将打破当前的排行,那么它将处于什么位置呢,下面就让我们来分析分析。

首先让我们看看原有的师兄弟们内功(CPU)如何,小师弟[color=inherit !important]LS1012A

LS1012A 搭载的是一颗[color=inherit !important]ARMv8架构的A53的核心,ARMv8的资质不错,可惜修为稍稍欠缺一点,只有单核。丰富的外设接口,以及强大的PFE包转发引擎,极低的功耗也能为它的战斗力加上几分。

[color=inherit !important]LS1043A 搭载的是四颗ARMv8架构的A53的核心,单纯靠这一点,LS1012A 就要靠边站了,网络方面最多可支持7个千兆,并且有Fman[color=inherit !important]加速引擎的助力,战斗力爆表。

[color=inherit !important]LS1046A 搭载的是四颗ARMv8架构的[color=inherit !important]A72的核心,一颗A72的性能大约是一颗A53的两倍(具体还要看主频),核心性能方面相对于LS1043A又强大了一倍,网络接口与PCIE的数量相对LS1043A都要更多一些。就目前而言,它这个大师兄当之无愧。

[color=inherit !important]LS1028A 搭载的是双核armv8架构的A72核心,LS1043A听了稍稍颤抖,难道LS1043A二师兄的位置不保吗?[color=inherit !important]LS1028A 还有一颗GPU 具体的型号是Vivante GC7000UL以及一个支持[color=inherit !important]4K显示的DP接口,显示功能的加持让原有的三个师兄弟们都有些许抬不起头来,还没有结束,它还有一个支持TSN功能的硬件Switch、两路Can FD。

相对原有的三个师兄弟们,LS1028A绝对是一个另类,它的综合实力与LS1043A持平,在需要显示或者TSN的领域,LS1028A要胜于LS1043A,在需要更多的网络接口或者需要万兆时,LS1043A要胜于LS1028A。

下面我们一起立体的认识下[color=inherit !important]飞凌[color=inherit !important]嵌入式OK1028A-C平台。

从接口开始了解———OK1028A-C

首先,我们来看下搭载了LS1028A的OK1028A-C开发板,是否发挥出了它的全部性能呢?

[color=inherit !important]核心板FET1028A的设计依然延续了小巧精致的风格,将CPU所有的管脚引出,留给客户足够的发挥空间来设计自己的底板。


OK1028A-C开发板的接口实在是太丰富了,几乎可以验证FET1028A-C的所有功能。详细的功能列表如下:

  上电体验

OK1028A-C支持EMMC、SD卡、Q[color=inherit !important]SPI启动,默认出厂时EMMC中已经刷好了最新镜像。连接好电源与调试串口,拨动电源拨码开关,还是熟悉的味道,用户名和密码均为“root”。

  

LS1028A 内部带有支持TSN的硬件Switch,Switch Port 之间的二层转发完全不占用Cpu负载,十分强大,下面给大家展示一下实测数据。

我们将OK1028A-C的Switch Port 全部配置到网桥br0上,同时使用两台[color=inherit !important]Linux主机分别连接到swp0口和swp1口,并分别配置IP 为192.168.1.181、192.168.1.106,两台主机之间通过iperf3来测试OK1028A-C Switch Port之间的二层转发性能。

此时的CPU大部分处于空闲状态,完全没有受到转发的影响,同级别不支持硬件Switch的CPU,恐怕单核要几乎100%的负载了。

LS1028A 的eno0 口以及所有的Switch Port 均在硬件上实现了IEEE 802.1 TSN相关的部分协议,包括IEEE 802.1Qas、IEEE 802.1Qav、IEEE 802.1Qbv、IEEE 802.1Qbu、IEEE 802.1Qci 等,支持硬件时间戳,保证了精确的[color=inherit !important]时钟同步,{link[color=inherit !important]56}提供了tsntool可以对TSN进行配置。OK1028A-C TSN的支持可以让[color=inherit !important]工业控制以及汽车等对时间敏感领域的网络应用的确定性延时和数据包丢失提供保障。

软件SDK的介绍

OK1028A-C的软件SDK基于[color=inherit !important]NXP LSDK2004开发,内核为5.4版本,[color=inherit !important]uboot版本为2019.10,Qt的版本也升级到了5.9.5,高版本的软件SDK必将带来全新的体验,同时OK1028A-C的uboot源码是完全开放的,再也不用纠结uboot无法修改啦。

下面简单介绍一下软件工程师在开发过程中可能会涉及的几个部分。

1、RCW

熟悉LS系列产品的朋友们都知道,LS系列产品需要使用复位控制字RCW来进行一些配置,例如最基础的[color=inherit !important]GPIO管脚的分配。OK1028A-C的RCW位于SDK的packages/firmware/rcw/ls1028ardb/R_SQPP_0x85bb/rcw_1500_gpu600.rcw 目录,相对于之前的产品,不同的启动方式会有不同的RCW配置文件,OK1028A-C无论哪种启动方式,均使用rcw_1500_gpu600.rcw来配置。

2、u-boot

OK1028A-C的u-boot源码完全开发给大家,它位于packages/firmware/u-boot 目录,同时它使用的配置文件为packages/firmware/u-boot/configs/ls1028ardb_tfa_defconfig。

3、Kernel

OK1028A-C的内核源码位于packages/linux/linux目录,它的配置文件为packages/linux/linux/arch/arm64/configs/ok1028_defconfig,它使用的设备树文件为packages/linux/linux/arch/arm64/boot/dts/freescale/OK1028A-C.dts。

4、文件系统

OK1028A-C 使用的Ubuntu18.04文件系统,是在build/images/rootfs_lsdk2004_[color=inherit !important]ubuntu_main_arm64.tgz 基础上构建的,详细的构建过程可以分析tools/flex-builder脚本。

相信了解了这些,软件工程师们肯定可以快速上手,更详细更丰富的内容请参考OK1028A-C的用户手册。


使用特权

评论回复

相关帖子

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

65

主题

117

帖子

3

粉丝