Microarchitecture
System-level design decisions such as whether or not to include peripherals, such as memory controllers, can be considered part of the microarchitectural design process.  This includes decisions on the performance-level and connectivity of these peripherals.