logo资料库

TI DSP 指令集.pdf

第1页 / 共1013页
第2页 / 共1013页
第3页 / 共1013页
第4页 / 共1013页
第5页 / 共1013页
第6页 / 共1013页
第7页 / 共1013页
第8页 / 共1013页
资料共1013页,剩余部分请下载后查看
Titlepage
Release History
Contents
List of Tables
List of Figures
List of Examples
Preface
About This Manual
Notational Conventions
Related Documentation from Texas Instruments
Trademarks
Introduction
1.1 DSP Features and Options
1.1.1 4x Multiply
1.1.2 Floating point support
1.1.3 Vector Processing
1.1.4 Complex arithmetic and matrix operations
1.2 DSP Architecture
1.2.1 Central Processing Unit (CPU)
1.2.2 Internal Memory
1.2.3 Memory and Peripheral Options
CPU Data Paths and Control
2.1 Introduction
2.2 General-Purpose Register Files
2.3 Functional Units
2.4 Register File Cross Paths
2.5 Memory, Load, and Store Paths
2.6 Data Address Paths
2.7 Galois Field
2.7.1 Special Timing Considerations
2.8 Control Register File
2.8.1 Register Addresses for Accessing the Control Registers
2.8.2 Pipeline/Timing of Control Register Accesses
2.8.3 Addressing Mode Register (AMR)
2.8.4 Control Status Register (CSR)
2.8.5 Galois Field Polynomial Generator Function Register (GFPGFR)
2.8.6 Interrupt Clear Register (ICR)
2.8.7 Interrupt Enable Register (IER)
2.8.8 Interrupt Flag Register (IFR)
2.8.9 Interrupt Return Pointer Register (IRP)
2.8.10 Interrupt Set Register (ISR)
2.8.11 Interrupt Service Table Pointer Register (ISTP)
2.8.12 Nonmaskable Interrupt (NMI) Return Pointer Register (NRP)
2.8.13 E1 Phase Program Counter (PCE1)
2.9 Control Register File Extensions
2.9.1 DSP Core Number Register (DNUM)
2.9.2 Exception Clear Register (ECR)
2.9.3 Exception Flag Register (EFR)
2.9.4 GMPY Polynomial-A Side Register (GPLYA)
2.9.5 GMPY Polynomial-B Side Register (GPLYB)
2.9.6 Internal Exception Report Register (IERR)
2.9.7 SPLOOP Inner Loop Count Register (ILC)
2.9.8 Interrupt Task State Register (ITSR)
2.9.9 NMI/Exception Task State Register (NTSR)
2.9.10 Restricted Entry Point Register (REP)
2.9.11 SPLOOP Reload Inner Loop Count Register (RILC)
2.9.12 Saturation Status Register (SSR)
2.9.13 Time Stamp Counter Registers (TSCL and TSCH)
2.9.13.1 Initialization
2.9.13.2 Enabling Counting
2.9.13.3 Disabling Counting
2.9.13.4 Reading the Counter
2.9.14 Task State Register (TSR)
2.10 Control Register File Extensions for Floating-Point Operations
2.10.1 Floating-Point Adder Configuration Register (FADCR)
2.10.2 Floating-Point Auxiliary Configuration Register (FAUCR)
2.10.3 Floating-Point Multiplier Configuration Register (FMCR)
Instruction Set
Instruction Descriptions
4.1 Example
4.2 ABS
4.3 ABS2
4.4 ABSDP
4.5 ABSSP
4.6 ADD
4.7 ADDAB
4.8 ADDAD
4.9 ADDAH
4.10 ADDAW
4.11 ADDDP
4.12 ADDK
4.13 ADDKPC
4.14 ADDSP
4.15 ADDSUB
4.16 ADDSUB2
4.17 ADDU
4.18 ADD2
4.19 ADD4
4.20 AND
4.21 ANDN
4.22 AVG2
4.23 AVGU4
4.24 B
4.25 B
4.26 B IRP
4.27 B NRP
4.28 BDEC
4.29 BITC4
4.30 BITR
4.31 BNOP
4.32 BNOP
4.33 BPOS
4.34 CALLP
4.35 CCMATMPY
4.36 CCMATMPYR1
4.37 CCMPY32R1
4.38 CLR
4.39 CMATMPY
4.40 CMATMPYR1
4.41 CMPEQ
4.42 CMPEQ2
4.43 CMPEQ4
4.44 CMPEQDP
4.45 CMPEQSP
4.46 CMPGT
4.47 CMPGT2
4.48 CMPGTDP
4.49 CMPGTSP
4.50 CMPGTU
4.51 CMPGTU4
4.52 CMPLT
4.53 CMPLT2
4.54 CMPLTDP
4.55 CMPLTSP
4.56 CMPLTU
4.57 CMPLTU4
4.58 CMPY
4.59 CMPY32R1
4.60 CMPYR
4.61 CMPYR1
4.62 CMPYSP
4.63 CROT270
4.64 CROT90
4.65 DADD
4.66 DADD2
4.67 DADDSP
4.68 DAPYS2
4.69 DAVG2
4.70 DAVGNR2
4.71 DAVGNRU4
4.72 DAVGU4
4.73 DCCMPY
4.74 DCCMPYR1
4.75 DCMPEQ2
4.76 DCMPEQ4
4.77 DCMPGT2
4.78 DCMPGTU4
4.79 DCMPY
4.80 DCMPYR1
4.81 DCROT270
4.82 DCROT90
4.83 DDOTP4
4.84 DDOTP4H
4.85 DDOTPH2
4.86 DDOTPH2R
4.87 DDOTPL2
4.88 DDOTPL2R
4.89 DDOTPSU4H
4.90 DEAL
4.91 DINT
4.92 DINTHSP
4.93 DINTHSP
4.94 DINTHSPU
4.95 DINTSPU
4.96 DMAX2
4.97 DMAXU4
4.98 DMIN2
4.99 DMINU4
4.100 DMPY2
4.101 DMPYSP
4.102 DMPYSU4
4.103 DMPYU2
4.104 DMPYU4
4.105 DMV
4.106 DMVD
4.107 DOTP2
4.108 DOTP4H
4.109 DOTPN2
4.110 DOTPNRSU2
4.111 DOTPNRUS2
4.112 DOTPRSU2
4.113 DOTPRUS2
4.114 DOTPSU4
4.115 DOTPSU4H
4.116 DOTPUS4
4.117 DOTPU4
4.118 DPACK2
4.119 DPACKH2
4.120 DPACKH4
4.121 DPACKHL2
4.122 DPACKL2
4.123 DPACKL4
4.124 DPACKLH2
4.125 DPACKLH4
4.126 DPACKX2
4.127 DPINT
4.128 DPSP
4.129 DPTRUNC
4.130 DSADD
4.131 DSADD2
4.132 DSHL
4.133 DSHL2
4.134 DSHR
4.135 DSHR2
4.136 DSHRU
4.137 DSHRU2
4.138 DSMPY2
4.139 DSPACKU4
4.140 DSPINT
4.141 DSPINTH
4.142 DSSUB
4.143 DSSUB2
4.144 DSUB
4.145 DSUB2
4.146 DSUBSP
4.147 DXPND2
4.148 DXPND4
4.149 EXT
4.150 EXTU
4.151 FADDDP
4.152 FADDSP
4.153 FMPYDP
4.154 FSUBDP
4.155 FSUBSP
4.156 GMPY
4.157 GMPY4
4.158 IDLE
4.159 INTDP
4.160 INTDPU
4.161 INTSP
4.162 INTSPU
4.163 LAND
4.164 LANDN
4.165 LDB(U)
4.166 LDB(U)
4.167 LDDW
4.168 LDH(U)
4.169 LDH(U)
4.170 LDNDW
4.171 LDNW
4.172 LDW
4.173 LDW
4.174 LMBD
4.175 LOR
4.176 MAX2
4.177 MAXU4
4.178 MFENCE
4.179 MIN2
4.180 MINU4
4.181 MPY
4.182 MPY2
4.183 MPY2IR
4.184 MPY32
4.185 MPY32
4.186 MPY32SU
4.187 MPY32U
4.188 MPY32US
4.189 MPYDP
4.190 MPYH
4.191 MPYHI
4.192 MPYHIR
4.193 MPYHL
4.194 MPYHLU
4.195 MPYHSLU
4.196 MPYHSU
4.197 MPYHU
4.198 MPYHULS
4.199 MPYHUS
4.200 MPYI
4.201 MPYID
4.202 MPYIH
4.203 MPYIHR
4.204 MPYIL
4.205 MPYILR
4.206 MPYLH
4.207 MPYLHU
4.208 MPYLI
4.209 MPYLIR
4.210 MPYLSHU
4.211 MPYLUHS
4.212 MPYSP
4.213 MPYSPDP
4.214 MPYSP2DP
4.215 MPYSU
4.216 MPYSU4
4.217 MPYU
4.218 MPYU2
4.219 MPYU4
4.220 MPYUS
4.221 MPYUS4
4.222 MV
4.223 MVC
4.224 MVD
4.225 MVK
4.226 MVKH/MVKLH
4.227 MVKL
4.228 NEG
4.229 NOP
4.230 NORM
4.231 NOT
4.232 OR
4.233 PACK2
4.234 PACKH2
4.235 PACKH4
4.236 PACKHL2
4.237 PACKLH2
4.238 PACKL4
4.239 QMPY32
4.240 QMPYSP
4.241 QSMPY32R1
4.242 RCPDP
4.243 RCPSP
4.244 RINT
4.245 ROTL
4.246 RPACK2
4.247 RSQRDP
4.248 RSQRSP
4.249 SADD
4.250 SADD2
4.251 SADDSUB
4.252 SADDSUB2
4.253 SADDSU2
4.254 SADDUS2
4.255 SADDU4
4.256 SAT
4.257 SET
4.258 SHFL
4.259 SHFL3
4.260 SHL
4.261 SHL2
4.262 SHLMB
4.263 SHR
4.264 SHR2
4.265 SHRMB
4.266 SHRU
4.267 SHRU2
4.268 SMPY
4.269 SMPYH
4.270 SMPYHL
4.271 SMPYLH
4.272 SMPY2
4.273 SMPY32
4.274 SPACK2
4.275 SPACKU4
4.276 SPDP
4.277 SPINT
4.278 SPKERNEL
4.279 SPKERNELR
4.280 SPLOOP
4.281 SPLOOPD
4.282 SPLOOPW
4.283 SPMASK
4.284 SPMASKR
4.285 SPTRUNC
4.286 SSHL
4.287 SSHVL
4.288 SSHVR
4.289 SSUB
4.290 SSUB2
4.291 STB
4.292 STB
4.293 STDW
4.294 STH
4.295 STH
4.296 STNDW
4.297 STNW
4.298 STW
4.299 STW
4.300 SUB
4.301 SUBAB
4.302 SUBABS4
4.303 SUBAH
4.304 SUBAW
4.305 SUBC
4.306 SUBDP
4.307 SUBSP
4.308 SUBU
4.309 SUB2
4.310 SUB4
4.311 SWAP2
4.312 SWAP4
4.313 SWE
4.314 SWENR
4.315 UNPKBU4
4.316 UNPKH2
4.317 UNPKHU2
4.318 UNPKHU4
4.319 UNPKLU4
4.320 XOR
4.321 XORMPY
4.322 XPND2
4.323 XPND4
4.324 ZERO
3.1 Instruction Operation and Execution Notation
3.2 Instruction Syntax and Opcode Notations
3.2.1 32-Bit Opcode Maps
3.2.2 16-Bit Opcode Maps
3.3 Overview of IEEE Standard Single- and Double-Precision Formats
3.3.1 Single-Precision Formats
3.3.2 Double-Precision Formats
3.4 Delay Slots
3.5 Parallel Operations
3.5.1 Example Parallel Code
3.5.2 Branching Into the Middle of an Execute Packet
3.6 Conditional Operations
3.7 SPMASKed Operations
3.8 Resource Constraints
3.8.1 Constraints on Instructions Using the Same Functional Unit
3.8.2 Constraints on the Same Functional Unit Writing in the Same Instruction Cycle
3.8.3 Constraints on Cross Paths (1X and 2X)
3.8.3.1 Maximum Number of Accesses to a Register on the Opposite Register File
3.8.4 Cross Path Sharing
3.8.5 Cross Path Stalls
3.8.6 Constraints on Loads and Stores
3.8.7 Constraints on Long (40-Bit) Data
3.8.8 Constraints on Register Reads
3.8.9 Constraints on Register Writes
3.8.10 Constraints on AMR Writes
3.8.11 Constraints on Multicycle NOPs
3.8.12 Constraints on Unitless Instructions
3.8.12.1 MFENCE Restrictions
3.8.12.2 SPLOOP Restrictions
3.8.12.3 BNOP ,n
3.8.12.4 DINT
3.8.12.5 IDLE
3.8.12.6 NOP n
3.8.12.7 RINT
3.8.12.8 SPKERNEL(R)
3.8.12.9 SPLOOP(D/W)
3.8.12.10 SPMASK(R)
3.8.12.11 SWE
3.8.12.12 SWENR
3.8.13 Constraints on Floating-Point Instructions
3.9 Addressing Modes
3.9.1 Linear Addressing Mode
3.9.1.1 LD and ST Instructions
3.9.1.2 ADDA and SUBA Instructions
3.9.2 Circular Addressing Mode
3.9.2.1 LD and ST Instructions
3.9.2.2 ADDA and SUBA Instructions
3.9.2.3 Circular Addressing Considerations with Nonaligned Memory
3.9.3 Syntax for Load/Store Address Generation
3.10 Compact Instructions on the CPU
3.10.1 Compact Instruction Overview
3.10.2 Header Word Format
3.10.2.1 Layout Field in Compact Header Word
3.10.2.2 Expansion Field in Compact Header Word
3.10.2.3 P-bit Field in Compact Header Word
3.10.3 Processing of Fetch Packets
3.10.4 Execute Packet Restrictions
3.10.5 Available Compact Instructions
3.11 Instruction Compatibility
Pipeline
5.1 Pipeline Operation Overview
5.1.1 Fetch
5.1.2 Decode
5.1.3 Execute
5.1.4 Pipeline Operation Summary
5.2 Pipeline Execution of Instruction Types
5.2.1 Single-Cycle Instructions
5.2.2 Two-Cycle Instructions and .M Unit Nonmultiply Operations
5.2.3 Store Instructions
5.2.4 Extended Multiply Instructions
5.2.5 Load Instructions
5.2.6 Branch Instructions
5.2.7 Two-Cycle DP Instructions
5.2.8 Three-Cycle Instructions
5.2.9 Four-Cycle Instructions
5.2.10 INTDP Instruction
5.2.11 Double-Precision (DP) Compare Instructions
5.2.12 ADDDP/SUBDP Instructions
5.2.13 MPYI Instruction
5.2.14 MPYID Instruction
5.2.15 MPYDP Instruction
5.2.16 MPYSPDP Instruction
5.2.17 MPYSP2DP Instruction
5.3 Functional Unit Constraints
5.3.1 .S-Unit Constraints
5.3.2 .M-Unit Constraints
5.3.3 L-Unit Constraints
5.3.4 D-Unit Instruction Constraints
5.4 Performance Considerations
5.4.1 Pipeline Operation With Multiple Execute Packets in a Fetch Packet
5.4.2 Multicycle NOPs
5.4.3 Memory Considerations
Interrupts
6.1 Overview
6.1.1 Types of Interrupts and Signals Used
6.1.1.1 Reset (RESET)
6.1.1.2 Nonmaskable Interrupt (NMI)
6.1.1.3 Maskable Interrupts (INT4-INT15)
6.1.1.4 Interrupt Service Table (IST)
6.1.1.5 Interrupt Service Fetch Packet (ISFP)
6.1.1.6 Interrupt Service Table Pointer (ISTP)
6.1.2 Summary of Interrupt Control Registers
6.2 Globally Enabling and Disabling Interrupts
6.3 Individual Interrupt Control
6.3.1 Enabling and Disabling Interrupts
6.3.2 Status of Interrupts
6.3.3 Setting and Clearing Interrupts
6.3.4 Returning From Interrupt Servicing
6.3.4.1 CPU State After RESET
6.3.4.2 Returning From Nonmaskable Interrupts
6.3.4.3 Returning From Maskable Interrupts
6.4 Interrupt Detection and Processing
6.4.1 Setting the Nonreset Interrupt Flag
6.4.1.1 Detection of Missed Interrupts
6.4.2 Conditions for Processing a Nonreset Interrupt
6.4.3 Saving TSR Context in Nonreset Interrupt Processing
6.4.4 Actions Taken During Nonreset Interrupt Processing
6.4.5 Conditions for Processing a Nonmaskable Interrupt
6.4.6 Saving of Context in Nonmaskable Interrupt Processing
6.4.7 Actions Taken During Nonmaskable Interrupt Processing
6.4.8 Setting the RESET Interrupt Flag
6.4.9 Actions Taken During RESET Interrupt Processing
6.5 Performance Considerations
6.5.1 General Performance
6.5.2 Pipeline Interaction
6.6 Programming Considerations
6.6.1 Single Assignment Programming
6.6.2 Nested Interrupts
6.6.3 Manual Interrupt Processing (polling)
6.6.4 Traps
CPU Exceptions
7.1 Overview
7.1.1 Types of Exceptions and Signals Used
7.1.1.1 Reset (RESET)
7.1.1.2 Nonmaskable Interrupt (NMI)
7.1.1.3 Exception (EXCEP)
7.1.1.4 Internal Exceptions
7.1.1.5 Exception Acknowledgment
7.1.2 Exception Service Vector
7.1.3 Summary of Exception Control Registers
7.2 Exception Control
7.2.1 Enabling and Disabling External Exceptions
7.2.2 Pending Exceptions
7.2.3 Exception Event Context Saving
7.2.4 Returning From Exception Servicing
7.3 Exception Detection and Processing
7.3.1 Setting the Exception Pending Flag
7.3.2 Conditions for Processing an External Exception
7.3.3 Actions Taken During External Exception (EXCEP) Processing
7.3.4 Nested Exceptions
7.4 Performance Considerations
7.4.1 General Performance
7.4.2 Pipeline Interaction
7.5 Programming Considerations
7.5.1 Internal Exceptions
7.5.2 Internal Exception Report Register (IERR)
7.5.3 Software Exception
7.5.3.1 SWE Instruction
7.5.3.2 SWENR Instruction
Software Pipelined Loop (SPLOOP) Buffer
8.1 Software Pipelining
8.2 Software Pipelining
8.3 Terminology
8.4 SPLOOP Hardware Support
8.4.1 Loop Buffer
8.4.2 Loop Buffer Count Register (LBC)
8.4.3 Inner Loop Count Register (ILC)
8.4.4 Reload Inner Loop Count Register (RILC)
8.4.5 Task State Register (TSR), Interrupt Task State Register (ITSR), and NMI/Exception Task State Register (NTSR)
8.5 SPLOOP-Related Instructions
8.5.1 SPLOOP, SPLOOPD, and SPLOOPW Instructions
8.5.1.1 SPLOOP Instruction
8.5.1.2 SPLOOPD Instruction
8.5.1.3 SPLOOPW Instruction
8.5.2 SPKERNEL and SPKERNELR Instructions
8.5.2.1 SPKERNEL Instruction
8.5.2.2 SPKERNELR Instruction
8.5.3 SPMASK and SPMASKR Instructions
8.6 Basic SPLOOP Example
8.6.1 Some Points About the Basic SPLOOP Example
8.6.2 Same Example Using the SPLOOPW Instruction
8.6.3 Some Points About the SPLOOPW Example
8.7 Loop Buffer
8.7.1 Software Pipeline Execution From the Loop Buffer
8.7.2 Stage Boundary Terminology
8.7.3 Loop Buffer Operation
8.7.3.1 Interrupt During SPLOOP Operation
8.7.3.2 Loop Buffer Active or Idle
8.7.3.3 Loading Instructions into the Loop Buffer
8.7.3.4 Fetching (Dispatching) Instructions from the Loop Buffer
8.7.3.5 Disabling (Draining) Instructions in the Loop Buffer
8.7.3.6 Enabling (Reloading) Instructions in the Loop Buffer
8.8 Execution Patterns
8.8.1 Prolog, Kernel, and Epilog Execution Patterns
8.8.2 Early-Exit Execution Pattern
8.8.3 Reload Execution Pattern
8.9 Loop Buffer Control Using the Unconditional SPLOOP(D) Instruction
8.9.1 Initial Termination Condition Test and ILC Decrement
8.9.2 Stage Boundary Termination Condition Test and ILC Decrement
8.9.3 Using SPLOOPD for Loops with Known Minimum Iteration Counts
8.9.4 Program Memory Fetch Enable Delay During Epilog
8.9.5 Stage Boundary and SPKERNEL(R) Position
8.9.6 Loop Buffer Reload
8.9.6.1 Reload Start
8.9.6.2 Resetting ILC With RILC
8.9.6.3 Program Memory Fetch Disable During Reload
8.9.6.4 Restrictions on Interruptible Loops that Reload
8.9.6.5 Restrictions on Reload Enforced by the Assembler
8.9.7 Restrictions on Accessing ILC and RILC
8.10 Loop Buffer Control Using the SPLOOPW Instruction
8.10.1 Initial Termination Condition Using the SPLOOPW Condition
8.10.2 Stage Boundary Termination Condition Using the SPLOOPW Condition
8.10.3 Interrupting the Loop Buffer When Using SPLOOPW
8.10.4 Under-Execution of Early Stages of SPLOOPW When Termination Condition Becomes True While Interrupt Draining
8.11 Using the SPMASK Instruction
8.11.1 Using SPMASK to Merge Setup Code Example
8.11.2 Some Points About the SPMASK to Merge Setup Code Example
8.11.3 Using SPMASK to Merge Reset Code Example
8.11.4 Some Points About the SPMASK to Merge Reset Code Example
8.11.5 Returning from an Interrupt
8.12 Program Memory Fetch Control
8.12.1 Program Memory Fetch Disable
8.12.2 Program Memory Fetch Enable
8.13 Interrupts
8.13.1 Interrupting the Loop Buffer
8.13.2 Returning to an SPLOOP(D/W) After an Interrupt
8.13.3 Exceptions
8.13.4 Branch to Interrupt, Pipe-Down Sequence
8.13.5 Return from Interrupt, Pipe-Up Sequence
8.13.6 Disabling Interrupts During Loop Buffer Operation
8.14 Branch Instructions
8.15 Instruction Resource Conflicts and SPMASK Operation
8.15.1 Program Memory and Loop Buffer Resource Conflicts
8.15.2 Restrictions on Stall Detection Within SPLOOP Operation
8.16 Restrictions on Crosspath Stalls
8.17 Restrictions on AMR-Related Stalls
8.18 Restrictions on Instructions Placed in the Loop Buffer
CPU Privilege
9.1 Overview
9.2 Execution Modes
9.2.1 Privilege Mode After Reset
9.2.2 Execution Mode Transitions
9.2.3 Supervisor Mode
9.2.4 User Mode
9.2.4.1 Restricted Control Register Access in User Mode
9.2.4.2 Partially Restricted Control Register Access in User Mode
9.2.4.3 Restricted Instruction Execution in User Mode
9.3 Interrupts and Exception Handling
9.3.1 Inhibiting Interrupts in User Mode
9.3.2 Privilege and Interrupts
9.3.3 Privilege and Exceptions
9.3.4 Privilege and Memory Protection
9.4 Operating System Entry
9.4.1 Entering User Mode from Supervisor Mode
9.4.2 Entering Supervisor Mode from User Mode
Instruction Compatibility
Mapping Between Instruction and Functional Unit
.D Unit Instructions and Opcode Maps
C.1 Instructions Executing in the .D Functional Unit
C.2 Opcode Map Symbols and Meanings
C.3 32-Bit Opcode Maps
C.4 16-Bit Opcode Maps
.L Unit Instructions and Opcode Maps
D.1 Instructions Executing in the .L Functional Unit
D.2 Opcode Map Symbols and Meanings
D.3 32-Bit Opcode Maps
D.4 16-Bit Opcode Maps
.M Unit Instructions and Opcode Maps
E.1 Instructions Executing in the .M Functional Unit
E.2 Opcode Map Symbols and Meanings
E.3 32-Bit Opcode Maps
E.4 16-Bit Opcode Maps
.S Unit Instructions and Opcode Maps
F.1 Instructions Executing in the .S Functional Unit
F.2 Opcode Map Symbols and Meanings
F.3 32-Bit Opcode Maps
F.4 16-Bit Opcode Maps
.D, .L, or .S Unit Opcode Maps
G.1 Opcode Map Symbols and Meanings
G.2 32-Bit Opcode Maps
G.3 16-Bit Opcode Maps
No Unit Specified Instructions and Opcode Maps
H.1 Instructions Executing With No Unit Specified
H.2 Opcode Map Symbols and Meanings
H.3 32-Bit Opcode Maps
H.4 16-Bit Opcode Maps
TMS320C66x DSP CPU and Instruction Set Reference Guide Literature Number: SPRUGH7 November 2010
Release History www.ti.com Release Date November 2010 Chapter/Topic All Description/Comments Initial release based on TMS320C674x CPU and Instruction Set Reference Guide (SPRUFE8) ø-ii TMS320C66x DSP CPU and Instruction Set Reference Guide SPRUGH7—November 2010 Submit Documentation Feedback
www.ti.com Contents Chapter 1 Chapter 2 Contents Release History. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ø-ii List of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ø-xvii List of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ø-xx List of Examples. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .ø-xxiv ø-xxv Preface About This Manual. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .ø-xxv Notational Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .ø-xxv Related Documentation from Texas Instruments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ø-xxvi Trademarks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ø-xxvi 1-1 Introduction 1.1 DSP Features and Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2 1.1.1 4x Multiply. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3 1.1.2 Floating point support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3 1.1.3 Vector Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3 1.1.4 Complex arithmetic and matrix operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4 1.2 DSP Architecture. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-5 1.2.1 Central Processing Unit (CPU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6 1.2.2 Internal Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6 1.2.3 Memory and Peripheral Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6 2-1 CPU Data Paths and Control 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-2 2.2 General-Purpose Register Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3 2.3 Functional Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-5 2.4 Register File Cross Paths. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6 2.5 Memory, Load, and Store Paths. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6 2.6 Data Address Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 2.7 Galois Field . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 2.7.1 Special Timing Considerations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-9 2.8 Control Register File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-10 2.8.1 Register Addresses for Accessing the Control Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-11 2.8.2 Pipeline/Timing of Control Register Accesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-11 2.8.3 Addressing Mode Register (AMR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-12 2.8.4 Control Status Register (CSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-15 2.8.5 Galois Field Polynomial Generator Function Register (GFPGFR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-17 2.8.6 Interrupt Clear Register (ICR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-18 2.8.7 Interrupt Enable Register (IER) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-19 2.8.8 Interrupt Flag Register (IFR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-20 2.8.9 Interrupt Return Pointer Register (IRP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-20 2.8.10 Interrupt Set Register (ISR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-21 2.8.11 Interrupt Service Table Pointer Register (ISTP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-22 2.8.12 Nonmaskable Interrupt (NMI) Return Pointer Register (NRP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-23 2.8.13 E1 Phase Program Counter (PCE1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-23 2.9 Control Register File Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-24 2.9.1 DSP Core Number Register (DNUM). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-24 2.9.2 Exception Clear Register (ECR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-24 2.9.3 Exception Flag Register (EFR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-25 SPRUGH7—November 2010 Submit Documentation Feedback TMS320C66x DSP CPU and Instruction Set Reference Guide ø-iii
Contents Chapter 3 www.ti.com 2.9.4 GMPY Polynomial—A Side Register (GPLYA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-25 2.9.5 GMPY Polynomial—B Side Register (GPLYB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-26 2.9.6 Internal Exception Report Register (IERR). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-27 2.9.7 SPLOOP Inner Loop Count Register (ILC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-28 2.9.8 Interrupt Task State Register (ITSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-28 2.9.9 NMI/Exception Task State Register (NTSR). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-29 2.9.10 Restricted Entry Point Register (REP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-29 2.9.11 SPLOOP Reload Inner Loop Count Register (RILC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-30 2.9.12 Saturation Status Register (SSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-30 2.9.13 Time Stamp Counter Registers (TSCL and TSCH) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-31 2.9.13.1 Initialization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-31 2.9.13.2 Enabling Counting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-31 Disabling Counting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-32 2.9.13.3 2.9.13.4 Reading the Counter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-32 2.9.14 Task State Register (TSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-33 2.10 Control Register File Extensions for Floating-Point Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-34 2.10.1 Floating-Point Adder Configuration Register (FADCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-35 2.10.2 Floating-Point Auxiliary Configuration Register (FAUCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-37 2.10.3 Floating-Point Multiplier Configuration Register (FMCR). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-40 3-1 Instruction Set 3.1 Instruction Operation and Execution Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-2 3.2 Instruction Syntax and Opcode Notations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4 3.2.1 32-Bit Opcode Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5 3.2.2 16-Bit Opcode Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-5 3.3 Overview of IEEE Standard Single- and Double-Precision Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6 3.3.1 Single-Precision Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7 3.3.2 Double-Precision Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8 3.4 Delay Slots. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9 3.5 Parallel Operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-11 3.5.1 Example Parallel Code. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-13 3.5.2 Branching Into the Middle of an Execute Packet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-13 3.6 Conditional Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-14 3.7 SPMASKed Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-15 3.8 Resource Constraints. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-15 3.8.1 Constraints on Instructions Using the Same Functional Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-15 3.8.2 Constraints on the Same Functional Unit Writing in the Same Instruction Cycle . . . . . . . . . . . . . . . . . . . . . .3-15 3.8.3 Constraints on Cross Paths (1X and 2X) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-16 3.8.3.1 Maximum Number of Accesses to a Register on the Opposite Register File . . . . . . . . . . . . . . . . . . . .3-16 3.8.4 Cross Path Sharing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-16 3.8.5 Cross Path Stalls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-17 3.8.6 Constraints on Loads and Stores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-17 3.8.7 Constraints on Long (40-Bit) Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-18 3.8.8 Constraints on Register Reads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-18 3.8.9 Constraints on Register Writes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-18 3.8.10 Constraints on AMR Writes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-19 3.8.11 Constraints on Multicycle NOPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-19 3.8.12 Constraints on Unitless Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-19 3.8.12.1 MFENCE Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-19 3.8.12.2 SPLOOP Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-20 3.8.12.3 BNOP ,n. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-20 3.8.12.4 DINT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-20 3.8.12.5 IDLE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-21 3.8.12.6 NOP n . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-21 3.8.12.7 RINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-21 3.8.12.8 SPKERNEL(R) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-22 ø-iv TMS320C66x DSP CPU and Instruction Set Reference Guide SPRUGH7—November 2010 Submit Documentation Feedback
www.ti.com Contents Chapter 4 3.8.12.9 SPLOOP(D/W). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-22 3.8.12.10 SPMASK(R). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-22 3.8.12.11 SWE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-22 3.8.12.12 SWENR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-23 3.8.13 Constraints on Floating-Point Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-23 3.9 Addressing Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-24 3.9.1 Linear Addressing Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-25 3.9.1.1 LD and ST Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-25 3.9.1.2 ADDA and SUBA Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-25 3.9.2 Circular Addressing Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-25 3.9.2.1 LD and ST Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-25 3.9.2.2 ADDA and SUBA Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-26 3.9.2.3 Circular Addressing Considerations with Nonaligned Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-26 3.9.3 Syntax for Load/Store Address Generation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-27 3.10 Compact Instructions on the CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-29 3.10.1 Compact Instruction Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-29 3.10.2 Header Word Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-30 3.10.2.1 Layout Field in Compact Header Word. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-30 3.10.2.2 Expansion Field in Compact Header Word . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-31 3.10.2.3 P-bit Field in Compact Header Word . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-32 3.10.3 Processing of Fetch Packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-33 3.10.4 Execute Packet Restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-33 3.10.5 Available Compact Instructions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-34 3.11 Instruction Compatibility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-35 4-1 Instruction Descriptions 4.1 Example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2 4.2 ABS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4 4.3 ABS2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7 4.4 ABSDP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-9 4.5 ABSSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-11 4.6 ADD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-13 4.7 ADDAB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-18 4.8 ADDAD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-21 4.9 ADDAH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-23 4.10 ADDAW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-27 4.11 ADDDP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-30 4.12 ADDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-32 4.13 ADDKPC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-33 4.14 ADDSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-35 4.15 ADDSUB. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-37 4.16 ADDSUB2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-39 4.17 ADDU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-41 4.18 ADD2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-43 4.19 ADD4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-46 4.20 AND. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-49 4.21 ANDN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-51 4.22 AVG2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-54 4.23 AVGU4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-56 4.24 B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-58 4.25 B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-60 4.26 B IRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-62 4.27 B NRP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-64 4.28 BDEC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-66 SPRUGH7—November 2010 Submit Documentation Feedback TMS320C66x DSP CPU and Instruction Set Reference Guide ø-v
Contents www.ti.com 4.29 BITC4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-68 4.30 BITR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-70 4.31 BNOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-72 4.32 BNOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-75 4.33 BPOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-78 4.34 CALLP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-80 4.35 CCMATMPY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-82 4.36 CCMATMPYR1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-85 4.37 CCMPY32R1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-87 4.38 CLR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-90 4.39 CMATMPY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-93 4.40 CMATMPYR1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-95 4.41 CMPEQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4-97 4.42 CMPEQ2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-100 4.43 CMPEQ4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-103 4.44 CMPEQDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-106 4.45 CMPEQSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-108 4.46 CMPGT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-110 4.47 CMPGT2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-113 4.48 CMPGTDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-116 4.49 CMPGTSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-118 4.50 CMPGTU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-120 4.51 CMPGTU4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-123 4.52 CMPLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-126 4.53 CMPLT2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-129 4.54 CMPLTDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-131 4.55 CMPLTSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-133 4.56 CMPLTU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-135 4.57 CMPLTU4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-138 4.58 CMPY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-141 4.59 CMPY32R1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-143 4.60 CMPYR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-146 4.61 CMPYR1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-149 4.62 CMPYSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-152 4.63 CROT270 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-155 4.64 CROT90 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-156 4.65 DADD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-157 4.66 DADD2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-159 4.67 DADDSP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-161 4.68 DAPYS2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-163 4.69 DAVG2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-165 4.70 DAVGNR2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-167 4.71 DAVGNRU4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-169 4.72 DAVGU4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-171 4.73 DCCMPY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-173 4.74 DCCMPYR1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-174 4.75 DCMPEQ2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-177 4.76 DCMPEQ4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-179 4.77 DCMPGT2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-181 4.78 DCMPGTU4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-183 4.79 DCMPY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-185 4.80 DCMPYR1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-186 4.81 DCROT270 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-188 4.82 DCROT90. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-189 ø-vi TMS320C66x DSP CPU and Instruction Set Reference Guide SPRUGH7—November 2010 Submit Documentation Feedback
www.ti.com Contents 4.83 DDOTP4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-190 4.84 DDOTP4H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-192 4.85 DDOTPH2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-194 4.86 DDOTPH2R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-197 4.87 DDOTPL2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-199 4.88 DDOTPL2R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-202 4.89 DDOTPSU4H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-204 4.90 DEAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-206 4.91 DINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-208 4.92 DINTHSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-209 4.93 DINTHSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-211 4.94 DINTHSPU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-212 4.95 DINTSPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-214 4.96 DMAX2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-215 4.97 DMAXU4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-217 4.98 DMIN2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-219 4.99 DMINU4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-221 4.100 DMPY2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-223 4.101 DMPYSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-225 4.102 DMPYSU4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-230 4.103 DMPYU2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-231 4.104 DMPYU4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-233 4.105 DMV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-234 4.106 DMVD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-236 4.107 DOTP2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-237 4.108 DOTP4H. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-241 4.109 DOTPN2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-243 4.110 DOTPNRSU2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-245 4.111 DOTPNRUS2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-248 4.112 DOTPRSU2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-250 4.113 DOTPRUS2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-253 4.114 DOTPSU4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-255 4.115 DOTPSU4H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-257 4.116 DOTPUS4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-259 4.117 DOTPU4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-260 4.118 DPACK2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-262 4.119 DPACKH2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-264 4.120 DPACKH4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-266 4.121 DPACKHL2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-267 4.122 DPACKL2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-269 4.123 DPACKL4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-271 4.124 DPACKLH2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-272 4.125 DPACKLH4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-274 4.126 DPACKX2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-275 4.127 DPINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-277 4.128 DPSP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-279 4.129 DPTRUNC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-281 4.130 DSADD. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-283 4.131 DSADD2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-285 4.132 DSHL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-287 4.133 DSHL2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-289 4.134 DSHR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-291 4.135 DSHR2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-293 4.136 DSHRU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-295 SPRUGH7—November 2010 Submit Documentation Feedback TMS320C66x DSP CPU and Instruction Set Reference Guide ø-vii
Contents www.ti.com 4.137 DSHRU2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-297 4.138 DSMPY2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-299 4.139 DSPACKU4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-303 4.140 DSPINT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-305 4.141 DSPINTH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-307 4.142 DSSUB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-309 4.143 DSSUB2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-311 4.144 DSUB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-313 4.145 DSUB2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-315 4.146 DSUBSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-317 4.147 DXPND2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-320 4.148 DXPND4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-322 4.149 EXT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-324 4.150 EXTU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-327 4.151 FADDDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-330 4.152 FADDSP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-334 4.153 FMPYDP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-337 4.154 FSUBDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-339 4.155 FSUBSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-340 4.156 GMPY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-342 4.157 GMPY4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-344 4.158 IDLE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-347 4.159 INTDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-348 4.160 INTDPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-350 4.161 INTSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-352 4.162 INTSPU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-354 4.163 LAND . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-356 4.164 LANDN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-357 4.165 LDB(U) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-358 4.166 LDB(U) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-362 4.167 LDDW. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-364 4.168 LDH(U) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-369 4.169 LDH(U) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-372 4.170 LDNDW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-374 4.171 LDNW. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-378 4.172 LDW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-381 4.173 LDW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-385 4.174 LMBD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-387 4.175 LOR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-389 4.176 MAX2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-390 4.177 MAXU4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-393 4.178 MFENCE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-395 4.179 MIN2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-397 4.180 MINU4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-400 4.181 MPY. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-402 4.182 MPY2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-404 4.183 MPY2IR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-406 4.184 MPY32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-408 4.185 MPY32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-409 4.186 MPY32SU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-410 4.187 MPY32U. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-411 4.188 MPY32US . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-412 4.189 MPYDP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-413 4.190 MPYH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-415 ø-viii TMS320C66x DSP CPU and Instruction Set Reference Guide SPRUGH7—November 2010 Submit Documentation Feedback
分享到:
收藏