MCU(Infineon Tricore)启动过程介绍

1.概述

前面在介绍BswM及EcuM模块时,我们大概聊到了Autosar架构下MCU的运行过程,知道MCU运行过程中会经历Wakeup,Run,PostRun,Sleep及Shutdown等阶段,本章我们就继续以英飞凌TriCore系列芯片介绍下MCU运行前经历的启动过程。

2.基本概念

SSW:Startup SoftWare,MCU发生Reset后最先执行的代码

BootRom: MCU中的一块Flash空间,其存储内容在芯片供应商出厂前已固化好,对于用户来讲是不可更新的,用户可以对使用内容进行配置

UCB:(User Configuration Block),BootRom的配置信息

Ifx_TC:Infineon Tricore系列芯片

HSM:Hardware Security Module,信息安全相关模块。

3.启动过程

3.1 启动过程概述

MCU启动运行过程如下:

以Infineon TC系列芯片为例,MCU中有块叫BootRom的Flash空间,其存储内容在芯片供应商出厂前已固化好,对于用户来讲是不可更新的,用户可以对使用内容进行配置,配置信息也就是我们常说的UCB(User Configuration Block),BootRom会根据UCB中的配置信息后会执行相应的动作,如PC指针跳转到特定地址,使能HSM等功能。

在BootRom中有一块称为SSW(Start SoftWare)的内容,当芯片发生复位后,MCU第一个被执行的软件就是SSW,SSW在主核上运行,此阶段其他核是被Halt住的。

SSW会读取用户配置的启动模式寄存器,根据配置方式,执行完相关操作后,跳转到用户程序(main.c)或者进入测试模式。

3.2 SSW阶段执行内容

SSW阶段大概经历的过程如下:
使能Flash读、写及擦除功能→
初始化寄存器→
Ram初始化→
选择启动模式→
执行相关启动模式→
Bootloader加载用户程序到特定Ram区域→
校验硬件及Bootloader程序是否准备完毕→
跳转到Main函数入口

4.本文小结

以IFX Tricore芯片为例,但对于不同的芯片供应商,执行的内容大体相同但执行顺序不见得完全一致。

猜你喜欢

转载自blog.csdn.net/initiallizer/article/details/121874868