Data VGPR enable mask: one to four consecutive VGPRs. Reads: defines which components are returned. 0 = red, 1 = green, 2 = blue, 3 = alpha Writes: defines which components are written with data from VGPRs (missing components get 0). Enabled components come from consecutive VGPRs. For example: DMASK=1001: Red is in VGPRn and alpha in VGPRn+1. For D16 writes, DMASK is used only as a word count: each bit represents 16 bits of data to be written, starting at the LSBs of VADDR, the MSBs, VADDR+1, etc. Bit position is ignored.Address components are 16-bits (instead of the usual 32 bits). When set, all address components are 16 bits (packed into two per Dword), except: Texel offsets (three 6-bit uint packed into one Dword). PCF reference (for _C instructions). Address components are 16-bit uint for image ops without sampler; 16-bit float with sampler.
Image Non-Sequential Address (NSA)
To avoid having many move instructions to pack image address VGPRs together, MIMG supports a “Non Sequential Address” version of the instruction where the VGPR of every address component is uniquely defined. Data components must still be packed. This new format creates a larger instruction word, which can be up to 5 dwords long. The first address goes in the VADDR field, and subsequent addresses go into ADDR1-12. The 3 dword form of the instruction can supply up to 5 addresses; the 4 dword form 9 addresses and the 5 dword form 13 addresses which is the maximum any texture instruction can require. When using 16-bit addresses, each VGPR holds a pair of addresses and these cannot be located in different VGPRs.
Image Opcodes with No Sampler
For image opcodes with no sampler, all VGPR address values are taken as uint. For cubemaps, face_id = slice * 6 + face. The table below shows the contents of address VGPRs for the various image opcodes.For image opcodes with a sampler, all VGPR address values are taken as float. For cubemaps, face_id = slice * 8 + face. Certain sample and gather opcodes require additional values from VGPRs beyond what is shown. These values are: offset, bias, z-compare, and gradients.
Our superior products
ABB -- AC 800M controller, Bailey, PM866 controller, IGCT silicon controlled 5SHY 3BHB01 3BHEO0 3HNA00 DSOC series
BENTLY --- 3500 system/proximitor, front and rear cards, sensors, power modules, probes, cables
Emerson -- modbus card, power panel, controller, power supply, base, power module, switch
EPRO --- Data acquisition module, probe, speed sensor, vibration sensor, shaft vibration transmitter, proximitor
FOXBORO - thermal resistance input/output module, power module, communication module, cable, controller, switch
GE --- module, air switch, I/O module, display, CPU module, power module, converter, CPU board, Ethernet module, integrated protection device, power module, gas turbine card
HIMA --- DI module, processor module, AI card, pulse encoder
Honeywell --- Secure digital output card, program module, analog input card, CPU module, FIM card
MOOG - servo valve, controller, module, power module
NI --- Information acquisition card, PXI module, card, chassis multi-channel control card
WESTINGHOUSE --- RTD thermal resistance input module, AI/AO/DI/DO module, power module, control module, base module
Woodward - Regulator, module, controller, governor
YOKOGAWA - Servo module, control cabinet node unit