S3C6410的物理内存分红Memory和Pheriperal两部分,地址规模别离为0x0~0x6fffffff和0x7fffffff~0xffffffff。体系经过 SPINE总线拜访Memory空间,经过PERI总线拜访Pheriperal空间。而为了习惯不同外设的拜访速度,又别离经过AHB总线拜访LCD、 Camera、Accelerator等高速外设,经过APB总线拜访iic、watchdog等低速外设。
Memory:
(1)发动镜像区物理地址为0x00000000~0x07ffffff,共128MB,是用来发动体系的。可是这个规模内并没有实践的存储介质与之对应,只能在经过OM[4:0]挑选详细的发动介质后再把相应介质的物理地址映射到这个发动区,比如说挑选了IROM 发动方法后,就把IROM所占的地址空间映射为0x00000000开端的空间。引导镜像区反映一个镜像,这个镜像指向内存的一部分区域或许静态存储区。引导镜像的开端地址是0x0000_0000。
(2)内部内存区物理地址为0x08000000~0x0fffffff,共128MB。这个区域对应着内部的内存地址,内部的ROM和SRAM都是散布在这个区间。其间,0x08000000~0x0bffffff对应着内部ROM,当然实践上内部的ROM也并没有64MB这么多,只要32KB是有实践存储介质的,这32KB是一个只读区,放的是IROM方法下的发动代码,挑选IROM发动的时分首要运转的代码便是这一部分,称为BL0,这部分代码由厂家固化。0x0c000000~0x0fffffff对应内部SRAM,可读可写,当NAND 闪存发动被挑选时能映射到引导镜像区。
(3)静态内存区物理地址为0x10000000~0x3fffffff,共6*128MB。这个区域用于拜访挂在外部总线上的设备,比如说SRAM、NOR flash、oneNand等。这个区域被分割为6个bank,每个bank为128MB,数据宽度最大支撑16bit,每个bank经过 Xm0CS[5:0]来划定。和S3C2410 不相同的是,bank2~bank5能映射到nand flash、CF等非线性存储器,这并不是说能够经过bank2~bank5的地址段就能直接拜访nand flash、CF内部的地址,相反,当映射到这些器材的时分这些bank的地址也不能再使用了,拜访这些非线性存储器仍是得经过Pheriperal空间的AHB总线进行,和S3C2410中的拜访方法是相同的。不过有一个特例是,当Xm0CS2被映射到nand flash的时分,Steppingstone的SRAM被映射到bank2开端的4KB,而在以nand flash方法发动的时分bank2被映射到0x00000000开端的当地,实践上便是把Steppingstone映射到0x0000000了,这和 S3C2410的状况仍是类似的。
(4)动态内存区物理地址为0x40000000~0x6fffffff,共3*256MB。其间第一个256MB为保存区,实践使用的动态内存区为 0x50000000~0x6fffffff,又分为2个区间,别离占256MB,能够经过DMC的Xm1CS[1:0]来进行着2个区间的挑选。这个内存区主要是扩展DRAM,最大能够扩展512MB的DRAM。
2.Pheriperal外设区域经过PERI 总线被拜访,它的地址规模是0x7000_0000~0x7FFF_FFFF。这个地址规模的一切的SFR能被拜访。并且假如数据需求从NFCON或CFCON 传输,这些数据需求经过PERI总线传输。
特别设备地址空间:
AHB总线存储器映射