Hierarchical IP Subsystems
Most practical SoCs are more than just a collection of IPs and custom development. There is a clear hierarchy associated with the IPs that are used. For example, an SoC might instantiate 8 USB ports, but each port needs a USB phy and a USB controller. Further, this SoC might also need to instantiate other IO like PCIe or SATA etc. All those individual functions require their own controllers, PHYs etc.
See the PDF at: Hierarchical IP Subsystems