Probabilmente non sapremo la verità prima dell'11~14 novembre, quando AMD illustrerà al Fusion Developer Summit l'architettura completa che è alla base dell'APU semi-custom della nuova PlayStation 4, ma gli ultimi diagrammi e gli schemi trapelati sul web lasciano intendere che Liverpool (questo il nome in codice che identifica il blocco CPU+iGPU di Orbis) potrebbe sfruttare una micro-architettura del comparto grafico superiore all'attuale GCN 1.0 implementata sulla generazione S.I "Southern Islands" delle GPU desktop e mobile di AMD.
La classica struttura centrale a doppio array di CU (Compute Unite) è affiancata sul front-end da un numero maggiore di ACE (Asynchronous Command Engines): 8 contro le 2 presenti in "Southern Islands". Nuovi meccanismi di accesso alla memoria ed una coda aggiuntiva contribuiscono a differenziare questa GPU da Cape Verde, Pitcairn o Tahiti.
In pratica siamo di fronte ad una GPU in grado di eseguire più task in parallelo rispetto a S.I, con una maggiore flessibilità computazionale e con un approccio più "CPU-like".
Le indiscrezione sono supportata dalla recente pubblicazione dell'ISA per l'architettura C.I. (Sea Islands). Attualmente il file non è disponibile perchè AMD sta apportando delle modifiche per chiarire meglio le differenze tra S.I. e C.I.
Di seguito riportiamo la prima stesura del documento originale:
Important differences between S.I. and C.I. GPUs
•Multi queue compute Lets multiple user-level queues of compute workloads be bound to the device and processed simultaneous. Hardware supports up to eight compute pipelines with up to eight queues bound to each pipeline. •System unified addressing Allows GPU access to process coherent address space. •Device unified addressing Lets a kernel view LDS and video memory as a single addressable memory. It also adds shader instructions, which provide access to “flat” memory space. •Memory address watch Lets a shader determine if a region of memory has been accessed. •Conditional debug Adds the ability to execute or skip a section of code based on state bits under control of debugger software. This feature adds two bits of state to each wavefront; these bits are initialized by the state register values set by the debugger, and they can be used in conditional branch instructions to skip or execute debug-only code in the kernel. •Support for unaligned memory accesses •Detection and reporting of violations in memory accesses
Summary of kernel instruction change from S.I. to C.I.
New instruction formats: •FLAT New instructions: •FLAT_* (entire family of operations) •S_CBRANCH_CDBGUSER •S_CBRANCH_CDBGSYS •S_CBRANCH_CDBGSYS_OR_USER •S_CBRANCH_CDBGSYS_AND_USER •S_DCACHE_INV_VOL •V_TRUNC_F64 •V_CEIL_F64 •V_FLOOR_F64 •V_RNDNE_F64