目录
TDA4X多核异构的启动
Method for Booting ARM Based Multi-Core SoCs
TDA4芯片而言,BL1 和 BL2 没有被集成(Jacinto7集成 了 DMSC&MCU R5 取代了 BL1 和BL2 的功能), BL31 执行 ATF,BL32 执行 OP-TEE,BL33 是SPL/U-boot。
TDA4X超异构芯片启动时序
整个代码启动运行过程包括首先把BL1加载到RAM中运行,然后由BL1对SDRAM进行初始化。最后,代码重定向完成后在内存中执行的uboot的完整代码BL2。
从应用层面的系统需求来讲,不同的应用可以部署在不同的核,不同核的启动时序影响着系统需求是否能实现。总体来讲,针对系统的应用需求,可能有如下的额外要求:提前Can信息响应、提前启动画面、提前启动摄像头、 提前分配Linux使用空间、提前显示视频动画等。我们应设计合理的 Soc 启动流程来满足系统的需求。
MCU域
用于启动底层硬件驱动、同步时间,启动操作系统及顶层应用软件中控制执行类部分逻辑运算。
SOC域
其中的A72独立双核集群配置有助于多操作系统应用对软件管理程序的最低需求;
R5F子系统支持低级时序关键处理任务,用于实时性要求比较高的硬件驱动;
使用C71(MMA)进行深度学习神经网络NN和模型运算,所以说MMA主要计算单位主要是以Tops为计算单位;
DSP处理器(C66)功能包含前端和后端视觉处理两方面。
TDA4VM启动方法
SBL相对于SPL在A72上的Linux启动流程进行了优化。SBL是直接加载(Main R5F、DSP、ATF、DTB、Kernel Image),而SPL是需要加载和运行A72的SPL和uboot.img的。
我们可以依据不同的应用需求( (Early CAN message response、Early Splash Screen、Early Camera (RVC)、Early Linux user space、Early Video (Boot animation) 等 )灵活设计启动流程,从而满足系统要求。
TDA4VM引导流程
参考资料
J721E TDA4系列——启动方式_Schling的博客-CSDN博客_tda4启动方式
J721E TDA4系列——启动流程_Schling的博客-CSDN博客_tda4 启动流程