The G31 implements the Bifrost architecture supporting OpenGL 2.0 and Vulkan with a simple 1 uni-pixel or dual-pixel shader core operating with a 650 MHz clock, small 4k load/store cache and optimised work registers for low energy and small area. Level 2 cache size from 8KB for uni-pixel to 64KB for dual pixel core. AMBA ACE-LITE and AXI bus interface. Support for Arm Frame Buffer Compression (AFBC) and Adaptive Scalable Texture Compression (ASTC).
The G31 has a 512 thread pool, each execution engine is a quad containing four arithmetic logic units (ALU) possessing separate Fused Multiply Add (FMA) and ADD/SF pipes operating on 128-bit quad-word registers, the texture unit is responsible for all memory access to do with textures and the load/store unit is responsible for all shader memory accesses which are not related to texturing.