汽车网络处理设计

摘要:
汽车网络处理的设计适用于中央网关、域控制器、FOTA、安全密钥管理、智能天线和高性能中央计算节点概述NXP S32G-VNP-RDB2是一个紧凑且高度优化的集成板,适用于汽车服务网关、域控制应用、高性能处理、,功能安全和信息安全应用。开箱即用1.1S32-VNP-RDB2汽车网络处理参考设计板简介1.2完整板套件简介2.1控制台终端仿真器安装任何终端仿真器,如TeraTerm、Putty等。

汽车网络处理设计

适用于中央网关、域控制器、FOTA、安全密钥管理、智能天线和高性能中央计算节点

概述

恩智浦S32G-VNP-RDB2是一款紧凑型、高度优化的集成板,适用于汽车服务型网关(SoG)、域控制应用、高性能处理、功能安全和信息安全应用。

S32G-VNP-RDB2基于4个Arm® Cortex®-A53内核和3个双核锁步Arm Cortex-M7内核,提供高性能计算能力和丰富的输入/输出(I/O),为中央网关、域控制器、FOTA、安全密钥管理、智能天线和高性能中央计算节点等各种典型的汽车应用提供了参考。

S32G-VNP-RDB2为新的汽车应用提供了高水平的计算、实时网络性能、数千兆字节的数据包加速和安全性。

开箱即用

1.1 S32-VNP-RDB2汽车网络处理参考设计板介绍

 汽车网络处理设计第1张

1.2 完整的板套件介绍

 汽车网络处理设计第2张

获取软件

2.1 为控制台安装终端仿真器

安装任意终端仿真器,如Tera Term、Putty等。
建议使用Tera Term 2.3. Tera Term是支持UTF-8协议的免费开源软件终端仿真器。现在TTSSH支持SSH2协议(最初版本支持SSH1)。

2.2 安装FTDI CDM WHQL驱动程序

FTDI芯片的FTDI CDM v2.12.28 WHQL串行配置驱动程序

连接!

开始试用S32-VNP-RDB2板!

3.1 插入SD卡

SD卡出厂时预装了Linux BSP镜像,只需将SD卡插入S32G-VNP-RDB2板上的相应插槽中即可。

3.2 连接UART线缆

使用UART线缆的Micro-AB接口连接S32G-VNP-RDB2的UART0端口。
使用UART线缆的typeA接口连接PC。

3.3 连接12 V电源

将电源连接至S32G-VNP-RDB2上的12 V电源插孔。

运行

4.1 设置控制台

1. 打开控制台终端仿真器。
注:使用Windows PC上的Tera Term 2.3 。

2. 选择PC的 “设备管理器”中的串行端口,点击OK (确定)。

3. 前往Setup > Serial Port,选择115200波特率。

4.2 为板通电

将电源开关SW15拨到S32G-VNP-RDB2板的左侧。左侧是第1.1章中图片的视角

4.3 运行Linux BSP

Linux BSP自动从SD卡运行。
Tera Term的控制台显示屏显示Linux BSP的运行日志。

Processors

Transceivers

Power Management

  • VR5510 :  面向S32G处理器的多通道(9) PMIC – 8个高功率,1个低功率,符合ASIL D安全级别

Switches

  • SJA1110 :  内置100BASE-T1 PHY的多Gig安全TSN以太网交换机

产品规格

 汽车网络处理设计第3张

·        S32G-VNP-RDB2   ACTIVE

  • S32G Reference Design 2 for Vehicle Network Processing
  • S32G-VNP-RDB2仅适用于授权客户购买。
    每个订单将在完成前进行审查。
    对于此审批流程给带来的不便,我们深表歉意。 S32G-VNP-RDB2仅适用于授权客户购买。
  • S32G参考设计板2
  • 通用AC适配器
  • AC/DC 12V, 6.67A电源
  • 16GB SD卡
  • DuPont线路
  • (2) USB A转Micro B线缆(UART0/1)
  • 以太网和以太网环回电缆
  • 100BASE-T1以太网线
  • J5线缆(LIN/ADC)和J6线缆(CAN/FlexRay)
  • (4) 散热器
  • (4) 散热垫
  • M2螺钉

套件包含

AWS IoT Greengrass

将S32G-VNP-RDB和S32G-VNP-RDB2作为Greengrass内核

AWS IoT Greengrass是AWS提供的一款软件,用于将云功能扩展到本地连接的设备。
这允许本地设备发布/订阅主题,即使与AWS IoT控制台没有连接
Greengrass组由一个Greengrass内核、连接到该内核的多个Greengrass设备、lambda函数和其他运行在该内核上的服务组成。

1. 前提条件

  • AWS Greengrass账户
  • S32G-VNP-RDB或S32G-VNP-RDB2板
  • Linux主机(本指南使用Ubuntu 18.04)
  • Linux主机和S32G目标应连接同一个LAN

2. 通过Greengrass支持创建S32G镜像

在Linux主机中按以下步骤操作。
如果以前使用Yocto构建了一个S32G Linux BSP,则可跳过第2.1节。

2.1 安装主机依赖项

  $ sudo  update $ sudo  intall python git curl $ mdkir ~/bin $ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo $ chmod a+x ~/bin/repo $ PATH=${PATH}:~/bin  

2.2 构建Greengrass镜像

Fetch Repo

按以下步骤下载构建镜像所需的Yocto步骤。

  $ mkdir <yocto_dir> $ cd <yocto_dir> $ repo init -u https://source.codeaurora.org/external/autobsps32/meta-nxp-greengrass $ repo sync  

设置主机(仅限第一次)

下一步下载Yocto依赖项并将其安装到主机。

  $ ./sources/meta-alb/scripts/host-prepare.sh  

配置构建目录

下一步创建构建目录并配置要使用的额外层。<machine>值可以是S32G-VNP-RDB或S32G-VNP-RDB2。

  $ source nxp-setup-alb.sh -m  -b <build_dir> -e "meta-aws meta-java meta-nxpgreengrass meta-tensorflow"  

安装PFE固件

meta-nxp-greengrass层在S32G-VNP-EVB中使用eth0接口访问互联网,在S32G-VNP-RDB或S32G-VNP-RDB2中使用pfe2接口。要使用pfe2,在<yocto_dir>/<build_dir>/conf/local.conf中包含以下行。
注:PFE固件通过Flexera提供。

  DISTRO_FEATURES_append = " pfe" PFE_LOCAL_FIRMWARE_DIR = "<path_to_pfe_fw_directory>"  

构建镜像

支持Greengrass的镜像为fsl-image-auto-greengrass。

  $ bitbake fsl-image-auto-greengrass  

2.3 刷新镜像并启动

将SD卡插入Linux主机并执行以下命令。

  $ sudo umount /dev/ $ cd tmp/deploy/images// $ sudo dd if=-fsl-image-auto-greengrass.sdcard of=/dev/mmcblk0 bs=4M status=progress $ sync  

将SD卡插入目标,然后通电。

首次启动

首次启动时,Greengrass守护进程将因缺少证书而失败。
按以下章节的内容获取并安装证书,并将云配置部署到Greengrass内核。

汽车网络处理设计第4张

3. 准备Greengrass组

按照AWS IoT Greengrass网页的以下指示进行操作:

4. 将云配置部署到Greengrass内核

“在AWS Iot上配置AWS IoT Greengrass”时,将一个文件下载到主机,hash-setup.tar.gz (例如c6973960cc-setup.tar.gz)。此压缩文件包含内核设备证书和加密密钥,这些密钥支持AWS IoT内核和包含Greengrass内核专用配置信息的config.json文件之间进行安全通信。

将hash-setup.tar.gz放入目标rootfs。
在Linux主机执行下面的命令,将.tar.gz文件传输到目标设备。

  $ scp hash-setup.tar.gz root@<target_ip_address>:/  

在目标设备中,解压/greengrass文件夹中的文件,并下载Amazon Root CA 1证书。
完成后可重启。

  $ tar -xzvf hash-setup.tar.gz -C /greengrass $ cd /greengrass/certs/ $ wget -O root.ca.pem https://www.amazontrust.com/repository/AmazonRootCA1.pem $ reboot  

现在有了正确的证书,Greengrass在重新启动后应该不会出错:

 汽车网络处理设计第5张

 根据步骤2中的将云配置部署到Greengrass代码设备指示操作,并确保S32G Greengrass内核已联网。

5. 验证Lambda函数

如果已创建了Lambda函数并使用了“HelloWorld”示例,请按照验证Lambda函数是否在核心设备上运行来测试它是否按预期运行。
如正确按指示操作,应看到以下输出:

 汽车网络处理设计第6张

走到这一步,已经使Greengrass内核在S32G上运行。

6. 增加ML框架支持

Tensorflow

Yocto构建的镜像支持tensorflow 1.13。要进行双重检查,请在目标中执行以下命令:

  $ python3 -c "import tensorflow as tf; print(tf.__version__)"  

Apache MXNet

镜像的rootfs中有libmxnet.so,但接下来的步骤应该在目标中执行,以便用Python支持它。

  $ cd /mxnet/python $ python3 setup.py Install  

要验证版本,执行以下命令:

  $ python3.7 -c "import mxnet; print(mxnet.__version__)"  

DLR

要添加DLR支持,在目标中执行下面的命令:

  $ wget https://neo-ai-dlr-release.s3-us-west-2.amazonaws.com/v1.2.0/a1-aarch64-ubuntu18_04-glibc2_27-libstdcpp3_4/dlr-1.2.0-py2.py3-none-any.whl $ pip3 install dlr-1.2.0-py2.py3-none-any.whl  

安装完DLR后,使用以下命令查看其版本:

  $ python3 -c "import dlr; print(dlr.__version__)"  

免责声明:文章转载自《汽车网络处理设计》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇JavaScript:详解 Base64 编码和解码httpclient个人理解下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

基于Cmake+QT+VS的C++项目构建开发编译简明教程

目录 一、工具下载与安装 1.     Qt 2.     Visual Studio 2015 3.     Cmake 二、C++及Qt项目构建 1.     基于VS构建Qt项目 2.     基于Qt Creater构建,在VS中使用 用Qt Creater构建项目 用VS开发Qt Creater生成的项目 3.     基于Cmake构建 用CM...

移动端兼容性问题解决方案

1. IOS移动端click事件300ms的延迟响应 移动设备上的web网页是有300ms延迟的,往往会造成按钮点击延迟甚至是点击失效。这是由于区分单击事件和双击屏幕缩放的历史原因造成的, 2007年苹果发布首款iphone上IOS系统搭载的safari为了将适用于PC端上大屏幕的网页能比较好的展示在手机端上,使用了双击缩放(double tap to z...

手机投屏到电脑教程,高清、高帧率、无延时投屏

手机投屏到电脑的方法有很多,今天讨论一下高清、高帧率、无延时投屏,可以用于游戏演示,直播等等。 一般投屏大致可以分为三类: 1. 通过互联网的数据传输,效率低,基本不考虑,几乎是一帧一帧传。 2. 通过WiFi投屏,基本能实现高清,但是考量到网络速度和复杂的网络环境,其实并不好用,可以用来演示文档,但是像是游戏、直播这种就不适用。 只要方法: a. 第三方...

SVN的配置和使用

1、svn是代替cvs而衍生出来的一种新的版本控制器系统。他的图标是个小龟。2、1)备份数据2)、项目同步 3)、进行版本控制。3、svn版本控制器的原理 项目组成员A上传代码,然后项目组成员B下载下来。然后进行协同开发。4、安装1)、服务器端软件(提示重启必须的不要重启) 2)、客户端软件 3)、中文语言包5、说了怎样去建立版本库,就是怎样去在你的电脑上...

Java:程序开机自启动

一、加到开机自动启动程序的注册表: package com.zit; import java.io.IOException; public classStart { public static voidChangeStart(boolean isStartAtLogon) throws IOException{ String...

扫码登录功能如何实现?一文搞懂主流的扫码登录技术原理

原文地址:https://my.oschina.net/u/4231722/blog/3154805 作者:imtech 1. 引言 扫码登录这个功能,最早应该是微信的PC端开始搞,虽然有点反人类的功能(不扫码也没别的方式登录),但不得不说还是很酷的。 下面这张图,不管是IM开发者还是普通用户,应该很熟悉: 于是,搞IM产品的老板和产品经理们,从此又多了...