车联网TBOX开发实战五,芯片方案与系统解析

车联网TBOX除了业务,感觉有必要先介绍一下芯片方案及系统知识

此专栏是想到哪里写哪里,并没有非常规范和明确的顺序,除非是单独一个比较大的主题,比如诊断和电源管理。毕竟已量产200W+了,车型几十个,电子电器架构好几代,TBOX硬件形态和集成形式也有好几种,涉及到的东西太多了,反正就是随心写。

TBOX说到底就是一个联网的盒子,主要芯片还是用的电信通讯方案,3G时代就不说了,毕竟现在也慢慢在退网,主要讲一下4G和5G的方案

先说4G方案

主要在用的基本都是高通方案,华为和中兴另说

高通以MDM9x07和9628为主,十几年前的芯片,消费电子也在用,比如移远的EC20,车载的叫AG35,直接看图吧

基本信息就不在此介绍了,说一下大家看到的常规信息之外的一些东西

  1. 内存有限,大部分256MB和512MB,留给应用的内存大概45%左右

  2. 单核A7,CPU算力2.3K Dmips左右,并不富裕,如果TBOX业务较多或者有比较吃算力的业务,就要好好计划省着点用

  3. 没有严格标准的TEE方案,为高通自己在NAND上做的一块机密区域

  4. 单频L1 GNSS定位,可选AGPS和RTK辅助

国产的方案也有,Cat.1的较多,Cat.4的比如ASR1806,ASR的技术基石为Marvell移动通讯部门,基本都大差不差,只是更为便宜,同时更符合国家的战略。

5G方案

最早出来的还是高通,后来有了MTK的方案,高通以‌SA515 和‌SA522为主,MTK以MT2735为主,国产紫光展锐的也有

SA515出来很早,同样是单核A7,算力有限,522/525和MT2735/2739是同一个时代的产品,以MT2735为例:

  1. 双核A55,算力7K Dmips,极其富裕,足够覆盖业务复杂的TBOX产品

  2. 内存基本512及以上

  3. 标准ARM TrustZone方案

  4. 可以支持虚拟化方案

  5. 集成GNSS,支持L1+L5双频段,定位更精确

  6. 支持千兆以太网,但CPU算力不能跑满千兆带宽

再看系统

以5G为例,典型的系统方案,支持WIFI,千兆以太网,对于7K算力的CPU来说,数据流并发存在一定困难,因此需要硬件加速单元

MT2735具备HW NAT,HW QOS以及DMA等硬件加速和数据转发单元,可以在ETH,Modem,WIFI之间任意配置加速转发,充分释放CPU算力

TEE方面

ARM TrustZone 技术在ARM V6开始退出,在V7架构开始标配,在Normal World中实现功能调用,在Secure World中实现安全计算和存储

从CPU架构角度看,以v8架构为例

EL0就是Normal World,EL0进入Secure World需要通过EL3,EL3管理整个和切换安全模式。

如何进入EL3?通过SMC指令,进入EL3后,所有的世界都是安全的,包括总线,也包括调试。

数据如何交互?通过共享内存或者寄存器

TrustZone 是一个标准技术,有需要再单独介绍,此处只需要知道流程如何及如何应用的就行。

之前提到的TSP证书秘钥,使用过程就在EL0,普通的linux APP进程中,具体的实现过程在TEE中,TEE可以理解为一个小的运行在安全环境的小OS,执行具体的加密解密及存储过程。

软件方面

现代处理器方案一般较多都会采用yocto工具,实现kernel和文件系统以及应用的整体集成

大概看看图吧,入手有一定门槛,整个工程比较大,配置非常灵活,对于多平台多板型架构的工程来说是非常合适的

在TBOX开发中,可以采用yocto编译kernel和文件系统及编译工具链,应用单独使用工具链编译,与庞大的yocto工程隔离,还方便分工,尤其有多方开发参与的情况下

启动管理

使用yocto一般会采用systemd作为启动管理方案,类似的还有initd等,比如buildroot中大多配置initd方式

systemd 是 Linux 系统中广泛采用的初始化系统和服务管理器,其设计目标是提高启动效率、简化服务依赖管理,并提供更丰富的功能(如日志管理、设备热插拔支持等)。其架构采用模块化设计,核心组件通过协同工作实现系统管理功能。其实在发展过程中,除了启动,systemd日益庞大,具备很多功能

有几个关键的用处:

  1. 启动时序分析,一般车辆在下线的时候会进行诊断动作,对TBOX启动有时间要求,systemd中的启动时序记录可以方便的分析应用启动时间及相互依赖

  2. 服务依赖管理,很多进程相互存在依赖,启动有先后顺序要求,而且还需要重启管理等,使用systemd比较方便

  3. cgroups应用,可以方便的进行cpu,内存,IO等资源隔离和限制

安全相关

主要有安全启动和SElinux

安全启动,行为主要是逐级校验,确保启动的安全性,秘钥写入eFUSE确保不可被篡改

Selinux为linux的安全子模块,主要针对进程行为进行权限限制,不同级别的进程具备不同的权限,比如限制部分进程只能访问系统资源,不允许执行rm操作等等,借用一张图:

需要注意的是:

  1. Selinux规则比较复杂且细致,需要针对每个进程每个系统行为进行配置

  2. 最好是在开发过程中开始准备,涉及到的系统行为,新的系统调用,立即加上selinux配置

  3. 前期设为宽容模式,抓取日志,使用工具进行分析和生成规则

总结一下:

  1. 芯片方案无非就是算力和成本及网络制式的区别

  2. 系统都是Linux方案,所采用的都是常规技术,只是安全性上会多一点

相关推荐
WindLOR2 天前
车联网TBOX开发实战三,APN路由转发
网络·tbox
zsmydz8885 个月前
4G车载TBOX共享汽车实现远程控制
汽车·tbox·4g t-box·汽车tbox·车联网车载智能终端
zsmydz8885 个月前
新能源汽车租赁公司车辆经营方案
tbox·4g t-box·4g车联网数据采集·车联网车载智能终端
zsmydz8885 个月前
新能源汽车远程控制4G车载TBOX 的功能、技术与应用
tbox·4g t-box·4g车联网数据采集·车联网车载智能终端
熊猫钓鱼>_>5 个月前
Tbox使用教程与心得体验:智能体驱动我的“2025年大模型发展工作总结及企业智能办公场景应用前景“深度报告生成
大数据·人工智能·ai·llm·提示词·智能体·tbox
鼓掌MVP5 个月前
使用 Tbox 打造生活小妙招智能应用:一次完整的产品开发之旅
人工智能·ai·html5·mvp·demo·轻应用·tbox
全栈小55 个月前
【AI应用】Tbox神仙用法,一句话描述创作效果还不错的应用,随机菜单生成开发,一起来看看是如何通过多智能体协同开发
人工智能·tbox·智能体协同·百宝箱
l1t8 个月前
how to build tbox xml into the demo
xml·linux·c语言·parser·tbox
kong清空2 年前
汽车工程师(DRE)-主从式网络管理与Autosar网络管理简要理解
汽车·dre·tbox·autosar网络管理·休眠与唤醒