background image

Information Manual

DSP1611/17/18/27/28/29 DIGITAL SIGNAL PROCESSOR

April 1998

Instruction Set

Lucent Technologies Inc.

DRAFT COPY  

4-9

4.4 Processor Flags

Control and special function instructions can be conditionally executed on the basis of internal flags set by the fol-
lowing conditions:

A previous ALU operation

A previous BMU operation

A previous special function instruction

The condition of one of the counters

The value of a randomly set bit

A test by the BIO port

An interrupt from the JTAG port

Functional operations on the accumulators set the flags as described above. Loading the accumulators with data 
move instructions or multiply/ALU transfer statements does not set flags.

Four of the basic processor flags are defined below. They can be set by either ALU or BMU operations. These 
flags and their meanings are given below:

LMI

Logical Minus—A logical minus is determined by the state of bit 35 of the accumulator after the last DAU or 
BMU operation result. If bit 35 = 1, the result is a negative number and LMI is true.

LEQ

Logical Equal—A logical equal is determined by testing bits 35—0 of the last DAU or BMU operation 
result. If these bits are all zero, the result is zero and LEQ is true.

LLV

Logical Overflow (36-bit Overflow)—LLV is true if the sign of the result of an operation cannot be repre-
sented in a 36-bit accumulator.

LMV

Mathematical Overflow (32-bit Overflow)—LMV is true if bit 31 of the accumulator differs from any of the 
guard bits (32—35) after the last DAU or BMU operation. This indicates a number not representable in 
32 bits.

Содержание DSP1611

Страница 1: ...Shan Xi Road Shanghai 200233 P R China Tel 86 21 6440 0468 ext 316 FAX 86 21 6440 0652 JAPAN Microelectronics Group Lucent Technologies Japan Ltd 7 18 Higashi Gotanda 2 chome Shinagawa ku Tokyo 141 Ja...

Страница 2: ...is a registered trademark of The Institute of Electrical and Electronics Engineers Inc Intel is a registered trademark of Intel Corporation Motorola is a registered trademark of Motorola Inc MS DOS an...

Страница 3: ...ls are also available to aid in developing soft ware and integrating the devices into systems Additional information on the digital signal processor product line is available in the form of manuals da...

Страница 4: ...iew 2 16 2 2 1 Data Arithmetic Unit 2 16 2 2 2 Y Space Address Arithmetic Unit YAAU 2 17 2 2 3 X Space Address Arithmetic Unit XAAU 2 18 2 2 4 Cache 2 18 2 2 5 Control 2 18 2 3 Internal Memories 2 19...

Страница 5: ...f the alf Register 3 56 3 6 5 Power Management Sequencing 3 57 3 6 6 Power Management Examples 3 58 4 Instruction Set 4 1 4 1 Notation 4 2 4 2 Instruction Cycle Timing 4 2 4 3 Addressing Modes 4 3 4 3...

Страница 6: ...Delayed Enable 6 23 6 4 8 Write Read with Delayed Enable 6 24 6 5 Boot Up from External ROM 6 25 6 6 Memory Sequencer 6 26 6 7 Downloading Code into External Program Memory 6 28 7 Serial I O 7 1 7 1...

Страница 7: ...rammer Interface 9 8 9 2 1 phifc Register Settings 9 8 9 2 2 Power Management 9 10 9 3 Interrupts and the PHIF 9 10 9 4 PHIF Pin Multiplexing 9 11 9 5 Overall Functional Timing 9 12 10 Bit I O Unit 10...

Страница 8: ...traction 13 5 13 2 5 Insertion 13 6 13 2 6 Shuffle Accumulators 13 8 13 2 7 Instruction Encoding 13 9 13 2 8 Software Example 13 10 14 Error Correction Coprocessor DSP1618 28 Only 14 1 14 1 System Des...

Страница 9: ...rogrammable Options 15 14 15 4 1 Input Clock Options 15 14 15 4 2 ROM Security Options DSP1617 18 27 28 29 Only 15 14 15 5 Additional Electrical Characteristics and Requirements for Crystal 15 15 A In...

Страница 10: ...B 40 aD aS OP aT B 42 aD aS OP p B 43 aD aS h l OP IM16 B 44 aD a SHIFT aS B 46 aD aS SHIFT arM B 47 aD aS SHIFT IM16 B 48 aD exp aS B 49 aD norm aS arM B 50 aD extracts aS arM B 51 aD extractz aS arM...

Страница 11: ...of a Simple Interrupt 3 33 Figure 3 11 Interrupt Disable Latency 3 35 Figure 3 12 Interrupt Request Circuit Diagram 3 36 Figure 3 13 Timing Diagram of Concurrent Interrupts 3 37 Figure 3 14 Timing Di...

Страница 12: ...611 17 18 27 28 29 to Lucent Technologies CSP1027 Codec Interface 7 13 Figure 7 10 DSP1611 17 18 27 28 29 to Lucent Technologies T7525 Codec Interface 7 13 Figure 7 11 Multiprocessor Connections 7 15...

Страница 13: ...igure 11 7 Bidirectional Cell 11 14 Figure 11 8 Cell Interconnections for a Bidirectional Pin 11 15 Figure 11 9 The Device Identification Register JIDR 11 16 Figure 12 1 Timer Block Diagram 12 1 Figur...

Страница 14: ...ory Map X Memory Space 3 16 Table 3 15 DSP1628x16 Instruction Coefficient Memory Map X Memory Space 3 17 Table 3 16 DSP1629x10 Instruction Coefficient Memory Map X Memory Space 3 18 Table 3 17 DSP1629...

Страница 15: ...emory Map X Memory Space 6 4 Table 6 3 DSP1618 Instruction Coefficient Memory Map X Memory Space 6 4 Table 6 4 DSP1618x24 Instruction Coefficient Memory Map X Memory Space 6 5 Table 6 5 DSP1627 Instru...

Страница 16: ...at 3b BMU Operations 13 9 Table 14 1 Incremental Branch Metrics 14 4 Table 14 2 ECCP Instruction Encoding 14 9 Table 14 3 Reset State of ECCP Registers 14 9 Table 14 4 Memory Mapped Registers 14 10 Ta...

Страница 17: ...Lucent Technologies Inc xvii Table A 17 X Field A 10 Table A 18 Y Field A 10 Table A 19 Z Field A 10 Table B 1 CON Field Encoding B 3 Table B 2 R Field Replacement Values B 8...

Страница 18: ...Chapter 1 Introduction...

Страница 19: ...al Description 1 2 1 1 1 Architecture 1 2 1 1 2 Instruction Set 1 3 1 2 Typical Applications 1 3 1 3 Application Support 1 4 1 3 1 Support Software Library 1 4 1 3 2 Hardware Development System 1 4 1...

Страница 20: ...internal ROM and internal dual port RAM configurations Dual serial I O ports with multiprocessor capability 16 bit data channel 8 bit protocol channel 8 bit parallel interface 8 bit control I O inter...

Страница 21: ...se use of the cache eliminates a memory access for instruction fetches Two addressing units support high speed register indirect memory addressing with postincrementing of the regis ter Four address p...

Страница 22: ...timal matching to system requirements several options for low voltage power supply and clock speeds are available See the latest data sheet for the current offerings 1 1 2 Instruction Set The DSP1611...

Страница 23: ...e code into object code in a standard format COFF that is then processed by the linker The assembler contains a preprocessor similar to the C preprocessor and pro vides the features of a full macro as...

Страница 24: ...executed at full speed The emulation is performed with the actual DSP located on the user s board and not one separated from it by a performance limiting cable Program development with breakpointing...

Страница 25: ...ses Chapter 5 Core Architecture A detailed description of the DSP1600 core architecture Chapter 6 External Memory Interface A description of the EMI port including functional timing Chapter 7 Serial I...

Страница 26: ...ruction set and interfacing requirements DSP1611 DSP1617 DSP1618 DSP1627 DSP1628 and DSP1629 Digital Signal Processor data sheets provide up to date timing requirements and specifications electrical c...

Страница 27: ...Chapter 2 Hardware Architecture...

Страница 28: ...Space Address Arithmetic Unit YAAU 2 17 2 2 3 X Space Address Arithmetic Unit XAAU 2 18 2 2 4 Cache 2 18 2 2 5 Control 2 18 2 3 Internal Memories 2 19 2 4 External Memory Interface EMI 2 19 2 5 Bit M...

Страница 29: ...e Y memory space Each memory space has a corresponding address arithmetic unit In the instruction coefficient memory space the program addressing unit XAAU places addresses on the program address bus...

Страница 30: ...tween the RAM and the DAU It could alter natively have been addressing the ROM to transfer fixed coefficients to the DAU The data addressing unit YAAU is addressing another bank of the dual port RAM B...

Страница 31: ...ion pointed to by the address in the pt register and postincrement the address p x y means multiply the data in registers x and y and put the result in register p a0 a0 p means add the value in p to t...

Страница 32: ...ough external pins only 5 4142 a Figure 2 3 DSP1611 Block Diagram TDO TCK TMS M U X DSP1600 CORE RWN EXM DSEL EROM ERAMHI AB 15 0 DB 15 0 I O VEC 3 0 OR IOBIT 7 4 DO2 OR PSEL1 OLD2 OR PODS OCK2 OR PSE...

Страница 33: ...BE2 OR POBE SYNC2 OR PSEL0 ICK2 OR PB0 ILD2 OR PIDS DI2 OR PB1 IBF2 OR PIBF DOEN2 OR PB2 SADD2 OR PB3 IOBIT 3 0 OR PB 7 4 CKI CKI2 CKO RSTB STOP TRAP INT 1 0 IACK DI1 ICK1 ILD1 IBF1 DO1 OCK1 OLD1 OBE1...

Страница 34: ...7 4 DO2 OR PSEL1 OLD2 OR PODS OCK2 OR PSEL2 OBE2 OR POBE SYNC2 OR PSEL0 ICK2 OR PB0 ILD2 OR PIDS DI2 OR PB1 IBF2 OR PIBF DOEN2 OR PB2 SADD2 OR PB3 IOBIT 3 0 OR PB 7 4 CKI CKI2 CKO RSTB STOP TRAP INT...

Страница 35: ...OBIT 7 4 DO2 OR PSEL1 OLD2 OR PODS OCK2 OR PSEL2 OBE2 OR POBE SYNC2 OR PSEL0 ICK2 OR PB0 ILD2 OR PIDS DI2 OR PB1 IBF2 OR PIBF DOEN2 OR PB2 SADD2 OR PB3 IOBIT 3 0 OR PB 7 4 CKI CKI2 CKO RSTB STOP TRAP...

Страница 36: ...I O VEC 3 0 OR IOBIT 7 4 DO2 OR PSTAT OLD2 OR PODS OCK2 OR PCSN OBE2 OR POBE SYNC2 OR PBSEL ICK2 OR PB0 ILD2 OR PIDS DI2 OR PB1 IBF2 OR PIBF DOEN2 OR PB2 SADD2 OR PB3 IOBIT 3 0 OR PB 7 4 CKI CKI2 CKO...

Страница 37: ...O VEC 3 0 OR IOBIT 7 4 DO2 OR PSTAT OLD2 OR PODS OCK2 OR PCSN OBE2 OR POBE SYNC2 OR PBSEL ICK2 OR PB0 ILD2 OR PIDS DI2 OR PB1 IBF2 OR PIBF DOEN2 OR PB2 SADD2 OR PB3 IOBIT 3 0 OR PB 7 4 CKI CKI2 CKO RS...

Страница 38: ...Configuration Register JTAG Standardized Test Port Defined in IEEE P1149 1 jtag 16 bit Serial Parallel Register pdx0 pdx7 IN Parallel I O Data Transmit Input Registers 0 7 pdx0 pdx7 OUT Parallel I O...

Страница 39: ...me division Multiplex Signal Control Registers TIMER Programmable Timer timer0 Time Running Count Register timerc Timer Control Register TRACE Program Discontinuity XAB Program Space Address Bus XDB P...

Страница 40: ...ternal ROM internal dual port RAM or external ROM can be addressed There are 2 16 65 536 addresses in each of the two memory spaces the total address space for each is divided into seg ments and each...

Страница 41: ...nitiated to carry out the transfer The data transfer is performed first It is important to note that the selection of physical memory within a memory space is automatic because it only depends on choi...

Страница 42: ...nternal Pipeline Instruction Cycle CKO Level XAB XDB AAU DECODE DAU DECODE YAB YDB 1 1 xaddr1 instr0 instr 1 yaddr 1 1 0 instr0 instr 1 data 2 2 1 xaddr2 instr1 instr0 yaddr0 2 0 instr1 instr0 data 1...

Страница 43: ...data0 4 1 xaddr3 coeff instr1 yaddr1w data1w 4 0 instr2 instr1 data1r 5 1 xaddr4 instr3 instr2 yaddr2 Instruction Cycle CKO Level Process Description 1 1 The program counter PC places xaddr1 on the ad...

Страница 44: ...point arithmetic and is usable as a multiply accumulate or ALU structure The DAU multiplier and adder operate in parallel requiring together one instruction cycle for their execution Microprocessor l...

Страница 45: ...or deselects clearing of the lower 16 bit word of the y register and accumulators when the upper word is written It selects or deselects saturation on overflow for the accumulators It selects one of...

Страница 46: ...device The cache can store up to 15 instructions at a time and can repeatedly cycle through those instructions up to 127 times without using user defined loop test and conditional branch instructions...

Страница 47: ...e the dual port RAM can be downloaded through the JTAG port This download capability is also useful for self test 2 4 External Memory Interface EMI The DSP1611 17 18 27 28 29 provides a 16 bit externa...

Страница 48: ...owing barrel shift operations are available arithmetic or logical shifts and left or right shifts The shift amount is from immediate data in the second word of the instruction from data in ar 0 3 or f...

Страница 49: ...to accept data on an inter rupt without disrupting its normal operation In addition there are two registers used to control and monitor the PIO s operation the parallel I O control pioc register and...

Страница 50: ...If data is serially shifted into the JTAG scan register it can be used to replace the real chip inputs and outputs Alternatively the real chip data on the pins can be parallel loaded into the scan reg...

Страница 51: ...d DSP1611 17 18 27 28 29 supplements 2 13 Clock Synthesis DSP1627 28 29 Only The DSP1627 28 29 includes an on chip clock synthesizer that can be used to generate the system clock for the DSP The clock...

Страница 52: ...Chapter 3 Software Architecture...

Страница 53: ...of Interrupts 3 31 3 4 4 Interrupt Operation 3 32 3 4 5 Trap Description 3 38 3 4 6 Powerdown with the AWAIT State 3 40 3 4 7 Interrupts in DSP16A Compatible Mode DSP1617 Only 3 42 3 4 8 Timing Exampl...

Страница 54: ...or the functional operators Control and status used for setting different configurations of the machine control or indicating the configura tion of the machine status Addressing used for storing infor...

Страница 55: ...2 ar3 Auxiliary BMU registers data BMU auc Arithmetic unit control c s DAU c0 c1 c2 Counters data DAU cbit Control register for BIO c s data BIO cloop Cache loop count data Cache i Pointer postincreme...

Страница 56: ...dress address YAAU saddx 1 2 Multiprocessor protocol register address data SIO sbit Status register for BIO c s data BIO sdx 1 2 SIO 16 bit I O registers data SIO sioc 1 2 SIO control registers c s SI...

Страница 57: ...17 18 27 28 29 ioc mwait jtag JTAG BIO BMU DAU PIO CACHE CONTROL YAAU XAAU inc ins cloop alf pdx 0 7 IN pioc x y p a0 a1 auc psw c0 c1 c2 SIO sdx saddx srta tdms sioc TIMER timerc pdx 0 7 OUT CONTROL...

Страница 58: ...isters address HDS BYPASS Bypass the boundary scan register 1 bit data JTAG ID Identification register 32 bits data JTAG ISR Input shift register data SIO JCON JTAG configuration register 17 bits c s...

Страница 59: ...000000 psw 00 ar0 pt ar1 r0 ar2 r1 ar3 r2 auc 0000000000000000 r3 c0 rb 0000000000000000 c1 re 0000000000000000 c2 saddx cbit saddx2 cloop 000000000 sbit 00000000PPPPPPPP i sdx inc 0000000000000000 sd...

Страница 60: ...domly set or a cleared bit The bit is randomly set with probability of 0 5 The random bit is generated by a 10 stage pseudorandom sequence generator PSG that is updated after either a heads or tails t...

Страница 61: ...nd as long as the banks accessed are different simultaneous data and instruction accesses can be made If the same bank is accessed from both memory spaces simultaneously an extra instruction cycle one...

Страница 62: ...C00 0x0FFF RAM4 RAM4 RAM4 RAM4 RAM4 RAM4 RAM4 4096 0x1000 0x13FF RAM5 Reserved RAM5 RAM5 RAM5 RAM5 RAM5 5120 0x1400 0x17FF RAM6 RAM6 RAM6 RAM6 RAM6 RAM6 6144 0x1800 0x1BFF RAM7 Reserved RAM7 RAM7 RAM7...

Страница 63: ...memories is automatic corresponding to the address in the XAAU and the memory map selected Each physical memory device has a corresponding address space but unlike the YAAU the relationship between th...

Страница 64: ...e user selected map is restored at the end of the HDS trap service routine LOWPR is an alf register bit The Lucent Technologies development system tools can independently set the memory map MAP2 EXM 1...

Страница 65: ...12K 16384 0x4000 0x5FFF IROM 24K EROM 48K 24576 0x6000 0x7FFF Reserved 8K 32768 0x8000 0x9FFF EROM 16K 40960 0xA000 0xBFFF Reserved 8K 49152 0xC000 0xCFFF RAM 1 4 4K RAM 1 4 4K EROM 16K 53248 65535 0x...

Страница 66: ...S trap service routine LOWPR is an alf register bit The Lucent Technologies development system tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if...

Страница 67: ...gies development system tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if secure mask programmable option is selected MAP4 EXM 1 LOWPR 1 0 0x000...

Страница 68: ...Lucent Technologies development system tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if secure mask programmable option is selected MAP4 EXM 1...

Страница 69: ...an alf register bit The Lucent Technologies development system tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if secure mask programmable optio...

Страница 70: ...rvice routine LOWPR is an alf register bit The Lucent Technologies development system tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if secure m...

Страница 71: ...ter bit The Lucent Technologies development system tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if secure mask programmable option is selected...

Страница 72: ...rvice routine LOWPR is an alf register bit The Lucent Technologies development system tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if secure m...

Страница 73: ...RAM depending on the memory map in force Table 3 18 shows the vectors assigned to interrupts in the X memory space Table 3 18 Interrupts in X Memory Space Vector Description Vector Address Reset vecto...

Страница 74: ...0 determine the bit alignment of the data in p with respect to the data in the accumulators The connection of the data bus to the p register the RAM the accumulators and the remaining registers in the...

Страница 75: ...Value Description RAND 0 1 Pseudorandom sequence generator PSG is reset by writing the pi register only outside an interrupt service routine PSG never reset by writing the pi register X Y 0 1 Normal o...

Страница 76: ...the p register is not shifted with respect to the bits in the accumulator before product bits 31 0 are transferred into bits 31 0 of the accumulator In the accumulator the sign bit from the p registe...

Страница 77: ...e right with respect to the bits in the accu mulator as product bits 31 2 are transferred into bits 29 0 of the accumulator Bits p 1 0 are lost The sign of p bit 31 is extended by 6 bits into bits 35...

Страница 78: ...e x register are in Q14 for mat 2 magnitude bits 14 fractional bits and state variables in the y register are 16 bit integers If the p register is not shifted prior to accumulation the accumulated res...

Страница 79: ...in the x register are in Q15 format 1 magnitude bit 15 fractional bits and state variables in the y register are 16 bit integers If the p register is not shifted prior to accumulation the accumulated...

Страница 80: ...al of 13 interrupts and two traps see Table 3 20 Interrupt service routines cannot be interrupted Branch instructions conditional branch instructions postdecre ments of Y address registers and cache l...

Страница 81: ...ontinued 3 4 1 Introduction continued Figure 3 8 is a functional block diagram of the interrupt hardware 5 4115b Figure 3 8 Interrupt Operation JINT OBE2 IBF2 TIME INT 1 0 OFF CHIP PIDS PIBF PODS POBE...

Страница 82: ...can be enabled from inc POBE Parallel output buffer empty flag indicates that the parallel output data register has been read by an external device POBE can be enabled from inc INT 1 0 Interrupt by an...

Страница 83: ...1998 3 30 DRAFTCOPY Lucent Technologies Inc 3 4 Interrupts continued 3 4 2 Interrupt Sources continued 5 4146 Figure 3 9 DSP16A Compatible Interrupts DSP1617 Only PIDS PODS OBE IBF INTERRUPT PROCESSI...

Страница 84: ...multiplexed with pins IOBIT 7 4 Bit 12 of the ioc register must be cleared to enable VEC 3 0 Issued by Cleared By No interrupt 0x0 Software interrupt 0x2 1 lowest 0x1 icall The icall instruction is r...

Страница 85: ...decodes the vector address of the pending interrupt In the following cycle during time frame C the interrupt is acknowledged on the VEC and IACK pins The PC register is loaded with the next instructio...

Страница 86: ...pin is synchronized and latched in interrupt pending latch B Executing an interruptible instruction C Branch to interrupt routine D Start executing instructions in interrupt service routine E ireturn...

Страница 87: ...x clears PODS POBE Reading sdx clears IBF writing to sdx clears OBE see Section 8 3 Interrupts and the PIO for more detail The JTAG interrupt is cleared by reading the jtag register If the vec tored i...

Страница 88: ...The reference is the time at which instruction words are fetched on the XDB program data bus 5 4117 Figure 3 11 Interrupt Disable Latency The interrupt pins are latched on the falling edge of CKO The...

Страница 89: ...rrupt requests internal or external occur at the same time or pending interrupts are enabled at the same time and the device is not servicing any of the pending requests all the interrupts will be ser...

Страница 90: ...e interrupt is asserted again while the first interrupt request is being serviced 5 4118 CKO is a zero wait stated clock Notes A INT1 pin is synchronized and latched in interrupt pending latch B Execu...

Страница 91: ...nts the long interrupt response time is too slow to gain control of the pro cessor and remove the exception condition Therefore programming techniques such as breaking long cache loops into several sh...

Страница 92: ...TRAP pin is synchronized and latched in interrupt pending latch B A constant two cycle delay to allow a two cycle instruction to complete before entering into the trap service routine C Branch to trap...

Страница 93: ...WAIT bit is set one more instruction cycle is executed before entering the standby powerdown mode After an interrupt request wakes up the processor one more instruction cycle is executed before being...

Страница 94: ...COPY 3 41 3 4 Interrupts continued 3 4 6 Powerdown with the AWAIT State continued Code Example for Sleep Mode assuming execution from internal RAM sleep alf 0x8000 set bit 15 of alf register nop one m...

Страница 95: ...ad of the falling edge of CKO as in DSP16A However ORing VEC0 and VEC1 in the DSP16A compatible mode generates a signal equivalent to the DSP16A IACK signal The software interrupt icall branching to l...

Страница 96: ...e the DSP16A there is no need to hold the INT0 signal until the next rising edge of IACK If the IBF interrupt is recognized while servicing the external interrupt it is ser viced at the next interrupt...

Страница 97: ...its in pioc set INT0 in the pioc register is cleared when IACK goes low IBF is cleared upon reading of sdx Case 2 INT0 is asserted one clock cycle after IBF and latched internally at point B Interrupt...

Страница 98: ...nt A and IBF at point B Interrupt is caused by INT0 with both status bits in pioc set INT0 latch is negated when IACK goes high Case 2 IBF is asserted two clock cycles after INT0 and latched internall...

Страница 99: ...nal is negated at point B and asserted again at point C Because the previous INT0 is still pending the new INT0 must be asserted until the second rising edge of IACK Case 2 INT0 signal is negated at p...

Страница 100: ...ternal processor clocks and CKO Setting the appropriate bits in the pllc control register see Table 3 26 will enable the clock syn thesizer to become the clock source The powerc register which is disc...

Страница 101: ...e at least twice fCKI The coding of the Mbits and Nbits is described as follows Mbits M 2 if N 1 Nbits 0x7 else Nbits N 2 where N ranges from 1 to 8 and M ranges from 2 to 20 Program the loop filter b...

Страница 102: ...east 2x fCKI Change the bits in the pllc register only if the PLL is not providing the internal clock source To select the PLL as the internal clock 1 Program all bits in the pllc register to the desi...

Страница 103: ...flag assertion pllc 0xE912 Select high speed PLL clock 2 nop Switch to PLL latency goto start User s code now running at 50 MHz pllwait if lock return goto pllwait Section 3 6 6 Power Management Exam...

Страница 104: ...3 27 PLL Electrical Specifications and pllc Register Settings M VDD pllc13 ICP pllc12 SEL5V pllc 11 8 LF 3 0 Typical Lock in Time s See Note 2 23 24 2 7 V 3 6 V 1 0 1011 30 21 22 2 7 V 3 6 V 1 0 1010...

Страница 105: ...It is recom mended that if INT0EN is to be used the INT0 interrupt be disabled in the inc register so that an unintended interrupt does not occur After the program resumes the INT0 interrupt in the i...

Страница 106: ...units Table 3 28 powerc Fields DSP1617 Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 0 Field XTLOFF SLOWCKI NOCK INTOEN rsvd INT1EN rsvd SIO1DIS SIO2DIS PIODIS TIMERDIS rsvd Table 3 29 powerc Fields DSP1611 DSP...

Страница 107: ...nternal processor clock The switching of the multiplexers and the synchronous gate is designed to be clean in the sense that no partial clocks occur If the deep sleep state is entered with the ring os...

Страница 108: ...he switching of the multiplexers and the synchronous gate is designed to be clean in the sense that no partial clocks occur If the deep sleep state is entered with the ring oscillator selected the int...

Страница 109: ...CKI bit of powerc 3 6 4 AWAIT Bit of the alf Register Setting the AWAIT bit of the alf register causes the processor to go into the standard sleep state or power saving standby mode Operation of the A...

Страница 110: ...r start up interval to be satisfied A similar interval is required for the small signal input circuit to reach its dc operating point A minimum reset pulse of 20 ms is adequate The falling edge of the...

Страница 111: ...nop Only sleep power consumed here until interrupt wakes up the device next User code executes here powerc 0x0 Turn peripheral units back on Sleep with Slow Internal Clock1 In this case the ring oscil...

Страница 112: ...small signal is stable next powerc 0x00F0 Select high speed clock 2 nop Wait for it to take effect powerc 0x0000 Turn peripheral units back on Software Stop In this case all internal clocking is disab...

Страница 113: ...user chooses 6 Whether or not the PLL is enabled Power Management Examples with the PLL DSP1627 28 29 Only The following examples show the more significant options for reducing power dissipation if op...

Страница 114: ...ternal Clock and Crystal Oscillator Small Signal Disabled PLL Disabled If the target device contains the crystal oscillator or the small signal clock option the clock input circuitry can be powered do...

Страница 115: ...cks stop Minimum switching power consumed here 3 nop Some nops will be needed INT0 pin clears NOCK field clocking resumes cont powerc 0x4000 INTOEN cleared and XTLOFF cleared if applicable call xtlwai...

Страница 116: ...Chapter 4 Instruction Set...

Страница 117: ...4 3 4 3 2 Compound Addressing 4 5 4 3 3 Direct Data Addressing 4 7 4 4 Processor Flags 4 9 4 5 Instruction Set 4 11 4 5 1 Control Instructions 4 12 4 5 2 Cache Instructions 4 14 4 5 3 Data Move Instru...

Страница 118: ...basis of the state of internal flags Multiply ALU instructions are the primary instructions for signal processing programs that perform multiply accu mulate logical and other ALU functions They also...

Страница 119: ...f CON F2 F3 ALU instructions F4 BMU instructions The valid instruction groups for the DSP device are represented in Tables 4 1 to 4 17 The items in these tables that are written in lower case letters...

Страница 120: ...ound addressing one addressing reg ister points to a memory location or locations for a read followed by a write The instruction also specifies a register for the swap and the addressing register can...

Страница 121: ...M j The j following the address register indicates a postincrement of the address register This example means the data pointed to by the address in the register and add the value of register j to the...

Страница 122: ...mp used in the descriptions is a hypothetical register used for illustration only Note that postincrementation can occur after either Step 2 or Step 3 in Table 4 1 Note M can be 0 1 2 or 3 R can be on...

Страница 123: ...s pictorially 5 4148 j or k can be positive or negative Figure 4 1 Compound Addressing rMzp R INITIAL ADDRESS IN rM FINAL ADDRESS IN rM Y MEMORY Y ADDRESSING REGISTER rMpz R INITIAL ADDRESS IN rM FINA...

Страница 124: ...nts of rb If the contents of the address register are equal to the contents of re during the write cycle and the rMzp mode is specified rM is loaded with the contents of rb Two of the compound address...

Страница 125: ...1 bits of 0x1232 into ybase as follows Place 0001 0010 001 into the upper 11 bits of ybase 0x15 a0 Offset 0x15 Store 1 0101 into lower 5 bits of ybase Address in ybase is 0x1215 demonstrated below 000...

Страница 126: ...t set flags Four of the basic processor flags are defined below They can be set by either ALU or BMU operations These flags and their meanings are given below LMI Logical Minus A logical minus is dete...

Страница 127: ...est The pseudorandom sequence can be reset by writing any value to the pi register except during an interrupt service rou tine While in an interrupt service routine writing to the pi register will upd...

Страница 128: ...FSET DR push rM R R pop rM Special Function if CON F2 ifc CON F2 Multiply ALU F1 Y F1 Y a0 l F1 Y a1 l F1 x Y F1 y l Y F1 y Y F1 y a0 F1 y a1 F1 aT l Y F1 Y y l F1 Z y l F1 Z aT l F1 Z y F3 ALU aD aS...

Страница 129: ...Instructions Control instructions cannot be used in the cache Table 4 5 lists replacements for the upper case fields shown in this table Control Instruction Equivalent Instruction if applicable Encod...

Страница 130: ...ows branches to any location in the 64 Kword program space The goto pt instruction does not affect the program return register call pt The call pt instruction moves the contents of the PC into the pr...

Страница 131: ...value in cloop decrements every cache loop and is decremented to zero at the end of the do or redo instruction The cloop register will also contain the cache count from a do K or redo K instruction K...

Страница 132: ...ove instructions perform three basic operations moving immediate data to a register moving data between a register and an accumulator and moving data between a register and Y memory space All data mov...

Страница 133: ...egister unsigned XAAU increment register signed psw Processor status word sioc sdx tdms srta Serial I O control register Serial I O data register Serial I O tdms control register Serial receive transm...

Страница 134: ...rb re j k Subset of registers for short immediate aS aT a0 a1 High half of accumulator bits 31 16 aSl aTl a0l a1l Low half of accumulator bits 15 0 Y rM rM rM rM j Same as in multiply ALU instruction...

Страница 135: ...of the specified accumulator aS into the specified destination register R If saturation on overflow is enabled according to the SAT field of the auc register the transferred accumulator value is limi...

Страница 136: ...3 The result of the most recent accumulator or BMU operation prior to the special function instruction establishes the state of the flags for the conditions associated with logical or mathematical fun...

Страница 137: ...mulator aDh aSh 1 Increment high half of accumulator lower half cleared aD aS 1 Increment accumulator aD y aD p 32 bit transfer sign extend into guard bits 35 32 aD aS 1 aD aS 4 aD aS 8 aD aS 16 Arith...

Страница 138: ...aD aS 8 The contents of the source accumulator aS are shifted 8 bits left and the result is placed in the destination accumulator aD The sign bit is extended from the new bit 31 The least significant...

Страница 139: ...assembled by using statements from the function column that include the multiplication of the data in x and y bits 31 16 In a full multiply accumulate instruction the x and y registers are loaded wit...

Страница 140: ...struction is either nop or a single semicolon and is assembled as r0 Note that the function statements and transfer statements in Table 4 12 are chosen independently Any function statement can be comb...

Страница 141: ...0 A table of values pointed to by r1 can thus be squared in a pipeline with one instruction cycle per each value The following sample program demonstrates the use of the single cycle square a0 a0 a0 c...

Страница 142: ...ed from the contents of the source accumulator aS and the result is placed in the destination accumulator aD The bit alignment between p and aS is a func tion of the ALIGN field of the auc register Th...

Страница 143: ...loaded into the high half bits 31 16 of the y register The data from the specified X source is loaded into the x register If clearing of yl is enabled by using the CLR field of the auc register yl is...

Страница 144: ...a from the specified Z source is loaded into the low half bits 15 0 of the y register and the old data of the low half of the y register is loaded into the Z destination Data in the high half of the y...

Страница 145: ...umulator or the y regis ter Only one of the four possible postmodification conditions is shown rMpz The others are the same as in Sec tion 4 3 2 Compound Addressing Z aTl rMpz aTl INITIAL ADDRESS IN r...

Страница 146: ...d are two cycle If PC points to external memory add programmed wait states Table 4 15 F3 ALU Instructions Instruction Description aD aS OP aT Perform an operation between two accumulators and place th...

Страница 147: ...four 16 bit auxiliary registers ar 0 3 that contain input or output operands The BMU is fully described in Chapter 13 Bit Manipulation Unit BMU Instructions aD a SHIFT aS aD aS SHIFT arM aD aS SHIFT I...

Страница 148: ...e is negative the direction of the shift is reversed For these instructions flags are set based on the value written to aD For left shifts the LLV flag is set if any signif icant bits are lost from th...

Страница 149: ...laced in aD Flags are set based on the value written to aD Bit Field Extraction and Insertion aD extracts aS arM aD extractz aS arM An arbitrary selected sequence of contiguous bits in the 36 bit aS r...

Страница 150: ...original location to a new location determined by the OFFSET The remaining bits are filled with the corresponding bits from the other accumulator For example the instruction a0 insert a0 ar1 moves a b...

Страница 151: ...t operation in the BMU and can be used by the conditional instructions just like DAU flags LMI Logical Minus Bit 35 of the destination accumulator after the shift If bit 35 1 sign is negative and LMI...

Страница 152: ...in the auc register The type of instruction is critical if conditional testing based on the results of the instruction execution is performed The DSP1600 flags are affected by multiply ALU instruction...

Страница 153: ...us instructions that might need a mnemonic Table 4 18 Summary of Ambiguous DSP1600 Commands Requiring a Mnemonic j LABEL1 k LABEL1 rb LABEL1 re LABEL1 rM LABEL1 a1 a0 a0 a1 a0 rM a0l rM a1 rM a1l rM y...

Страница 154: ...Chapter 5 Core Architecture...

Страница 155: ...dom Sequence Generator PSG 5 7 5 1 7 Control Registers 5 9 5 2 X Address Arithmetic Unit XAAU 5 11 5 2 1 Inputs and Outputs 5 11 5 2 2 X Memory Space Segment Selection 5 11 5 2 3 Register Descriptions...

Страница 156: ...two 36 bit accumulators a0 and a1 The DAU performs two s complement fixed point arithmetic and has a complete set of multiply accumulate and ALU instructions The DAU multiplier and adder operate in p...

Страница 157: ...means either If auc bit 6 0 yl is cleared with a write to y If auc bit 6 1 yl is not cleared with a write to y Writing yl does not affect y The 32 bit p register provides a 36 bit input for ALU functi...

Страница 158: ...auc 3 1 saturation is disabled for a1 If auc 2 0 saturation is enabled for a0 If auc 2 1 saturation is disabled for a0 The overflow condition exists if the value in the 36 bit accumulator is too larg...

Страница 159: ...n 4 5 1 by referencing the conditional mnemonics described in Table 5 1 The DAU interprets 8 bit numbers stored in c0 c2 as two s complement numbers The most negative number maximum count stored is 27...

Страница 160: ...c1 1 4 initialize c1 to 1 4 3 innerloop instruction do operations in innerloop if c1lt goto innerloop repeat innerloop for c1 if c1 0 instruction go on more outerloop ops if c0lt goto outerloop repeat...

Страница 161: ...enting counter Increments by one whenever an instruction of the form if c0ge Instruction or if c0lt Instruction executes c1 General purpose incrementing counter Increments by one whenever an instructi...

Страница 162: ...If the heads or tails flags are tested within a subroutine and different arrays of random sequences are desired each time the subroutine is called the PSG should be reset only once in the main program...

Страница 163: ...m Sequence Generator PSG continued 5 4157 The PSG clock is pulsed whenever a heads or tails condition exists The PSG is set to all ones whenever the pi register is written outside of an interrupt serv...

Страница 164: ...w This can happen if any significant bits are lost after adding subtracting or shifting overflow numbers The psw register contains the status of two additional DAU flags LEQ and LMI The LEQ psw 14 bit...

Страница 165: ...Flags X a1 V a1 35 32 a0 V a0 35 32 Bit s Field Value W indicates that the bit can be read or written Result Description 15 12 DAU Flags All DAU flags can be read from the psw register The DAU flags a...

Страница 166: ...ed in Section 3 2 Memory Space and Addressing 5 4158 Figure 5 5 XAAU X Address Arithmetic Unit 5 2 1 Inputs and Outputs The outputs of the XAAU are the instruction coefficient address bus XAB and the...

Страница 167: ...ice routine ISR this shadowing is disabled and pi holds the last value of PC actually the address after the address of the last instruction executed before the interrupt was taken The return from inte...

Страница 168: ...e to the user and can be read or written under program control 5 4159 Figure 5 6 YAAU Y Address Arithmetic Unit 5 3 1 Inputs and Outputs The major output of the YAAU is the YAB that provides addresses...

Страница 169: ...selecting one of 16 registers e g r0 or a0 as the source or destination for the data move and 5 bits that form the offset part of the address see Section 4 3 2 Compound Addressing and Section 4 5 3 D...

Страница 170: ...ddressing is executed see Section 4 3 3 Direct Data Addressing the instruction contains 4 bits selecting one of 16 registers e g r0 or a0 as the source or destination for the data move and 5 bits that...

Страница 171: ...gister such as r1 contains an address that increments as the pointer advances through the memory If the pointer register address equals the address in re1 and the current instruction calls for a posti...

Страница 172: ...and provides decoding for registers outside of the DSP1600 core It stretches the processor cycle if wait states are required wait states can be programmed for external memory access via the mwait reg...

Страница 173: ...iterations K for a do or redo can be set at run time by first moving the number of iterations into the cloop register 7 bits unsigned and then issuing the do cloop or redo cloop instruction The cloop...

Страница 174: ...ins alf and mwait registers inc ins and alf are described in Tables 5 9 through 5 11 For further information refer to the sections listed in Table 5 6 Table 5 6 Control and Status Descriptions Regist...

Страница 175: ...eserved ebusy nmns1 mns1 evenp oddp somef somet allf allt Bit Flag Use 15 AWAIT Set to enter power saving standby mode or standard sleep mode 14 LOWPR Memory map selection 13 9 Reserved 8 ebusy ECCP b...

Страница 176: ...Chapter 6 External Memory Interface...

Страница 177: ...4 Timing Examples 6 17 6 4 1 CKO Timing 6 17 6 4 2 Write Read Read W 0 6 18 6 4 3 Read Write Write W 0 6 19 6 4 4 Read Write W 0 Compound Address 6 20 6 4 5 Read W 1 Read W 2 6 21 6 4 6 Write W 1 6 22...

Страница 178: ...not accessed and wait states allow the use of slow low power memories 6 1 EMI Function DSEL not available in the DSP1627 28 29 5 4126 b Figure 6 1 External Memory Interface Figure 6 1 shows the block...

Страница 179: ...es Outputs from the DSP The four leads EROM ERAMHI IO and ERAMLO are used to select one of the four external memory segments If an enable is low the segment associated with that enable is selected Add...

Страница 180: ...efficient Memory Map X Memory Space Decimal Address Address in pc pt pi pr MAP1 EXM 0 LOWPR 0 MAP1 is set automatically during an HDS trap The user selected map is restored at the end of the HDS trap...

Страница 181: ...FF IROM 24K EROM 48K 24576 0x6000 0x7FFF Reserved 8K 32768 0x8000 0x9FFF EROM 16K 40960 0xA000 0xBFFF Reserved 8K 49152 0xC000 0xCFFF RAM 1 4 4K RAM 1 4 4K EROM 16K 53248 65535 0xD000 0xFFFF Reserved...

Страница 182: ...LOWPR is an alf register bit The Lucent Technologies development system tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if the secure mask progr...

Страница 183: ...m tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if secure mask programmable option is selected MAP4 EXM 1 LOWPR 1 0 0x0000 0x0FFF IROM 36K EROM...

Страница 184: ...velopment system tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if secure mask programmable option is selected MAP4 EXM 1 LOWPR 1 0 0x0000 0x0FF...

Страница 185: ...he Lucent Technologies development system tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if secure mask programmable option is selected MAP4 EXM...

Страница 186: ...an alf register bit The Lucent Technologies development system tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if secure mask programmable optio...

Страница 187: ...chnologies development system tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if secure mask programmable option is selected MAP4 EXM 1 LOWPR 1 0...

Страница 188: ...s an alf register bit The Lucent Technologies development system tools can independently set the memory map MAP2 EXM 1 LOWPR 0 MAP3 EXM 0 LOWPR 1 MAP3 is not available if secure mask programmable opti...

Страница 189: ...ess Hexadecimal Address in r0 r1 r2 r3 DSP1611 DSP1617 1618 DSP1627 DSP1628 x08 DSP1628 x16 DSP1629 x10 DSP1629 x16 0 0x0000 0x03FF RAM1 RAM1 RAM1 RAM1 RAM1 RAM1 RAM1 1024 0x0400 0x07FF RAM2 RAM2 RAM2...

Страница 190: ...f the enable can be delayed to avoid a situation in which two devices can drive the data bus simultaneously Logic sense of DSEL Bit 6 in the ioc register selects the logic sense of the DSEL1 output If...

Страница 191: ...in The flexibility of the wait states in the DSP allows a wide range of memory speeds to be used 5 4161 Figure 6 2 EMI Example Table 6 14 CKO Options CKO2 CKO1 CKO0 CKO Output Description 1X CKI 2X CK...

Страница 192: ...e of instructions in a pro gram a read and a write cycle definition can be different For example all write instructions take two instruction cycles but the corresponding enable low time is one instruc...

Страница 193: ...ry enables goes low or the leading edge can be delayed one half a CKO period by programming a bit in the ioc Address bus becomes valid RWN goes low Midcycle CKO goes low for an odd number of wait stat...

Страница 194: ...rammable Features The free running CKO is the frequency of CKI divided by two 2x input clock option It will have a 50 duty cycle within the accuracy of the rise and fall times If wait states occur the...

Страница 195: ...because a read cycle follows immediately The external memory responds to the request for a read by placing data on the DB sometime before the end of the read cycle and the data is latched into the DSP...

Страница 196: ...during each cycle and remains valid until the next cycle starts The data bus DB is driven by data from the external memory during the read cycle During the first half of the write cycle the DSP 3 sta...

Страница 197: ...es to the write address at the beginning of the write cycle At some time in the read cycle the data bus DB is driven by the external memory to valid data that is latched into the DSP at the end of the...

Страница 198: ...the external memory will respond by 3 stating the data bus The EROM address remains valid until the next valid address is required Sometime later one CKO period in this example the next read cycle sta...

Страница 199: ...address is placed on the address bus the data bus is 3 stated by the DSP and RWN goes low Halfway through the write cycle in this case one CKO period later the data is placed on the data bus by the D...

Страница 200: ...tion coefficient memory had not yet released the bus a problem could be caused by both driving the bus At the least high currents would result To avoid this condition a bit is programmed in the ioc re...

Страница 201: ...f the data bus The delay is selected by programming a bit in the ioc register see Section 6 2 Programmable Features Another point of this example is to show that the DSP does not provide extra hold ti...

Страница 202: ...it register can be initialized with all the external memory segments having 15 wait states by setting the INT1 external pin low As the program executes it can reset the wait states to a more appro pri...

Страница 203: ...ion cycles number of cycles normal operation XWS YWS 1 where XWS X programmed wait states mwait register YWS Y programmed wait states mwait register The sample code segment illustrates the problem rse...

Страница 204: ...tion cycles used by the memory sequencer DSP1610 DSP1616 Users If on the DSP1610 or the DSP1616 an X and Y access to external memory is specified in the same instruction an interrupt called EMUXBOTH o...

Страница 205: ...384 to 65535 can be modified in this manner Locations 0 to 16383 in EROM space are still inaccessible Setting the EXTROM bit in conjunction with the WEROM bit in the ioc causes the processor to force...

Страница 206: ...rupt vector 0x34 pidsint Test which byte if c1lt goto byte1 byte0 Read in lower byte word Form the word a0 a0 a1 Write out to EROM r0 a01 Reset byte counter c1 1 Read the pointer a1 r0 XOR with zero a...

Страница 207: ...t the page counter r1 0x1 Set the byte counter c1 1 Wait for 64 Kwords to be downloaded into EROM space wait nop goto wait Stop if done stop goto stop The counter c1 is used as a byte marker because o...

Страница 208: ...Chapter 7 Serial I O...

Страница 209: ...ial I O Pin Descriptions 7 12 7 4 Codec Interface 7 13 7 5 Serial I O Programming Example 7 14 7 5 1 Program Segment 7 14 7 6 Multiprocessor Mode Description 7 15 7 6 1 Multiprocessor Mode Overview 7...

Страница 210: ...te addressing other DSP devices in multiprocessor mode The second SIO unit SIO2 is functionally identical to SIO1 The SIO2 pins are multiplexed with the PIO pins for the DSP1617 and with the PHIF pins...

Страница 211: ...oc or tdms register having a value of zero Five signals can be individually programmed to be either inputs or outputs passive or active ICK OCK ILD OLD and SYNC ICK and OCK are the input and output po...

Страница 212: ...CK and OCK and assumes that the CKO 2 mode has been selected All active mode transitions occur on the rising edge of CKO and all active mode outputs are square waves 50 duty cycle SYNC transi tions al...

Страница 213: ...field if the input shift register isr fills this data is transferred to the input buffer register sdx IN At this time the input buffer full IBF flag and signal are also asserted indicating that the b...

Страница 214: ...s an interrupting condition by setting the IBF interrupt enable bit in the inc register bit 0 for vectored interrupts These bits are cleared when sdx is read IBF is cleared on reset For the DSP1617 on...

Страница 215: ...action This procedure causes the contents of the output buffer register sdx out to be transferred to the output shift OSR register the OBE flag and signal to be set indi cating the need for more data...

Страница 216: ...the LD bit of the sioc register bit 9 must be set high to synchronize SADD with DO and the MODE bit of the tdms register bit 8 must be set low to turn off multiprocessor mode Under these conditions a...

Страница 217: ...8 bit word size selected via the sioc OLEN field bit 1 The overall pipelining between successive words is the same as for 16 bit mode Because the active mode ILD and OLD generators can only be set to...

Страница 218: ...6 5 4 3 2 1 0 Field LD CLK MSB OLD ILD OCK ICK OLEN ILEN Table 7 2 Serial I O Control sioc Register DSP1627 28 29 Only Bit 10 9 8 7 6 5 4 3 2 1 0 Field DODLY LD CLK MSB OLD ILD OCK ICK OLEN ILEN Table...

Страница 219: ...read or write occurs the MSB field can be switched immediately before after or both before and after an sdx read or write If this technique is used in other than an interrupt ser vice routine care sh...

Страница 220: ...to sdx the output buffer poll to see when the output buffer empties poll to see if the input buffer is full and read from sdx The input buffer full flag or the output buffer empty flag can also be us...

Страница 221: ...gister MODE field set DOEN indicates a valid time slot for a serial output and is bidirectional OCK I O Output Clock Clock for serial output data Corresponding to the sioc register OCK field in active...

Страница 222: ...ample OCK of the DSP is active and ICK ILD and OLD are passive The codec is in the nonmultiprocessor mode although it can be used in the multiprocessor mode In the second example both input and output...

Страница 223: ...d and the process repeats 7 5 1 Program Segment Programming Examples Ping pong I O routine for DSP1617 goto start 0x2c intrpt r0 sdx ireturn start auc 0x0 pioc 0x200 interrupt on IBF sioc 0x0 passive...

Страница 224: ...e system The SIO ports SIO1 and SIO2 can be individually configured for multipro cessor mode Figure 7 11 shows how the DSPs are connected together over a four wire bus All of the DSPs have access to t...

Страница 225: ...mitted serially on ADD at the same time as the first 8 bits of the data Figure 7 12 illustrates this concept 5 4182 Figure 7 12 Destination Address Communication The receiving DSP might need to know w...

Страница 226: ...e connected together to form a four wire bus as shown in Figure 7 14 The DI and DO pins form a single wire data bus referred to as DATA ICK and OCK form a clock line referred to as CK SADD forms a sin...

Страница 227: ...in Figure 7 15 The ILD output clocks with every time slot to read in each word of address and data and the OLD output clocks only on those time slots during which the DSP in question actually drives...

Страница 228: ...7 16 Multiprocessor Mode Output Timing Whenever a DSP drives the bus in some time slot the address of the destination DSP s is sent out on the ADD line concurrent with the transmission of the first 8...

Страница 229: ...he destination DSP s along with the data and can be used for any desired purpose For example the top 3 bits of the saddx value is sufficient to encode a source ID for each source DSP up to eight maxim...

Страница 230: ...changed it is imperative that each processor still have its own unique time slot All new time slots are updated at the end of each time slot 0 refer to Figure 7 15 During reset the tdms register clea...

Страница 231: ...t can transmit to device 3 and receive address 7 The serial data register sdx of device 7 contains the data to be transmitted During time slot 0 the data from device 7 is transmitted on the TDM channe...

Страница 232: ...Figure 7 17 DSP1611 17 18 27 28 29 Multiprocessor Communications srta 0x2000 r1 sdx 7 6 5 4 3 2 1 0 0 1 2 4 3 5 6 7 TIME SLOT NUMBER tdms 0x120 srta 0x01FE sdx r1 srta 0x0200 a0 sdx srta 0x0400 a0 sdx...

Страница 233: ...ly be set up to drive time slot 0 because this device will also drive SYN If SYN is to be externally generated no DSP device should ever drive time slot 0 because this would cause a conflict on the SY...

Страница 234: ...errupts srta 0xNNNN set srta to desired transmit receive values and continue with program Different DSPs need to drive different time slots Each DSP can drive more than one if desired The number of no...

Страница 235: ...the SIO2 that differentiate it from the SIO1 the user should refer Section 7 1 SIO Operation for the features that are the same 7 7 1 SIO2 Features The SIO2 block is identical to SIO1 from a function...

Страница 236: ...input output MSB first or LSB first Both input and output data formats can be independently configured See Table 7 3 on page 9 for the values that are encoded in each field Additional programmable reg...

Страница 237: ...Chapter 8 Parallel I O DSP1617 Only...

Страница 238: ...nteraccess Timing 8 5 8 1 3 Passive Mode 8 6 8 1 4 Peripheral Mode Host Interface 8 9 8 2 Programmer Interface 8 14 8 2 1 pioc Register Settings 8 16 8 2 2 Latent Reads 8 17 8 2 3 Power Management 8 1...

Страница 239: ...hysical PIO port there are eight logical PIO ports pdx0 through pdx7 In active mode the state of the peripheral select pins PSEL 2 0 shows which logical port is selected The data path of the PIO is co...

Страница 240: ...pins PSEL 2 0 are outputs of the DSP that indicate which of the eight channels are being accessed If either input or output is passive some of these pins become inputs and serve different purposes see...

Страница 241: ...s for the data has been selected One half a CKO cycle later PIDS is pulled low signaling that an external device can place data on the parallel data bus PB The duration of PIDS is configurable in the...

Страница 242: ...of the pdx channels e g pdx0 r2 If an active mode output occurs PSEL 2 0 are asserted to indicate which of eight possible external devices will be the destination One half a CKO cycle later the DSP p...

Страница 243: ...DSP drives PODS and PIDS and the DSP and external device alternate in driving the PB Figure 8 4 shows the timing of mixed active mode inputs and outputs See Section 8 1 1 Active Mode for specific des...

Страница 244: ...t is placed in passive mode Table 8 2 shows the effects of various modes on the PSEL 2 0 bits Table 8 5 shows the complete encoding for PSEL 2 0 as outputs 000 corresponding to port pdx0 etc If passiv...

Страница 245: ...O an external device must first pull the PSEL2 pin low Then the passive mode input transaction shown in Figure 8 5 can be initiated by the external device asserting PIDS It must then place data onto t...

Страница 246: ...this time If the PIO s status is sought the external device should drive this input high If the contents of the pdx OUT register are sought PSEL1 should be driven low Then the passive mode output tra...

Страница 247: ...and POBE are flags that indicate parallel input buffer full and parallel output buffer empty They are both active high The input flag works if PIDS is in passive mode and is cleared otherwise The outp...

Страница 248: ...active mode input otherwise the input is in passive mode There is no need to present the same information about PODS because PSTAT can only be read during a pas sive mode output PIBF If set the paral...

Страница 249: ...O If the flags are being monitored this can be in response to PIBF or PSEL0 going low The external device then drives PIDS low It must then place the data on the PB and leave it there until after PIDS...

Страница 250: ...external device then drives PODS low If data is being requested as is the case below PSEL1 must be driven low at this time Shortly after PODS is asserted the PIO drives data onto the PB Shortly after...

Страница 251: ...er Polling the PSTAT register see Figure 8 10 is identical to a passive or peripheral mode output The main differ ence is the PSEL1 pin must be held high while PODS is asserted No flags are affected P...

Страница 252: ...ng the device nine PIO registers can be referenced pioc PIO control register pdx0 Logical port 0 pdx1 Logical port 1 pdx2 Logical port 2 pdx3 Logical port 3 pdx4 Logical port 4 pdx5 Logical port 5 pdx...

Страница 253: ...scription IBF R IBF interrupt status bit same as bit 4 STROBE 00 01 10 11 Strobe width of PODS PIDS T T 2T 2T 3T 3T 4T 4T T 1 CKO clock period PODS 0 1 PODS is an input passive mode PODS is an output...

Страница 254: ...bit 12 of the pioc register is equal to logic 0 the PODS pin is an input used by external devices to request the DSP to write Bit 11 if equal to logic 1 makes the PIDS pin an output accordingly the DS...

Страница 255: ...reads the first word d0 from the parallel input register and initiates the transaction to bring the second word d1 from the external device 3 The third instruction reads the second word d1 from the p...

Страница 256: ...2 Latent Reads continued 5 4196 Figure 8 11 PIO Latent Reads Hardware 5 4197 a Figure 8 12 PIO Latent Reads Timing PIO STROBES PIDS EXTERNAL DEVICE PB 8 pdx IN IDB 16 DSP1617 CKO PSEL 2 0 PIDS PB VAL...

Страница 257: ...pt routine the DSP program performs I O functions The receipt of data and the conclusion of the interrupt service routine by the DSP is indicated to the external data source by the falling edge high t...

Страница 258: ...DSP reading from the PIO registers to clear pioc 2 does not cause an external read transaction to take place PODS pioc 1 indicates that an external device has read from the DSP s PIO register Writing...

Страница 259: ...PIDS is an output When PIDS is driven low data can be placed onto the PB bus When PIDS goes high data should be removed from the PB bus PIDS is asserted by the DSP during active mode read transaction...

Страница 260: ...Section 8 2 2 Latent Reads When the PIOLB bit is set the PIO is configured for loopback the PB pins are 3 stated and an internal connec tion is made between pdx OUT and pdx IN Both PODS and PIDS are 3...

Страница 261: ...Chapter 9 Parallel Host Interface PHIF DSP1611 18 27 28 29 Only...

Страница 262: ...Bit Read 9 3 9 1 2 Intel Mode 16 Bit Write 9 4 9 1 3 Motorola Mode 16 Bit Read 9 5 9 1 4 Motorola Mode 16 Bit Write 9 6 9 1 5 8 Bit Transfers 9 7 9 1 6 Accessing the PSTAT Register 9 7 9 2 Programmer...

Страница 263: ...9 1 shows the DSP PHIF unit at the block level The data path of the PHIF is comprised of a 16 bit input buffer pdx0 IN and a 16 bit output buffer pdx0 OUT Two DSP interrupts indicate the status of th...

Страница 264: ...the output data strobe with respect to the DSP In Motorola mode PIDS is renamed PRWN parallel read write not and selects between a read and a write PODS is renamed PDS and becomes the data strobe for...

Страница 265: ...low so the low byte from the pdx0 OUT register is placed on PB If PODS is driven high by the external device the data is latched externally and the DSP can again 3 state the PB The timing of this acti...

Страница 266: ...is transferred to the low byte of the pdx0 IN register If PIDS is driven high by the external device the data is latched by the DSP The timing of this action is controlled by PIDS or PCSN whichever g...

Страница 267: ...he two goes low last PBSEL byte select is low so the low byte from the pdx0 OUT register is placed on PB If PDS is driven high by the external device the data is latched externally and the DSP can aga...

Страница 268: ...w last PBSEL byte select is low so the data is transferred to the low byte of the pdx0 IN register If PODS PDS is driven high by the external device the data is latched by the DSP The timing of this a...

Страница 269: ...state of pdx0 IN pdx0 OUT and the flags are unaffected and no internal interrupt is generated Table 9 1 describes the PSTAT register The functional timing sequence for polling the PSTAT register is th...

Страница 270: ...red resulting in the following default configuration PHIF always enabled PBSEL internally tied to zero Intel protocol 8 bit transfers pdx0 low byte selected or PSTAT selected if PSTAT pin is asserted...

Страница 271: ...tes PSTRB This field defines PDS Motorola mode as active high or active low PBSELF PBSELF determines whether a one on the PBSEL byte select pin corresponds to a high byte or to a low byte PFLAG PFLAG...

Страница 272: ...rrupt request the IACK interrupt acknowledge signal is asserted and the interrupt service routine is started When the interrupt routine is completed by reading or writing pdx0 IACK is negated becomes...

Страница 273: ...n interrupt during the next instruction After this instruction has executed the interrupts are disabled Therefore to protect an instruction sequence from interrupts follow the command to mask the PIBF...

Страница 274: ...x0 OUT is emptied It is assumed that POBE is enabled in the inc register and no other interrupts are pending These actions occur during the time intervals labelled on the timing diagram A The POBE int...

Страница 275: ...Chapter 10 Bit I O Unit...

Страница 276: ...dware Function 10 1 10 1 1 BIO Configured as Inputs 10 2 10 1 2 BIO Configured as Outputs 10 2 10 1 3 Pin Descriptions 10 3 10 1 4 BIO Pin Multiplexing 10 4 10 2 Software View 10 4 10 2 1 Registers 10...

Страница 277: ...ribes the BIO hardware function and the software view including register encodings sample pro grams and pertinent instructions 10 1 BIO Hardware Function Figure 10 1 is the block diagram for the BIO E...

Страница 278: ...y are somef some bits false somet some bits true allf all bits false and allt all bits true 5 4199 Figure 10 2 BIO Configured as Inputs 10 1 2 BIO Configured as Outputs If the DIR field of sbit has se...

Страница 279: ...DSP has placed on the device pins If a BIO pin is switched from being an output to being an input and then back to being an output the pin remembers the previous output value 5 4203 Figure 10 3 BIO Co...

Страница 280: ...ven high 10 2 Software View The cbit and sbit registers the flags and the pertinent instructions make up the software view Figure 10 4 is a flow diagram showing the decisions made for each bit to dete...

Страница 281: ...xxxxxx IOBIT6 is an output input if 0 xx1xxxxx IOBIT5 is an output input if 0 xxx1xxxx IOBIT4 is an output input if 0 xxxx1xxx IOBIT3 is an output input if 0 xxxxx1xx IOBIT2 is an output input if 0 xx...

Страница 282: ...an accumulator or with immediate data They can be read to memory or to an accumu lator The flags that are set by the BIO are included in the general set of flags that are tested by the conditional bra...

Страница 283: ...are outputs bits 3 0 are inputs a0 sbit read current value in sbit register a0 a0h 0x000f mask off all but the 4 inputs a0 now holds the current value on BIO 3 0 cbit 0x0000 initialize BIO bits 7 4 to...

Страница 284: ...Chapter 11 JTAG Test Access Port...

Страница 285: ...n Register JIR 11 7 11 3 4 The Boundary Scan Register JBSR 11 8 11 3 5 The Bypass Register JBPR 11 16 11 3 6 The Device Identification Register JIDR 11 16 11 3 7 The JTAG Data Register jtag 11 19 11 3...

Страница 286: ...es and on chip support of the hardware development system on chip emulation The full description of the custom features is beyond the scope of this manual An overview of the JTAG architecture follows...

Страница 287: ...te machine that controls the operation of the test logic as defined by the standard The TMS input value sampled on the rising edge of TCK controls the state transi tions The state diagram underlying t...

Страница 288: ...serially Section 11 3 6 The Device Identification Register JIDR expands on the JIDR structure and function jtag Register jtag jtag is a 16 bit scannable data register used for communicating data or c...

Страница 289: ...n test clock in a board environment the slowest JTAG design determines the common clock frequency TMS is the test mode select input pin It controls test operations by determining the current state of...

Страница 290: ...he TAP controller and the instruction decoder A brief description of the TAP controller states follows Test Logic Reset The test logic is disabled while the controller is in this state so normal opera...

Страница 291: ...Figure 11 3 shows two independent actions occurring data parallel loaded into the test data register and shifted out on TDO and new data being shifted into the DSP test data register and then enabled...

Страница 292: ...between the JIR and the selected TDR depending on whether the TAP Controller is in an IR scan cycle or a DR scan cycle All four cells of JIR have the capability of loading the shift register stage fro...

Страница 293: ...the boundary scan register as specified by the standard All of the cells contain a parallel output stage that is updated on the falling edge of TCK New data will appear only in the update DR state un...

Страница 294: ...ols cell 86 48 B OCK1 85 B IOBIT1 PB5 49 B OLD1 86 B IOBIT2 PB6 50 DC Controls cell 49 87 B IOBIT3 PB7 51 DC Controls cell 53 88 B VEC3 IOBIT4 52 O DO1 89 B VEC2 IOBIT5 53 B SYNC1 90 DC Controls cell...

Страница 295: ...C Controls cell 87 50 O IBF1 87 B SADD2 PB3 51 I DI1 88 DC Controls cell 89 52 DC Controls cell 53 89 B IOBIT0 PB4 53 B ILD1 90 DC Controls cell 91 54 DC Controls cell 55 91 B IOBIT1 PB5 55 B ICK1 92...

Страница 296: ...R register The MODE signal is equal to one during EXTEST and INTEST and is equal to zero during SAMPLE and in the test logic reset state i e during normal device functions The CAPTURE SHIFT and UPDATE...

Страница 297: ...ry similar to the I type cells They consist of a shift register stage with parallel input load capability during the capture DR state and parallel load into the output stage during the update DR state...

Страница 298: ...AFTCOPY 11 13 11 3 Elements of the JTAG Test Logic continued 11 3 4 The Boundary Scan Register JBSR continued 5 4207 Figure 11 6 Cell Interconnections for a 3 State Pin OUTPUT PIN DI PO SO PIN OUTPUT...

Страница 299: ...e logic and the HOLI signal corresponds to the direction control signal from the device In this case the cell s output to the pin PO is tied to the corresponding signal from the device DO and the cell...

Страница 300: ...r cell types in mind Figure 11 6 and Figure 11 8 show cell interconnec tions for a 3 state output pin and for a bidirectional pin Note In the DSP1611 17 18 27 28 29 all output pins are 3 statable 5 42...

Страница 301: ...r scan cycle after powerup Those devices with an ID register will produce a 32 bit pattern starting with a one see the JIDR descrip tion below and those without an ID register will produce a single ze...

Страница 302: ...he shift DR state The following table summarizes the fields of JIDR for the DSP1617 18 27 28 29 only Table 11 5 JIDR Field Descriptions DSP1617 18 27 28 29 Bit 31 30 29 28 27 19 18 12 11 0 Field RESER...

Страница 303: ...1 only follows The Manufacturer Identity Field Bits 11 0 of the JIDR make up the manufacturer identity field containing a compressed form of the JEDEC standard manufacturer s identification code The a...

Страница 304: ...description of the individ ual JTAG instructions covered briefly in Section 11 2 Overview of the JTAG Instructions is presented Because the description of a JTAG instruction is intimately tied to the...

Страница 305: ...ated into the boundary scan register cells through the TAP Controller transitions capture DR exit1 DR and update DR while the SAMPLE instruction loads a safe pattern into the output stage of JBSR This...

Страница 306: ...Chapter 12 Timer...

Страница 307: ...1 Hardware View 12 1 12 2 Programmable Features and Operation 12 2 12 2 1 timerc Register Encoding 12 2 12 2 2 timer0 Register 12 3 12 2 3 The inc Register 12 3 12 2 4 Initialization Conditions 12 3...

Страница 308: ...the repeated operation Bit 6 DISABLE powers down the timer for reduced power in sleep mode Bit 4 in the powerc register TIMERDIS performs the same function i e powering down the timer Bit 7 can be re...

Страница 309: ...T0EN 0 Hold current count T0EN 1 Count toward zero Prescale Field Frequency of Interrupts CKO free running non wait stated clock Period at CKI 16 67 ns 60 MHz 2x Clock Period at CKI 25 ns 40 MHz 1x C...

Страница 310: ...12 2 2 timer0 Register The second register in the interrupt timer block is named timer0 Upon writing to this register both the timer itself and the optional reloadable period register are written with...

Страница 311: ...handler at INT5 vector start auc 0 perform initializations timer0 1250 interrupt every 1250 ticks of timer TCLK timerc 0x34 set input clock to CKO 32 1 25 MHz and enable RELOAD and timer0 counting in...

Страница 312: ...is if this instruction appears on the instruction data bus XDB Five instruction cycles CKO later the first count occurs when the counter decrements to one At time slot 9 it decrements to zero and the...

Страница 313: ...Chapter 13 Bit Manipulation Unit...

Страница 314: ...13 1 Hardware View 13 1 13 2 Software View 13 2 13 2 1 Instruction Set 13 2 13 2 2 Shifting Operations 13 2 13 2 3 Normalization 13 4 13 2 4 Extraction 13 5 13 2 5 Insertion 13 6 13 2 6 Shuffle Accum...

Страница 315: ...erations of the BMU They store a value that determines the amount of shift or the width and offset fields for bit extraction or insertion Alternately an immediate data word transferred over the IDB ca...

Страница 316: ...ource accumulator and the destination accumulator can be the same or different If the source and destination accumulators are different the source remains the same after the shift The amount of shift...

Страница 317: ...t bits 35 0 in the source accumulator are shifted to the right into the destination accumulator The open upper bits are filled in with the sign bit of the source accumulator 5 4134 Figure 13 4 Arithme...

Страница 318: ...n bits so shift left three times in order that the last sign bit ends up in the MSB position For the DSP the number E of redundant sign bits is found with respect to sign bit 31 If an overflow has occ...

Страница 319: ...of the LSB of the field which is the offset of the field Pictorially 5 4215 Figure 13 5 Extraction The instructions are as follows aD extracts aS IM16 Get field from immediate IM16 and sign extend Fo...

Страница 320: ...ruction however it is implied in Case 2 see page 7 In both cases the field width and offset are defined by an immediate data word or data in one of the arM registers Case 1 The source aS and destinati...

Страница 321: ...S 5 4135 Figure 13 7 Insertion Case 2 Source and Destination Accumulators Are the Same The instructions are as follows aD insert aS IM16 Get field from immediate IM16 and insert aD insert aS arM Get f...

Страница 322: ...the two alternate accumulators The contents of accumulator aD are replaced with the contents of alternate accumulator aaT and the contents of aaT are replaced with the contents of accumulator aS aD an...

Страница 323: ...14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Field T D S F4 3 1 0 F4 0 ar 3 0 Immediate Operand IM16 F4 ar Operation 0000 00xx aD aS arM 0001 00xx aD aS arM 0000 10xx aD aS arM 0001 10xx aD aS arM 1000 0000 aD...

Страница 324: ...cumulator a0 in the form 0 0 0 0 0 0 0 0 S n2 n1 n0 m3 m2 m1 m0 A previous routine _mulin for the DSP16 16A is found in the application library The comparison between the two routines is Routine Sourc...

Страница 325: ...Chapter 14 Error Correction Coprocessor DSP1618 28 Only...

Страница 326: ...equence 14 6 14 4 Operation of the ECCP 14 7 14 5 Software Architecture 14 8 14 5 1 R Field Registers 14 8 14 5 2 ECCP Internal Memory Mapped Registers 14 10 14 5 3 ECCP Interrupts and Flags 14 17 14...

Страница 327: ...by the contents of the address register After each edr access the contents of the address register is postincremented by one Upon writing an ECCP opcode to instruction register eir either MLSE equali...

Страница 328: ...de of the ECCP The symbol registers S0H0 S5H5 ZIG10 and ZQG32 the generating polynomial registers ZIG10 ZQG32 and G54 and the channel impulse registers S0H0 S5H5 are used as input to the ECCP for MLSE...

Страница 329: ...tate transitions is calculated as where and The absolute values of the difference signal are saturated at the level 0xFF The sixteen most significant bits of this 17 bit incremental branch metric are...

Страница 330: ...of the internal RAM RAM4 The accumulated cost of the path p at the Jth instant ACC J p is the sum of the incremental branch metrics belonging to the path p up to the time instant J The update unit co...

Страница 331: ...uction and it generates the EOVF interrupt if an overflow in the accumulated cost is imminent The EBUSY flag indicates if the ECCP is in operation 14 2 5 Traceback RAM As noted previously the fourth 1...

Страница 332: ...r convolve operation is performed and an invalid symbol is available The subsequent rows follow as shown 5 4501 Figure 14 2 DSP Core Operation Sequence EBUSY FALSE ECCP OFF LOAD ECCP EBUSY TRUE ECCP O...

Страница 333: ...on and finally unloading the decoded symbol from the ECCP The operation of the ECCP is captured in the signal flow diagram in Figure 14 3 5 4502 Figure 14 3 ECCP Operation Sequence DSP PROGRAMS ECCP D...

Страница 334: ...a from the internal register addressed by ear and increment ear by one count The DSP writes instructions directly to the eir register to start a particular operation of the ECCP 5 4503 Figure 14 4 Reg...

Страница 335: ...onics The UpdateMLSE instruction and the UpdateConv instruction each perform an appropriate branch metric calcula tion a complete Viterbi add compare select operation and a concurrent traceback decodi...

Страница 336: ...Bits 31 24 are zero Bits 23 16 are most significant byte of path cost 0x0280 0x03FF Reserved Bits 15 0 are addressed by odd address Bits 15 0 are lower 2 bytes of path cost 0x400 Current Symbol Pointe...

Страница 337: ...al decoding case Bits 7 0 are reserved Bits 15 8 are S0 MLSE equalization case Bits 7 0 are HQ0 Bits 15 8 are HI0 0x409 Decoded Symbol Register DSR Bits 7 0 are zero Bits 15 8 are decoded symbol 0x40A...

Страница 338: ...the control register set the constraint length for convolutional decoding or MLSE equalization For hard decision convolutional decoding constraint lengths from 2 to 7 are supported The hard decision...

Страница 339: ...1 MAN of the ECON regis ter Soft Decode Soft decode SD bit 0 of the control register selects one of two possible soft symbol definitions The soft decision data can be set to the coded surviving branch...

Страница 340: ...ank of the internal RAM RAM4 This pointer will be incremented after each UpdateMLSE and UpdateConv instruction It is a modulo 32 count for soft symbol decision and modulo 64 count pointer for hard sym...

Страница 341: ...cated at 0x200 0x27F Two consecutive addresses are allocated to access each of these 24 bit registers The even addresses starting with address zero will access bits 23 to 16 of an update field padded...

Страница 342: ...5 The symbol registers consist of six words at address locations 0x403 to 0x408 the contents of which are used for branch metric calculations For convolutional decoding the upper bytes of these six wo...

Страница 343: ...sed Two vectored interrupts are EREADY and EOVF These interrupts are maskable through the inc register and their status can be read or changed by using the ins register utilizing the DSP1600 interrupt...

Страница 344: ...length field of the ECON register Any user data or code in RAM4 must reside outside these address ranges 2 Access to RAM4 data and execution of code from RAM4 can be performed only during periods of E...

Страница 345: ...f instruction cycles is measured from the time when the eir register is written with the ECCP command to the time when the output data is ready in the edr register 14 6 1 ResetECCP Instruction The Res...

Страница 346: ...UpdateMLSE instruction CL has a maximum value of four corresponding to constraint length 6 For the UpdateMLSE instruction with soft decision the traceback length register can be programmed to a maxi...

Страница 347: ...lue programmed into the TBLR register Table 14 7 shows some representative values for the UpdateMLSE instruction cycles for different values of CL and TBLR For the UpdateMLSE instruction CL has a maxi...

Страница 348: ...ON register and TBLR is the traceback length value programmed into the TBLR register Table 14 8 shows some representative values for the UpdateConv instruction cycles with the soft decision mode selec...

Страница 349: ...each a maximum value of 63 with the hard decision decoding mode selected 14 6 6 TraceBack Instruction The length of the TraceBack instruction is only a function of the programmed traceback length and...

Страница 350: ...Chapter 15 Interface Guide...

Страница 351: ...ntrol I O Interface 15 9 15 2 5 Control I O Interface 15 11 15 2 6 JTAG Test Interface 15 11 15 3 Resetting DSP161X and DSP162X Devices 15 12 15 3 1 Powerup Reset 15 12 15 3 2 Using the TAP to Reset t...

Страница 352: ...est Clock Mask Programmable Input Clock Option TTL CMOS Small Signal Crystal Oscillator CMOS CKI I CKI CKI VIN XLO 10 pF capacitor to VSS CKI VDD CKI2 P or I VDD open VIN XHI 10 pF capacitor to VSS op...

Страница 353: ...st Mode Select TDI I JTAG Test Data Input TDO O JTAG Test Data Output DOEN1 I O SIO1 Data Output Enable SADD1 I O SIO1 Multiprocessor Address STOP I STOP Input Clock This pin is VDD in the x11 SYNC1 I...

Страница 354: ...F capacitor to VSS CKI CKI2 I VSSA VCM XHI 10 pF capacitor to VSS open VEC0 IOBIT7 I O Vectored Interrupt Indication 0 Status Control Bit 7 VEC0 IOBIT7 I O Vectored Interrupt Indication 1 Status Contr...

Страница 355: ...ssor Address SYNC1 I O SIO1 Multiprocessor Synchronization DO1 O SIO1 Data Output OLD1 I O SIO1 Output Load OCK1 I O SIO1 Output Clock ICK1 I O SIO1 Input Clock ILD1 I O SIO1 Input Load DI1 I SIO1 Dat...

Страница 356: ...on 15 4 Mask Pro grammable Options Tables 15 3 and 15 4 CKI2 Input Clock 2 Used with mask programmable input clock options that require an external crystal or small signal differential across CKI and...

Страница 357: ...nstruction is executed TRAP Trap Signal Positive assertion If asserted the processor is put into the trap condition that normally causes a branch to the location 0x0046 The hardware development system...

Страница 358: ...n If asserted the signal indicates an access to external data memory addresses 0x8000 through 0xFFFF see Table 3 7 This signal s leading edge can be delayed via the ioc register see Table 6 13 ERAMLO...

Страница 359: ...s either LSB or MSB first according to the sioc register MSB field DO1 changes on the rising edges of OCK1 For the DSP1627 28 29 DO1 changes on the rising or falling edge of OCK1 corresponding to the...

Страница 360: ...in multiplexes a parallel I O interface with a second serial I O interface and a 4 bit I O interface The interface selection is made by writing the ESIO2 bit in the ioc register see Section 6 2 Progra...

Страница 361: ...e data can be placed on the PB bus by an external device In both active and passive modes the DSP1617 reads the contents of the PB bus on the rising edge low to high transition of PIDS PODS PDS Parall...

Страница 362: ...ernal circuitry allows the device to be controlled through the JTAG port to provide on chip in circuit emulation Lucent Technologies provides hardware and soft ware tools to interface to the on chip H...

Страница 363: ...DSP can be controlled by external pins This is achieved by forc ing the TAP Controller2 into the Test Logic Reset TLR state In the TLR and device reset states all bidirectional pins are 3 stated and a...

Страница 364: ...serted will 3 state all output and bidirectional pins except TDO which is controlled by only by the TAP Controller If INT0 is not asserted while RSTB is asserted EROM ERAMHI ERAMLO IO and RWN outputs...

Страница 365: ...ystem HDS provides on chip in circuit emulation and requires that the relocatable HDS monitor routine be linked to the application code This code s object file is called 1617hds v 1618hds v 1627hds v...

Страница 366: ...rovide testing of the inter nal ROM contents a cyclic redundancy check CRC program is called by and linked to the user s source code The CRC code crc16 v must be entirely contained in the first 4 Kwor...

Страница 367: ...Appendix A Instruction Encoding...

Страница 368: ...APPENDIX A INSTRUCTION ENCODING CONTENTS A Instruction Encoding A 1 A 1 Instruction Encoding Formats A 1 A 2 Field Descriptions A 4...

Страница 369: ...g Formats Multiply ALU Instructions Format 1 Multiply ALU Read Write Group Format 1a Multiply ALU Read Write Group Format 2 Multiply ALU Read Write Group Format 2a Multiply ALU Read Write Group Specia...

Страница 370: ...s Format 4 Branch Direct Group Format 5 Branch Indirect Group Format 6 Conditional Branch Qualifier Software Interrupt icall Note A branch instruction immediately follows except for a software interru...

Страница 371: ...Data Move Group Format 8 Data Move immediate operand 2 words Format 9 Short Immediate Group Format 9a Direct Addressing Cache Instructions Format 10 do redo Bit 15 11 10 9 4 3 0 Field T a R Y Z Bit 1...

Страница 372: ...ble A 2 B Field B Operation 000 return 001 ireturn 010 goto pt 011 call pt 1xx Reserved T T T T Table A 3 BMU Encodings F4 AR Operation 0000 00nn aD aS arM 0001 00nn aD aS arM 0000 10nn aD aS arM 0001...

Страница 373: ...00010 eq 10010 allt 00011 ne 10011 allf 00100 lvs 10100 somet 00101 lvc 10101 somef 00110 mvs 10110 oddp 00111 mvc 10111 evenp 01000 heads 11000 mns1 01001 tails 11001 nmns1 01010 c0ge 11010 npint 01...

Страница 374: ...med Table A 7 F1 Field F1 Operation 0000 aD p p x y 0001 aD aS p p x y 0010 p x y 0011 aD aS p p x y 0100 aD p 0101 aD aS p 0110 nop 0111 aD aS p 1000 aD aS y 1001 aD aS y 1010 aS y 1011 aS y 1100 aD...

Страница 375: ...short immediate data move instructions JA Field 12 bit jump address K Field Number of times the N instructions in cache are to be executed Zero specifies use of value in cloop register N Field Number...

Страница 376: ...a 111001 Reserved 011010 sdx 111010 ar0 011011 tdms 111011 ar1 011100 pioc 111100 ar2 011101 pdx0 111101 ar3 011110 pdx1 111110 Reserved 011111 ybase 111111 alf Table A 12 R Field for DSP1611 18 27 28...

Страница 377: ...nds 00 aSl IM16 10 aSh IM16 01 aS aT 11 aS p Table A 16 T Field T Operation Format 0000x goto JA 4 00010 short imm j k rb re 9 00011 short imm r0 r1 r2 r3 9 00100 Y a1 l F1 1 00101 Z aT l F1 2a 00110...

Страница 378: ...indirect addressing with postmodification Z Field Z field specifies the form of register indirect compound addressing with postmodification Table A 17 X Field X Operation Two Operand Multiply ALU 0 p...

Страница 379: ...Appendix B Instruction Set Summary...

Страница 380: ...B 17 if CON F2 B 18 ifc CON F2 B 19 F1 Y B 20 F1 Y a0 l B 22 F1 Y a1 l B 22 F1 x Y B 24 F1 y l Y B 26 F1 y Y x pt i B 28 F1 y a0 x pt i B 30 F1 y a1 x pt i B 30 F1 aT l Y B 32 F1 Y y l B 34 F1 Z y l B...

Страница 381: ...aD extractz aS IM16 B 52 aD insert aS arM B 53 aD insert aS IM16 B 54 aD aS aaT B 55...

Страница 382: ...d page The lower 12 bits of the PC are written with the 12 bit immediate value of JA The upper 4 bits of the PC remain unchanged the goto pt instruction is used for branches outside the current 4 Kwor...

Страница 383: ...e 16 bit value of the register The following branch destinations are specified in the B field B Field Action 000 return same as goto pr 001 ireturn same as goto pi 010 goto pt 011 call pt For this ins...

Страница 384: ...ome BIO bits true 00101 lvc logical overflow clear 10101 somef some BIO bits false 00110 mvs math overflow set 10110 oddp BMU odd parity result 00111 mvc math overflow clear 10111 evenp BMU even parit...

Страница 385: ...alue of JA The upper 4 bits of the PC remain unchanged the call pt instruction is used for subroutine calls outside the current 4 Kword page Note The call JA instruction should not be placed in the la...

Страница 386: ...called just as it would be by an external interrupt The interrupt return register is set to PC 1 and the PC is set to two to start execution at the interrupt handler Note that icall vectors to memory...

Страница 387: ...ll be decremented to zero at the end of the do instruction Notes on cache performance The do instruction executes in one cycle When the cache is used to repeat a block of N instructions the cycle timi...

Страница 388: ...n from the value in the cloop register that must contain a value between 1 and 127 inclusive The cloop register will be decremented to zero at the end of the redo instruction Notes on cache performanc...

Страница 389: ...Rsrvd pdx4 Rsrvd Rsrvd 000010 r2 011000 sioc Registers sioc 1 2 srta 1 2 and tdms 1 2 are not readable 101101 Rsrvd pdx5 Rsrvd Rsrvd 000011 r3 011001 srta 101110 Rsrvd pdx6 Rsrvd Rsrvd 000100 j 01101...

Страница 390: ...998 B 9 DRAFT COPY Lucent Technologies Inc R IM16 16 bit long immediate load continued Bit 15 14 13 12 11 10 9 4 3 2 1 0 Field word 1 0 1 0 1 0 0 R 0 0 0 0 word 2 Immediate Value IM16 Words 2 Cycles 2...

Страница 391: ...ost significant bit of SR is the least significant bit of the T field used in the instruction set encodings in Table A 16 page A 9 2 When a DSP1611 17 18 27 28 29 program is encoded and if the immedia...

Страница 392: ...ess than 16 bits load from the low order bits of aS l The value of S can be zero to select accumulator a0 or one to select accumulator a1 Register R is one of the gen eral sets of registers shown for...

Страница 393: ...one to select a0 aT is encoded as aT in the instruction encodings in Appendix A Register R is one of the general sets of registers shown in Table B 2 on page B 8 for the long imme diate load except th...

Страница 394: ...r x are the destination registers R the assembler assembles this instruction as a single cycle multiply ALU instruction If a two cycle move encoding is necessary the optional mnemonic move may be used...

Страница 395: ...form for this instruction with a postincrement of one This imple ments a write to a stack in memory Register R is one of the general set of registers listed in Table B 2 on page B 8 under the long imm...

Страница 396: ...eral sets of registers listed under the long immediate load instruction Register sources c0 c1 and c2 are less than 16 bits and are sign extended Register source auc is less than 16 bits and is zero e...

Страница 397: ...Note The upper 11 bits of ybase are concatenated with the OFFSET to form the direct address The lower five bits of ybase are ignored For direct addressing register DR can be any of the following Writ...

Страница 398: ...n page B 8 The OFFSET is a 5 bit direct address OFFSET from the ybase register and is specified in the opcode The OFF SET can have any value from 0 to 31 Note The upper 11 bits of ybase are concatenat...

Страница 399: ...lso be per formed unconditionally i e written by themselves and encoded as a condition of true The F2 functions that can be conditionally performed i e encoded in the F2 field are as follows Note The...

Страница 400: ...are encoded in the CON field see Table B 1 on page B 3 The F2 functions can also be performed unconditionally i e written by themselves and encoded as a condition of true The possible F2 special func...

Страница 401: ...3 Arithmetic and Precision for the options of shifting the output of the p register into aS in the above operations 2 Access the Y space location pointed to by rM where rM is specified by the two mos...

Страница 402: ...chnologies Inc F1 Y multiply ALU operation with postmodification of pointer register continued Bit 15 14 13 12 11 10 9 8 5 4 3 0 Field 0 0 1 1 0 D S F1 0 Y Words 1 Cycles 1 Group Multiply ALU Addressi...

Страница 403: ...in parallel 1 Write the old value of a0 a1 a0l or a1l to the Y space location pointed to by rM where rM is specified by the two most significant bits of the Y field 00 r0 01 r1 10 r2 11 r3 The X fiel...

Страница 404: ...lving the y register y is sign extended to 36 bits before performing the operation including logical operations See Section 3 3 Arithmetic and Precision for the options available when shifting the out...

Страница 405: ...are modified based on the value computed by the DAU Note For all diadic operations involving the y register y is sign extended to 36 bits before performing the operation including logical operations...

Страница 406: ...is specified by the two least significant bits of the Y field 2 LSBs of Y Action Symbol 00 no action rM 01 postincrement rM 10 postdecrement rM 11 Code 11 in this case means add the current value of t...

Страница 407: ...d on the value computed by the DAU Note For all diadic operations involving the y register y is sign extended to 36 bits before performing the operation including logical operations See Section 3 3 Ar...

Страница 408: ...is specified by the two least significant bits of the Y field 2 LSBs of Y Action Symbol 00 no action rM 01 postincrement rM 10 postdecrement rM 11 Code 11 in this case means add the current value of...

Страница 409: ...elect a0 or one to select a1 Flags are modified based on the value computed by the DAU Note For all diadic operations involving the y register y is sign extended to 36 bits before performing the opera...

Страница 410: ...ither internal or exter nal X space may be accessed depending on the address and the state of the EXM pin 5 Postmodify the value of the pt register by either one or i selected by the X field X 0 pt X...

Страница 411: ...ote For all diadic operations involving the y register y is sign extended to 36 bits before performing the operation including logical operations See Section 3 3 Arithmetic and Precision for the optio...

Страница 412: ...isters continued F1 y a1 x pt i continued 4 Postmodify the value of the pt register by either one or i selected by the X field X 0 pt X 1 pt i Bit 15 14 13 12 11 10 9 8 5 4 3 2 1 0 Field a0 1 1 0 0 1...

Страница 413: ...he DAU Note For all diadic operations involving the y register y is sign extended to 36 bits before performing the operation including logical operations See Section 3 3 Arithmetic and Precision for t...

Страница 414: ...cation is specified by the two least significant bits of the Y field 2 LSBs of Y Action Symbol 00 no action rM 01 postincrement rM 10 postdecrement rM 11 Code 11 in this case means add the current val...

Страница 415: ...value computed by the DAU Note For all diadic operations involving the y register y is sign extended to 36 bits before performing the operation including logical operations See Section 3 3 Arithmetic...

Страница 416: ...n is specified by the two least significant bits of the Y field 2 LSBs of Y Action Symbol 00 no action rM 01 postincrement rM 10 postdecrement rM 11 Code 11 in this case means add the current value of...

Страница 417: ...ons involving the y register y is sign extended to 36 bits before performing the operation including logical operations See Section 3 3 Arithmetic and Precision for the options available when shifting...

Страница 418: ...Z field The available options for the postmodification are specified as follows Symbol 2 LSBs of Z First Action Second Action rMzp 00 no action zero postincrement plus rMpz 01 postincrement plus no ac...

Страница 419: ...including logical operations See Section 3 3 Arithmetic and Precision for the options available when shifting the output of the p register into aS in the above operations 2 Save either the y or yl reg...

Страница 420: ...of the Z field The available options for the postmodification are specified as follows Symbol 2 LSBs of Z First Action Second Action rMzp 00 no action zero postincrement plus rMpz 01 postincrement pl...

Страница 421: ...1 are as follows The value of S can be zero to select a0 or one to select a1 The value of D can be zero to select a0 or one to select a1 Flags are modified based on the value computed by the DAU Note...

Страница 422: ...least significant bits of the Z field The available options for the postmodification are specified as follows 7 Access the X space location pointed to by pt and write this value into the x register Ei...

Страница 423: ...OR operation writing a 36 bit result aD aS aT is 36 bit logical XOR operation writing a 36 bit result aS aT sets the flags on a 36 bit subtract No result is written aS aT sets the flags on a 36 bit l...

Страница 424: ...is a 36 bit logical XOR operation writing a 36 bit result aS p sets the flags on a 36 bit subtract No result is written aS p sets the flags on a 36 bit logical AND No result is written The F3 field sp...

Страница 425: ...ORed or XORed with aS writing a 36 bit result aSh IM16 The 16 bit value IM16 is aligned with bits 31 16 of aS IM16 is sign extended into the guard bits and bits 15 0 are padded with zeros The resulti...

Страница 426: ...ed The following table provides the encoding for the F3 field F3 Field Operation 1000 aD aS h l IM16 1001 aD aS h l IM16 1010 aS h l IM16 1011 aS h l IM16 1101 aD aS h l IM16 1110 aD aS h l IM16 1111...

Страница 427: ...the same type and vice versa aD a aS performs an arithmetic right shift aD a aS performs an arithmetic left shift aD a aS performs a logical right shift This instruction clears the guard bits bits 35...

Страница 428: ...performs an arithmetic right shift aD aS arM performs an arithmetic left shift aD aS arM performs a logical right shift This instruction clears the guard bits bits 35 32 before shifting aD aS arM perf...

Страница 429: ...IM16 performs an arithmetic right shift aD aS IM16 performs an arithmetic left shift aD aS IM16 performs a logical right shift This instruction clears the guard bits bits 35 32 before shifting aD aS...

Страница 430: ...tive and an arithmetic right shift will be done to normalize the number see page B 50 E K 5 where K is the total number of bits that are the same starting from bit 35 and counting to the right For exa...

Страница 431: ...35 and counting to the right For example 2 The 36 bit value in aS is then arithmetically shifted left by E the amount of this computed exponent and the 36 bit shifted value is placed in aD If aS has o...

Страница 432: ...eight bits of arM hold the OFFSET from bit zero of aS in bits For example arM 0xe06 defines a 14 bit wide field starting from bit six of aS This copies bits 19 6 of aS to low order aD bits 13 0 and e...

Страница 433: ...f the field in bits and the lower eight bits of IM16 hold the OFFSET from bit zero of aS in bits For example IM16 0xe06 defines a 14 bit wide field starting from bit six of aS This copies bits 19 6 of...

Страница 434: ...ight bits of arM hold the WIDTH of the field in bits and the lower eight bits of arM hold the OFFSET from bit zero of a in bits For example arM 0xe06 defines a 14 bit wide field starting from bit six...

Страница 435: ...ue IM16 The upper eight bits of IM16 hold the WIDTH of the field in bits and the lower eight bits of IM16 hold the OFFSET from bit zero of a in bits For example IM16 0xe06 defines a 14 bit wide field...

Страница 436: ...ed with the old value in aaT A temp register is used for the exchange to provide a true swap All transfers are full 36 bit Flags are set based on the value written into aD Bit 15 14 13 12 11 10 9 8 7...

Страница 437: ...Index...

Страница 438: ...op 2 18 call JA 4 13 clock CKI 15 5 CKO 6 14 12 1 computation exponent 4 32 13 4 normalization 4 32 13 4 conditional instructions see instructions conditional control block 5 19 counter conditional mn...

Страница 439: ...4 32 13 6 13 7 shuffle 13 8 cache 4 11 4 14 4 15 5 18 conditional and counters 5 4 5 6 control 4 11 4 12 4 13 data move 4 11 4 15 4 18 multiply ALU 4 11 special function 4 11 4 19 4 21 interrupt EMUXB...

Страница 440: ...alization computation see computation normal ization O offset 14 18 operation interrupt 3 32 3 38 single cycle squaring 3 21 4 24 operations concurrent 2 2 overflow 5 3 P phase lock loop see PLL pin m...

Страница 441: ...MODE field 9 7 9 9 PSOBEF field 9 10 PSTRB field 9 9 PSTROBE field 9 9 pi 2 18 5 7 5 11 5 12 pioc 8 1 8 2 8 15 8 16 IBF field 8 20 INT0 field 8 20 OBE field 8 20 PIDS field 8 20 PODS field 8 20 pllc 3...

Страница 442: ...5 S saturation see register auc SAT field shift arithmetic left 13 3 arithmetic right 13 3 logical left 13 3 logical right 13 2 signal AB 6 2 15 6 CKI2 15 5 CKO 6 2 15 5 DB 6 2 15 6 DI 7 12 DI1 15 8 D...

Страница 443: ...s port see JTAG TAP timer 2 22 12 1 prescaler 12 1 timer0 12 1 12 2 12 5 timerc 12 1 TIMERDIS 12 1 12 3 trap 3 29 3 38 3 39 V vectors interrupt X memory space 3 20 W wait state 3 8 6 1 6 13 6 17 X X a...

Отзывы: