
RH850系列芯片深度剖析 1.7-启动流程解析
文章目录
- RH850系列芯片深度剖析 1.7-启动流程解析
- 
   - 一、简介
- 二、启动相关文件说明
- 三、启动相关的段
- 四、启动流程
- 
     - 4.1 启动文件启动
- 
       - 4.1.1 寄存器初始化
- 4.1.2 时钟初始化
- 4.1.3 模块Standby寄存器初始化
- 4.1.4 启动从核
- 4.1.5 硬件初始化
- 
         - 4.1.5.1 RAM初始化
- 4.1.5.2 核时序同步
 
- 4.1.6 EI中断初始化
- 4.1.7 GP、TP、SP寄存器配置
- 4.1.8 中断相关寄存器配置
- 4.1.9 使能FPU
 
- 4.2 Library库启动
- 
       - 4.2.1 默认启动模块
- 
         - 4.2.1.1 crt0.800自定义
 
- 4.2.2 底层启动库
- 
         - 4.2.2.1 libstartup.a
- 
           - 4.2.2.1.1 ind_crt0.c
- 4.2.2.1.2 ind_mcpy.800, ind_mset.800
- 4.2.2.1.3 ind_uzip.c
- 4.2.2.1.4 ind_initmem.800
 
- 4.2.2.2 libsys.a
- 
           - 4.2.2.2.1 ind_crt1.c
 
 
 
 
 
一、简介
本章节基于型号为RH850 U2A16的芯片(4核)对其启动流程进行讲解(基于ghs编译器),从复位向量执行到main函数入口。以原厂提供的示例代码为基础,介绍使用MULTI(基于ghs编译器)作为集成开发环境的启动过程。
注:本章节所参考的示例代码下载链接请见章节末尾。
二、启动相关文件说明
代码工程中与启动相关的文件以及说明如下表所示:
 
- startup.850:主要包括PE0和PE1的复位向量定义,复位后对CPU寄存器通用初始化配置以及PE0和PE1的寄存器专属配置,PE0负责启动其他三个核,以及还包括PE0和PE1的部分硬件以及EI中断的初始化配置。
- startup2.8










![[pytorch] --- pytorch基础之tensorboard使用](https://i-blog.csdnimg.cn/direct/d4657434cb8d4250b8e5edde2e629e94.png)







![[Tools: LoRA] Diffusers中Stable Diffusion的实现](https://i-blog.csdnimg.cn/direct/c535dcae963142e3aaae50bbf5c551f2.png)
