Cortex-M3 Memory Map
CM3 has a single fixed memory map. This greatly facilitates the porting of software between various CM3 microcontrollers. For example, the NVIC and MPU of each CM3 microcontroller have registers in the same location, making them universal. However, the rules set by CM3 are broad, and it still allows chip manufacturers to
flexibly allocate memory space to create unique microcontroller products.
The address space of CM3 is 4GB, and the program can be executed in the code area, internal SRAM area and external RAM area. However, because the instruction bus and data bus are separate, the best way is to put the program in the code area so that instruction fetch and data access can use their own bus and run in parallel.
This is the LPC18xx Memory mapping.
As you can see, the local SRAM is actually in the Code area specified by ARM. It seems that this is not a hard and fast rule, and each chip manufacturer can still adjust it flexibly.
This is STM32F101XC DE Memory mapping
Comparing with the above figure, we can see that each chip manufacturer defines the memory mapping of its own chip according to ARM's rough memory mapping regulations.
Cortex-M4 memory map (consistent with M3 definition)
Special cases encountered
This is QN908x Memory mapping
I checked the datasheet and found that the address of SRAM does start from 0x20000000.
However, the address in the above picture is marked as Aliased to SRAM. The area marked as SRAM starts at 0x040000000.
I open the .scf file of the sample program again.
There is confusion here. I will log it after I figure it out.
Previous article:STM32 system architecture and memory map
Next article:S3C6410 Memory Map
- Popular Resources
- Popular amplifiers
- Learn ARM development(16)
- Learn ARM development(17)
- Learn ARM development(18)
- Embedded system debugging simulation tool
- A small question that has been bothering me recently has finally been solved~~
- Learn ARM development (1)
- Learn ARM development (2)
- Learn ARM development (4)
- Learn ARM development (6)
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- LED chemical incompatibility test to see which chemicals LEDs can be used with
- Application of ARM9 hardware coprocessor on WinCE embedded motherboard
- What are the key points for selecting rotor flowmeter?
- LM317 high power charger circuit
- A brief analysis of Embest's application and development of embedded medical devices
- Single-phase RC protection circuit
- stm32 PVD programmable voltage monitor
- Introduction and measurement of edge trigger and level trigger of 51 single chip microcomputer
- Improved design of Linux system software shell protection technology
- What to do if the ABB robot protection device stops
- Sn-doped CuO nanostructure-based ethanol gas sensor for real-time drunk driving detection in vehicles
- Design considerations for automotive battery wiring harness
- Do you know all the various motors commonly used in automotive electronics?
- What are the functions of the Internet of Vehicles? What are the uses and benefits of the Internet of Vehicles?
- Power Inverter - A critical safety system for electric vehicles
- Analysis of the information security mechanism of AUTOSAR, the automotive embedded software framework
- Brief Analysis of Automotive Ethernet Test Content and Test Methods
- How haptic technology can enhance driving safety
- Let’s talk about the “Three Musketeers” of radar in autonomous driving
- Why software-defined vehicles transform cars from tools into living spaces
- Forum Spring Festival Duty Schedule
- Antenna distance measurement
- Power consumption of monochrome LCD screen
- Mathcad learning problems
- Some problems encountered when using spartan6 PLL IP Core
- How can I most effectively avoid arcing damage to the two contacts when the two contacts of the relay in an electric energy meter are opened or closed?
- What is Wi-Fi and why is it important?
- I need help from you guys, the inductor in the step-down power supply circuit makes a loud sound, what's going on?
- RIID emits a weak signal
- How to test wire length using LOTO oscilloscope TDR method?