AE_VLEL16T — 16-bit table entry load for variable-length encode, indicating if table load complete

Instruction Word

Slot
Inst
6
3
6
2
6
1
6
0
5
9
5
8
5
7
5
6
5
5
5
4
5
3
5
2
5
1
5
0
4
9
4
8
4
7
4
6
4
5
4
4
4
3
4
2
4
1
4
0
3
9
3
8
3
7
3
6
3
5
3
4
3
3
3
2
3
1
3
0
2
9
2
8
2
7
2
6
2
5
2
4
2
3
2
2
2
1
2
0
1
9
1
8
1
7
1
6
1
5
1
4
1
3
1
2
1
1
1
0
9876543210
Format x24 - 24 bit(s) 0
AE_VLEL16T 11010001 0100
r 3210
t 3210
s 3210

Assembler Syntax

AE_VLEL16T b0..15(br), a0..15(art), a0..15(ars)

C Syntax

#include <xtensa/tie/xt_hifi2.h>

extern void AE_VLEL16T(xtbool done /*out*/, unsigned symbol /*inout*/, const unsigned short * a);

Description

AE_VLEL16T is a 16-bit table entry load for variable-length encode. Given a pointer a0 to an encoding table of 16-bit entries, an entry is loaded and parsed from a0[a]. If the table entry loaded completes the current encoding operation, b is set to true, otherwise b is set to false and a is set to the appropriate index for the next lookup to continue the encoding operation. In either case, the appropriate codeword bits are pushed onto the output bit stream.

Implementation Pipeline

In Out
art Estage, ars Estage AE_BITSUSED Mstage, AE_NEXTOFFSET Mstage, br Mstage, art Wstage

Protos that use AE_VLEL16T

proto AE_VLEL16T { out xtbool done, inout uint32 symbol, in const uint16 * a }{}{
AE_VLEL16T done, symbol, a;
}