5-8
SC140 DSP Core Reference Manual
Instruction Grouping
5.2.2 Prefix Types
The SC140 architecture supports 2 types of prefix instructions, each is used to convey a subset or all of the
following information about the VLES:
•
The number of instructions that are grouped together in the execution set.
•
Conditional execution of the whole set or a subgroup of the set (encoding the IFT/IFF/IFA prefix
instructions).
•
Looping information for supporting hardware loops (encoding the LPMARKA and LPMARKB
bits).
•
Encoding extensions for high register banks (D8-D15, R8-R15).
The prefix instructions use either one or two instruction words. Since the fetch set is eight words long, and
the maximum issue width is six (four DALU instructions and two AGU instructions), there is usually room
for two prefix words without affecting performance. However, in order to save code size, 3 prefix
instruction types were defined. Two one-word prefix types have a subset of the mentioned functionality. A
two-word prefix has all of the listed functionality. The selection of the right prefix type is done by the
assembler which automatically chooses the smallest prefix type (or no prefix at all); see Figure 5-3.
The detailed encoding for prefix words is specified in
Appendix A.1.5, “Prefix Word Encoding.”
5.2.2.1 Two-Word Prefix
The two-word prefix includes all information that could be specified in a prefix:
•
Number of instructions in the VLES
•
Mark hardware loop information
•
Specify conditional execution of the VLES or sub-groups of the VLES
•
Encode high register banks (D8-D15, R8-R15)
The SC140 16-bit instruction encoding has a three bit field for specifying each data register or address
pointer register. On their own, these instructions can encode eight DALU registers (D0–D7) and
eight address pointers (R0–R7). In order to specify operands that belong to the high register banks
(D8–D15, and R8–R15), additional register field bits are encoded in a second prefix word.
The two-word prefix includes a register field for each execution unit in the core (namely, four fields for
DALU instructions and two fields for AGU instructions). At most, DALU instructions have three operands
(for example, ADD D0,D1,D2). Therefore, each DALU field is three bits, so that each operand can be
independently specified to be in the high bank. Most AGU instructions have two operands (for example,
MOVE (R0)+,D0). Therefore, each AGU field has two bits.
A register extension bit is added for each possible operand in each execution unit. If this bit is set, it
signifies that the respective operand uses a register from the high bank. If this bit is cleared, or if the
respective set does not include a two-word prefix, the operand uses a register from the low bank. A
two-word prefix is generated by the assembler if at least one of the instructions in the execution set uses a
register from the high bank.
For a description of what conditional execution options are available, see
Section 5.2.3, “Conditional
Execution.”
For a description about the function of HW loop support with LPMARK, see
Section 5.4, “Hardware
Loops.”
Содержание SC140 DSP Core
Страница 12: ...xii SC140 DSP Core Reference Manual ...
Страница 18: ...xviii SC140 DSP Core Reference Manual ...
Страница 32: ...1 6 SC140 DSP Core Reference Manual Core Architecture Features ...
Страница 180: ...4 70 SC140 DSP Core Reference Manual Trace Unit Registers ...
Страница 250: ...6 70 SC140 DSP Core Reference Manual Programming Rules ...
Страница 314: ...7 64 SC140 DSP Core Reference Manual NOP Definition ...
Страница 385: ...BMCHG W SC140 DSP Core Reference Manual A 71 u16 iiiiiiiiiiiiiiii 16 bit unsigned immediate data ...
Страница 388: ...A 74 SC140 DSP Core Reference Manual BMCHG W s16 AAAAAAAAAAAAAAAA 16 bit signed SP address offset ...
Страница 391: ...BMCLR SC140 DSP Core Reference Manual A 77 u16 iiiiiiiiiiiiiiii 16 bit unsigned immediate data ...
Страница 454: ...A 140 SC140 DSP Core Reference Manual DECA u5 iiiii 5 bit unsigned immediate data 1 set by the assembler ...
Страница 463: ...DI SC140 DSP Core Reference Manual A 149 15 8 7 0 DI 1 1 4 1 0 0 1 1 1 1 1 0 1 1 1 1 1 0 1 ...
Страница 478: ...A 164 SC140 DSP Core Reference Manual EI ...
Страница 592: ...A 278 SC140 DSP Core Reference Manual MOVE L a32 aaaaaaaaaaaaaaaaAAAAAAAAAAAAAAAA 32 bit absolute long address ...
Страница 618: ...A 304 SC140 DSP Core Reference Manual MOVES 4F s15 sssssssssssssss Signed 15 bit offset ...
Страница 638: ...A 324 SC140 DSP Core Reference Manual MPYR ...
Страница 660: ...A 346 SC140 DSP Core Reference Manual OR W s16 AAAAAAAAAAAAAAAA Signed 16 bit SP address offset ...
Страница 746: ...A 432 SC140 DSP Core Reference Manual ZXTA x ...
Страница 758: ...I 10 Index ...
Страница 759: ...SC140 DSP Core Reference Manual i ...
Страница 760: ......