S3C6410 Learning——MemoryMap

Publisher:CrystalSparkleLatest update time:2015-08-19 Source: eefocusKeywords:S3C6410  MemoryMap Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere
S3C6410 is different from S3C2440. S3C6410 supports 32-bit physical address space and divides the address space into two parts, one is "storage space" and the other is "peripheral space". The main storage space is accessed through SPINE bus, and its address space is 0x0000,0000~0x6FFF,FFFF. The main storage space is divided into four areas - boot image area, internal memory area, static memory area and dynamic memory area.

The address space of the boot image area is 0x0000,0000~0x07FF,FFFF, but there is no actual memory mapping. The boot image area is mapped to part of the internal storage area or static storage area, and the starting address is fixed at 0x0000,0000.

The internal storage area is for the boot loader to access the internal ROM (internal ROM) and internal SRAM (internal SRAM), also known as Steppingstone. The starting address of each internal memory is fixed. The address space of the internal ROM is 0x0800,0000~0x0BFF,FFFF, but the actual storage space is only 32KB. This area is read-only, and when the boot mode is selected as internal ROM boot, this area should be mapped to the boot image area (boot image area). The address space of SRAM is 0x0C00,0000~0x0FFF,FFFF, but the actual storage space is only 4KB.

The address space of the static storage area is 0x1000,0000~0x3FFF,FFFF. Through this area, SROM, SRAM, NOR Flash, asynchronous NOR interface devices, OneNand Flash and Steppingstone can be accessed. Each area corresponds to a chip select, for example, the address space 0x1000,0000~0x17FF,FFFF corresponds to Xm0CSn[0]. The starting address of each chip select is fixed. Nand flash and CF/ATA cannot be accessed through the static storage area, so if any area corresponding to Xm0CSn[5:2] is mapped to NFCON or CFCON, the address space of the corresponding area will be inaccessible. A special case is that when the area corresponding to Xm0CSn[2] is used for NAND Flash, Steppingstone is mapped to the address space 0x2000,0000~0x27FF,FFFF.

The address space of the dynamic storage area is 0x4000,0000~0x6FFF,FFFF, and DMC1 has the right to use the address space of 0x5000,0000~0x6FFF,FFFF. The starting address of each chip select is configurable.

The peripheral space is accessed through the PERI bus, and its address space is 0x7000,0000~0x7FFF,FFFF. All special function registers can be accessed through this area. If the data comes from NFCON or CFCON, these data are also accessed through the PERI bus.

The memory distribution of the main storage area is as follows:

Please refer to the manual directly for the spatial distribution of peripherals. The above is purely my personal understanding of the chip manual. If there are any omissions, please point them out.

Keywords:S3C6410  MemoryMap Reference address:S3C6410 Learning——MemoryMap

Previous article:S3C6410 learning - Nand flash trap
Next article:i.MX6Q (TQIMX6Q/TQE9) Study Notes - Choice of Development Board

Recommended ReadingLatest update time:2024-11-16 21:59

S3C6410 memory, address mapping and chip startup
S3C6410 Chapter 1 Introduction to Memory, Address Mapping and Chip Startup I have been listening to classes at Shangguan for a while, and the gains are so-so, and there is nothing particularly exciting. As of today, the ARM content has ended, and I am not very interested in some classes. According to my habit of not
[Microcontroller]
(ARM11 S3C6410) ARM11 bare metal first experience, GPIO register
When you get an unfamiliar MCU, you usually want to run the bare metal first. ... Usually the first thing you do is to look at the GPIO registers. OK6410 development board circuit diagram. 6410 IO port resources... The register address you want to close GPMCON: IO po
[Microcontroller]
(ARM11 S3C6410) ARM11 bare metal first experience, GPIO register
U-Boot-2011.06 transplant modification plan that supports S3C6410 processor SD card boot mode
Universal Bootloader (U-Boot) is the first piece of code executed after the system is powered on. Its functions mainly include initializing the hardware environment and loading and executing the operating system kernel. When installing the system, U-Boot usually needs to be programmed into FLASH using special tools, a
[Microcontroller]
U-Boot-2011.06 transplant modification plan that supports S3C6410 processor SD card boot mode
ARM11 learning based on S3C6410 (XV) MMU is here
Now, we have come to the world of main. Next, we will experience the MMU of ARM11, which is not available in STM32. Previously, during the core initialization process, the MMU function was turned off. That is because at that time, the operations were all physical addresses, so the MMU needed to be turned off.  MMU,
[Microcontroller]
ARM11 learning based on S3C6410 (XV) MMU is here
Home monitoring moving target detection system based on S3C6410 processor and Linux
The ARM11 (S3C6410) processor was selected as the hardware platform, the embedded Linux operating system was used as the software platform, the background difference method and the inter-frame difference method of comprehensive moving image detection were used as algorithms, and combined with the GSM module, an applic
[Microcontroller]
Home monitoring moving target detection system based on S3C6410 processor and Linux
Linux 3.3.0 ported to one of the S3C6410 development boards
Here we have only successfully transplanted the kernel, and can mount the file system to run. Drivers will be added in succession. Step 1: Download the latest kernel from the kernel official website. I downloaded linux-3.3-rc3.tar.bz2. Step 2: Unzip the kernel and enter the arch/arm/mach-s3c64x
[Microcontroller]
S3C6410 GPIO operation interface
1. Configure GPIO         When using the pins of S3C6410, you need to configure them, such as configuring them as input/output/interrupt functions, according to the chip manual. All these configurations are done in Gpiolib.c (/arch/arm/plat-s3c64xx). Of course, you can use the basic __raw_readl and __raw_writel to ope
[Microcontroller]
ARM11 learning based on S3C6410 (IV) Core initialization and setting processor mode
The interrupt vector table has been set before, and now we need to set the processor mode. For ARM11, there are 8 modes, and different modes have different permissions. When developing the bootloader, we need to set the processor mode to Supervisor mode, that is, SVC mode. In this way, the permissions are high and all
[Microcontroller]
ARM11 learning based on S3C6410 (IV) Core initialization and setting processor mode
Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号