1
rh850是什么架构?
RH850是一种高性能32位RISC微处理器架构,由日本的Renesas Electronics(日立和三菱电机合并后成立的公司)开发和推出。它被广泛应用于汽车电子领域,用于诸如发动机控制单元(ECU)、刹车系统、驾驶员辅助系统等关键汽车控制系统中。RH850架构设计注重稳定性、可靠性和实时性能,支持复杂的数据处理和实时控制任务。它具有强大的计算能力、高精度的定时计数器和丰富的外设接口,能够满足汽车电子系统对速度、安全性和功能丰富性的要求。
RH850与RL78的区别
RH850和RL78是两种不同的微处理器架构,由Renesas Electronics开发和推出。
1. 架构类型:RH850是32位RISC架构,而RL78是16位RISC架构。
2. 适用领域:RH850主要用于汽车电子领域,广泛应用于汽车控制系统,如发动机控制单元(ECU)、刹车系统等。RL78则更适用于低功耗和小型的应用,例如家电、工业控制和传感器网络等。
3. 性能差异:由于RH850是32位架构,相对于RL78具有更高的计算能力和更大的存储空间。RH850处理器的时钟频率也往往更高,能够处理更多复杂的任务。
4. 外设接口:RH850和RL78在外设接口方面也有一些差异。RH850通常提供更多的外设接口,以满足汽车电子系统对丰富功能和高速数据传输的需求。而RL78则注重低功耗和小型化,可能提供较少的外设接口。
总的来说,RH850适用于要求高性能、高可靠性和实时性的汽车电子系统,而RL78适用于低功耗和小型化的应用领域。选择哪种架构取决于具体的应用需求和性能要求。
RH850微处理器架构具有多种类型的内存概念,包括以下几种:
1. Flash存储器:RH850具有内置的Flash存储器,用于存储程序代码和数据。Flash存储器具有非易失性特性,断电后数据仍然保留。
2. RAM(随机访问存储器):RH850也配备了内部RAM用于临时存储数据和工作区。RAM比Flash存储器的读写速度更快,但是断电后数据会丢失。
3. ROM(只读存储器):RH850某些版本可能还包含一些只读存储器,用于存储固定的程序代码和数据。ROM的内容是只读的,无法进行写入操作。
4. 数据存储器(Data Memory):RH850也支持外部数据存储器,如外部RAM或外部Flash存储器。这些存储器可以用于扩展处理器的存储容量,提供更大的数据存储空间。
RH850内存概念包括内置的Flash存储器、RAM、ROM和外部数据存储器。各种类型的内存用于存储程序代码、数据和临时工作区,以支持RH850的正常运行和应用程序的执行。
RH850的内存空间
定义了让人容易迷惑的几个RAM概念:
首先,物理空间上,芯片给出了一个Local RAM和Global RAM,如:
其中,Global RAM顾名思义,“全局”的含义就是说这个内存是挂在内部总线上的,有的RH850系列并没有这块内存,也可以说这个RAM可以看作是CPU的一个“外设”一样,在权限上CPU和DMA等外设都可以访问:
在Local RAM里面又会根据芯片有几个CPU,去分配具体的空间。其中:
Local RAM:这个概念里会给芯片里的每个CPU给个相同大小的本地RAM内存,比如CPU1和CPU2各自有160KB的物理RAM空间,这样就可以各自运行互不相干,而且由于这块空间是与CPU内核绑定的,所以它的访问速度更快。它又有CPUn和self两个概念来切割这些空间。
Local RAM(CPUn):其中n代表第几个CPU,这个空间概念的权限可以用于CPU还DMA等特定外设可以访问的。这个空间可被self区域分割,连着下文self一起看。
Local RAM(self):这个概念就是针对上述的每个CPU的本地RAM共同映射到这片区域来!比如CPU1和CPU2各自有160KB的Local RAM空间,如果我们现在设置self空间为60KB,那么CPU1和CPU2的Local RAM就都会切割出60KB的内存来给self,这切出的两块60KB空间相当于被合体成一块相同的60KB空间了!那么相对的,Local RAM(CPUn)的各CPU空间就减少了60KB,变成了100KB了!
看芯片手册的地址图,可以看到芯片的地址都已经预留了Local RAM的空间大小,从这里看似乎有三块同样大小的RAM空间,可是实际是self只是个镜像预留区域,CPU1和CPU2各自拥有自己的内存,self是把CPU1和2切出来镜像成一块空间用的。
CPUn的区域是把各个CPU的Local RAM放到预置的地址范围上的,而self区域的访问对于CPU1和2访问的都是同一个地址,但是各个CPU访问的这块区域实际的物理内存确是各自CPU的,所以,顾名思义,self区域的权限是:不同的CPU看似访问相同的地址,其实读出的值是各自内存里对应的值。
总结:我们常用CPU的主运存、代码堆栈存放,可以选择上述所有可用的内存,只要选空间较大的,把空间合理使用即可。只是内存对于DMA等外设访问就要看一下权限了,其中Global RAM可视为外扩外设,权限最宽。但是要是想使用芯片内部本地的Local RAM,就要把空间分配到CPUn的那部分空间才可以给DMA等外设访问!
编辑:黄飞
全部0条评论
快来发表一下你的评论吧 !