SGX543: Difference between revisions
Jump to navigation
Jump to search
Line 297: | Line 297: | ||
! 7 !! 6 !! 5 !! 4 !! 3 !! 2 !! 1 !! 0 | ! 7 !! 6 !! 5 !! 4 !! 3 !! 2 !! 1 !! 0 | ||
|- | |- | ||
| | | colspan="2" style="text-align: center;" | || colspan="1" style="text-align:center;" | opcode2 || colspan="5" style="text-align:center;" | | ||
|- | |- | ||
| 0 || 0 || | | 0 || 0 || || 0 || 0 || 0 || 0 || 0 | ||
|} | |} | ||
|| | || | ||
Line 308: | Line 308: | ||
| || || || || || || || | | || || || || || || || | ||
|- | |- | ||
| | | x || x || x || x || x || x || x || x | ||
|} | |} | ||
|| | || |
Revision as of 01:08, 9 February 2018
Instruction set
It looks like instructions are 8 bytes long. Roughly speaking - first 4 bytes contain opcode and addressing mode. Second 4 bytes contain operands encoding.
Bit encoding used in this reference.
value | meaning |
---|---|
0 | bit clear |
1 | bit set |
x | dont care |
? | unknown |
0x00000000 - 0x08000000
Instructions: mad
Encoding:
|
|
|
|
Fields:
data_format:
|
predicate:
|
Examples:
mad.f32 p0 mad.f32 !p0 mad.f32 Pn mad.f32 mad.f16 p0 mad.f16 !p0 mad.f16 Pn mad.f16
0x08000000 - 0x10000000
Instructions: mul.f32
Encoding:
|
|
|
|
Fields:
predicate:
2 | 1 | 0 | value |
---|---|---|---|
0 | 0 | 0 | |
0 | 0 | 1 | p0 |
0 | 1 | 0 | p1 |
0 | 1 | 1 | p2 |
1 | 0 | 0 | !p0 |
1 | 0 | 1 | !p1 |
1 | 1 | 0 | !p2 |
1 | 1 | 1 | Pn |
Examples:
mul.f32 p0 mul.f32 p1 mul.f32 p2 mul.f32 !p0 mul.f32 !p1 mul.f32 !p2 mul.f32 Pn mul.f32
0x10000000 - 0x18000000
Instructions: mul.f16
Encoding:
|
|
|
|
Fields:
predicate:
2 | 1 | 0 | value |
---|---|---|---|
0 | 0 | 0 | |
0 | 0 | 1 | p0 |
0 | 1 | 0 | p1 |
0 | 1 | 1 | p2 |
1 | 0 | 0 | !p0 |
1 | 0 | 1 | !p1 |
1 | 1 | 0 | !p2 |
1 | 1 | 1 | Pn |
Examples:
mul.f16 p0 mul.f16 p1 mul.f16 p2 mul.f16 !p0 mul.f16 !p1 mul.f16 !p2 mul.f16 Pn mul.f16
0x18000000 - 0x20000000
|
|
|
|
0x20000000 - 0x28000000
|
|
|
|
0x28000000 - 0x30000000
|
|
|
|
0x30000000 - 0x38000000
|
|
|
|
0x38000000 - 0x40000000
|
|
|
|
0x40000000 - 0x48000000
|
|
|
|
0x48000000 - 0x50000000
|
|
|
|
0x50000000 - 0x58000000
|
|
|
|
0x58000000 - 0x60000000
|
|
|
|
0x60000000 - 0x68000000
|
|
|
|
0x68000000 - 0x70000000
|
|
|
|
0x70000000 - 0x78000000
|
|
|
|
0x78000000 - 0x80000000
|
|
|
|
0x80000000 - 0x88000000
|
|
|
|
0x88000000 - 0x90000000
|
|
|
|
0x90000000 - 0x98000000
|
|
|
|
0x98000000 - 0xA0000000
|
|
|
|
0xA0000000 - 0xA8000000
|
|
|
|
0xA8000000 - 0xB0000000
|
|
|
|
0xB0000000 - 0xB8000000
|
|
|
|
0xB8000000 - 0xC0000000
|
|
|
|
0xC0000000 - 0xC8000000
|
|
|
|
0xC8000000 - 0xD0000000
|
|
|
|
0xD0000000 - 0xD8000000
|
|
|
|
0xD8000000 - 0xE0000000
|
|
|
|
0xE0000000 - 0xE8000000
|
|
|
|
0xE8000000 - 0xF0000000
|
|
|
|
0xF0000000 - 0xF8000000
|
|
|
|
0xF8000000 - 0xFF000000
|
|
|
|