arm存储控制器
⑴ arm中存储器的实际地址是如何确定的是CPU直接分配好的吗
存储器是可以映射成为不同的地址的。
一般来说,ARM处理器由于是32位的,所以可以访问的地址空间为4G。在这些地址空间内,实际的每个物理存储器,可以被映射在任意的地址上。你可以查看所使用的CPU手册来确定,每个存储器是怎么被映射的。下面举个例子说明一下。
ATMEL公司的AT91SAM7S256,ARM7TDMI内核,内部集成256KB Flash和64K SRAM。其中Flash被默认映射在0地址处,也就是说你访问0x0地址访问的就是Flash。但是,Flash还有一个地址:0x100000,你访问这个地址和访问0x0实际上是一个地方。就好比是你家开了两个门一样,入口不同,但是进的地方是一样的。而SRAM则被映射在0x200000地址处。
系统启动后,在MCR寄存器内写入1,这时CPU会调整存储器的映射关系,会把SRAM映射在0x0地址处,也就是说你现在访问0x0实际上访问的是SRAM的0x200000地址。
其他的许多支持外部存储器的(比如带NAND Flash控制和SDRAM控制器的)CPU,都可以把外部存储器映射到4G的地址空间内。它们的说明书绝对会有相对的说明,有一个图,叫地址空间映射表,你一看就明白了。
⑵ arm的存储控制器有什么用分成了8个bank,有什么好处好像不用存储控制器也可以接多个外设吧
这8个bank可以分别接8片 片外RAM、FLASH以及其他存储外设,由于各个外设的总线特性不同,所以可以对不同的bank配置不同的总线时序。
⑶ arm指的是什么
arm内核指的是cpu的最主要的部分,包括运算器,控制器,存储器,是cpu的核心。
ARM 处理器传统的命名是 ARM + 数字的方式:ARM7、ARM9、ARM11,在 ARM11 以后,ARM 公司使用了新的命名方式:Cortex,对比传统的方式就应该是 ARM12。想了解可以去创客学院网上了解。