ARM Cortex-M processor core has three AHB buses, instruction bus (I-bus), data bus (D-bus), and system bus. Some may ask whether and how system bus should be connected to the overall system.
At the first sight, this question doesn’t sound right. Below is ARMv7-M address map. The I-bus and D-bus, by design, can only access address below 0x2000_0000. Normally it’s code region. Only system bus can access full 32bit address space. So the obvious answer is we should connect system bus to full address space including space below 0x2000_0000.
But where does the question come from? It turns out in lots of “bite”-size designs, designer only uses space below 0x2000_0000. The exception is space above 0xE000_0000 is still used for system PPB and Vendor _SYS. But these are implemented inside arm cortex-m processor core. There is no need to connect system bus outside arm core to access space above 0xe000_0000. Then it sounds reasonable to ask if system bus needs to be connected outside arm processor core.
I think system bus is still needed due to FPB.
Use points to gain access. You can either purchase points or contribute content and use contribution points to gain access.