
ADSP-21020 
  | Table III. Universal Registers  | 
  | 
  | 
Name | Function | 
Register File  | 
  | 
Register file locations  | |
Program Sequencer  | |
PC*  | Program counter; address of instruction cur-  | 
  | rently executing  | 
PCSTK  | Top of PC stack  | 
PCSTKP  | PC stack pointer  | 
FADDR*  | Fetch address  | 
DADDR*  | Decode address  | 
LADDR  | Loop termination address, code; top of loop  | 
  | address stack  | 
CURLCNTR  | Current loop counter; top of loop count stack  | 
LCNTR | Loop count for next nested   | 
  | loop  | 
Data Address Generators  | |
DAG1 index registers  | |
DAG1 modify registers  | |
DAG1 length registers  | |
DAG1 base registers  | |
DAG2 index registers  | |
DAG2 modify registers  | |
DAG2 length registers  | |
DAG2 base registers  | |
Bus Exchange  | 
  | 
PX1  | |
PX2  | |
PX  | |
Timer  | 
  | 
TPERIOD  | Timer period  | 
TCOUNT  | Timer counter  | 
Memory Interface  | 
  | 
DMWAIT  | Wait state and page size control for data  | 
  | memory  | 
DMBANK1  | Data memory bank 1 upper boundary  | 
DMBANK2  | Data memory bank 2 upper boundary  | 
DMBANK3  | Data memory bank 3 upper boundary  | 
DMADR*  | Copy of last data memory address  | 
PMWAIT  | Wait state and page size control for program  | 
  | memory  | 
PMBANK1  | Program memory bank 1 upper boundary  | 
PMADR*  | Copy of last program memory address  | 
System Registers  | 
  | 
MODE1 | Mode control bits for   | 
  | isters, interrupt nesting and enable, ALU satu-  | 
  | ration,   | 
  | boundary  | 
MODE2 | Mode control bits for interrupt sensitivity,  | 
  | cache disable and freeze, timer enable, and I/O  | 
  | flag configuration  | 
IRPTL  | Interrupt latch  | 
IMASK  | Interrupt mask  | 
IMASKP  | Interrupt mask pointer (for nesting)  | 
ASTAT  | Arithmetic status flags, bit test, I/O flag values,  | 
  | and compare accumulator  | 
STKY | Sticky arithmetic status flags, circular buffer  | 
  | overflow flags, stack status flags (not sticky)  | 
USTAT1  | User status register l  | 
USTAT2 | User status register 2 | 
  | 
  | 
Refer to User’s Manual for 
Table IV. ALU Compute Operations
 | 
 | 
  | 
  | 
Rn = Rx + Ry  | Fn = Fx + Fy  | 
Rn = Rx – Ry  | Fn = Fx – Fy  | 
Rn = Rx + Ry, Rm = Rx – Ry  | Fn = Fx + Fy, Fm = Fx – Fy  | 
Rn = Rx + Ry + CI  | Fn = ABS (Fx + Fy)  | 
Rn = Rx – Ry + CI – l  | Fn = ABS (Fx – Fy)  | 
Rn = (Rx + Ry)/2  | Fn = (Fx + Fy)/2  | 
COMP(Rx, Ry)  | COMP(Fx, Fy)  | 
Rn =   | Fn =   | 
Rn = ABS Rx  | Fn = ABS Fx  | 
Rn = PASS Rx  | Fn = PASS Fx  | 
Rn = MIN(Rx, Ry)  | Fn = MIN(Fx, Fy)  | 
Rn = MAX(Rx, Ry)  | Fn = MAX(Fx, Fy)  | 
Rn = CLIP Rx BY Ry  | Fn = CLIP Fx BY Fy  | 
Rn = Rx + CI  | Fn = RND Fx  | 
Rn = Rx + CI – 1  | Fn = SCALB Fx BY Ry  | 
Rn = Rx + l  | Rn = MANT Fx  | 
Rn = Rx – l  | Rn = LOGB Fx  | 
Rn = Rx AND Ry  | Rn = FIX Fx BY Ry  | 
Rn = Rx OR Ry  | Rn = FIX Fx  | 
Rn = Rx XOR Ry  | Fn = FLOAT Rx BY Ry  | 
Rn = NOT Rx  | Fn = FLOAT Rx  | 
  | Fn = RECIPS Fx  | 
  | Fn = RSQRTS Fx  | 
  | Fn = Fx COPYSIGN Fy  | 
  | 
  | 
Rn, Rx, Ry 
Fn, Fx, Fy 
REV. C |