CPU, Memory and NoC Architectures