Thanks for the details Alex! Here is an attempt to formalize the decomposition of a (mostly Renoir) APU, using plantuml. That's highly preliminary, focusing on blocks/sub-blocks/firmware, based on my current partial (and surely incorrect at places) understanding. I focused on getting contents quickly, so the formalism itself is shaky. Can you spot any error ? Fill those holes (usually marked with "?") ? What additional blocks would make sense (caches at least, I guess) ? What additional information would help understand how they work together (control/data flows, busses...) ? Indentation is shaky too, better format it to read (e.g. by pasting in http://www.plantuml.com/plantuml/uml/) ------ >8 ------- @startuml package "APU" { package CPU { } package GPU { package common? [[{"GPU Family"?}]] { } package GFX [[{Graphics and Compute Engine}]] { package CP [[{Command Processor}]] { package PFP [[{MicroEngine Compute}]] { package "pfp fw" #cccccc { } } package ME [[{MicroEngine ?}]] { package "me fw" #cccccc { } } package CE [[{?}]] { package "ce fw" #cccccc { } } package MEC [[{MicroEngine Compute}]] { package "mec fw" #cccccc { } package "mec2 fw?" #cccccc { } } } package RLC [[{RunList Controller (pm)}]] { package "rlc fw" #cccccc { } } } package '"management"'<<Cloud>> { package MES [[{Micro-Engine Scheduler}]] { } package SMU [[{System Mamagement Unit}]] { } package PSP [[{Platform Security Processor}]] { package "asd fw" #cccccc { } package "ta fw" #cccccc { } } package IH [[{Interrupt Handler}]] { } package GMC [[{Graphics Memory Controller}]] { } package SDMA [[{System DMA}]] { package "sdma fw" #cccccc { } } } package DM [[{Display Manager, link to...}]] { package "DMUB? DMU?" [[{Display Micro-Controller Unit}]] { package "dmcub fw" #cccccc { } } package ... { } } package multimedia <<Cloud>> { package .... { } package VCN { package "vcn fw" #cccccc { } } package JPEG { } } } } @enduml ------ >8 -------