linux开发板ip复位丢失_只有你想不到,没有它做不到—飞凌OK1028A-C开发板

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

首先让我们看看原有的师兄弟们内功 (CPU) 如何,小师弟 LS1012A 。

d797d9dd2aab16a4b0125ae3a8112b03.png

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

9a89db929ffdf20c615baf416d623fad.png

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

c36e29616757606e8b62512a7255ef24.png

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

f9fa09313f51452653d2fa8a9c6570a5.png

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

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

下面我们一起立体的认识下 飞凌 嵌入式 OK1028A-C 平台。

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

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

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

d0b4155fb2389435743c32b4fc86afc0.png

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

62b6ed7488e6c286aaef714c600211f3.png

上电体验

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

22aaa023edd02c6f580afe834f050f26.png

8edbdd29017245f8e5fd194b60c99843.png

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

a01a6dc889cd7c5826c8eee64a18c039.png

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

35a4071da78122bb169fe6297ca5b1bd.png

269cb7be8081a7b8b8bab0c8f54d38cf.png

此时的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 等,支持硬件时间戳,保证了精确的 时钟同步,{link 56}提供了 tsntool 可以对 TSN 进行配置。 OK1028A-C TSN 的支持可以让 工业控制以及汽车等对时间敏感领域的网络应用的确定性延时和数据包丢失提供保障。

软件 SDK 的介绍

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

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

1、RCW

熟悉 LS 系列产品的朋友们都知道, LS 系列产品需要使用复位控制字 RCW 来进行一些配置,例如最基础的 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_ ubuntu_main_arm64.tgz 基础上构建的,详细的构建过程可以分析 tools/flex-builder 脚本。

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
编译和移植 arm-linux-gnueabihf-gdb 和 arm-linux-gnueabihf-gdbserver 的步骤如下: 1. 下载交叉编译工具链 首先,你需要下载适用于你的开发板的交叉编译工具链。这个工具链将允许你在你的 x86 系统上编译 ARM 架构的代码。 2. 安装依赖项 在编译 arm-linux-gnueabihf-gdb 和 arm-linux-gnueabihf-gdbserver 之前,你需要在你的系统上安装一些依赖项。这些依赖项包括: - build-essential - libncurses5-dev - zlib1g-dev 你可以使用以下命令来安装这些依赖项: ``` sudo apt-get update sudo apt-get install build-essential libncurses5-dev zlib1g-dev ``` 3. 下载源代码 你需要下载 arm-linux-gnueabihf-gdb 和 arm-linux-gnueabihf-gdbserver 的源代码。你可以从官方网站下载最新版本的源代码。 4. 编译 arm-linux-gnueabihf-gdb 接下来,你需要编译 arm-linux-gnueabihf-gdb。为此,请按照以下步骤操作: ``` tar -xf gdb-x.x.tar.gz cd gdb-x.x ./configure --target=arm-linux-gnueabihf --host=x86_64-linux-gnu --prefix=/usr/local make sudo make install ``` 5. 编译 arm-linux-gnueabihf-gdbserver 然后,你需要编译 arm-linux-gnueabihf-gdbserver。为此,请按照以下步骤操作: ``` tar -xf gdb-x.x.tar.gz cd gdb-x.x/gdb/gdbserver ./configure --host=arm-linux-gnueabihf --prefix=/usr/local make sudo make install ``` 6. 移植到开发板 最后,你需要将 arm-linux-gnueabihf-gdb 和 arm-linux-gnueabihf-gdbserver 移植到你的开发板上。你可以使用 scp 命令将它们复制到开发板上,例如: ``` scp /usr/local/bin/arm-linux-gnueabihf-gdb user@192.168.x.x:/usr/local/bin/ scp /usr/local/bin/arm-linux-gnueabihf-gdbserver user@192.168.x.x:/usr/local/bin/ ``` 其中,`user` 是你的开发板用户名,`192.168.x.x` 是你的开发板 IP 地址。 现在,你可以在你的开发板上使用 arm-linux-gnueabihf-gdb 和 arm-linux-gnueabihf-gdbserver 了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值