Individual Instruction Descriptions

4.14.14 CORK

 

Correlation Filter Function

 

 

 

 

Syntax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[label]

name

 

dest, src

Clock, clk

Word, w

 

With RPT, clk

Class

 

 

 

 

 

 

 

 

 

 

 

 

CORK

 

An, *Rx

3

1

 

3(nR+2)

9a

Execution

With RPT N–2:

 

 

 

 

 

 

 

 

(mask interrupts)

 

 

 

 

 

 

 

 

RPT counter = N–2

 

 

 

 

 

 

 

 

MR = h[0] = first filter coefficient

 

 

 

 

 

 

 

x = sample data pointed at by Rxeven

 

 

 

 

 

 

 

h[1] = second filter coefficient pointed by DP

 

 

 

 

 

y = result stored in three consecutive accumulators (48 bit) pointed by An

 

 

 

{between every accumulation}

 

 

 

 

 

 

 

 

IF TAG = 1

 

 

 

 

 

 

 

 

 

Rxeven = Rxeven + R5

{for circular buffering}

 

 

 

 

 

ELSE

 

 

 

 

 

 

 

 

 

Rxeven

{ if Rx++ is specified in the instruction}

 

 

 

ENDIF PC PC + 1

 

 

 

 

 

 

 

 

{final result}

 

 

 

 

 

 

 

 

 

y +￿k+0..N–1h [k] · x[N1–k]

 

 

 

 

 

(Execution is detailed in section 4.11)

 

 

 

 

Flags Affected

None

 

 

 

 

 

Opcode

 

 

 

 

 

 

 

Instructions

16

15

14

13

12

11

10

9

 

8

7

 

 

 

 

 

 

 

 

 

 

 

 

CORK An, *Rx

1

1

1

0

1

0

0

 

An

1

 

 

 

 

 

 

 

 

 

 

 

 

6

5

4

3

2

1

0

 

 

 

 

 

 

 

0

0

 

Rx

 

1

1

 

 

 

 

 

 

 

Description

When used with repeat will execute 16 16 multiplication between data

 

memory and program memory, 48-bit accumulation, and a circular buffer

 

operation. Each tap takes 3 instruction cycles. Selected register Rx must be

 

even. This instruction also uses R(x+1). This instruction must be used with

 

RPT instruction. See Section 4.11 for more detail on the setup of coefficents

 

and sample data. During CORK execution, interrupt is queued.

See Also

RPT, COR, FIR, FIRK

Example 4.14.13.1

RPT 0

 

CORK A0, *R0

Computes the calculation for 2 tap correlation filter with 48 bit accumulation. See section 4.11 for more detail on the setup of coefficents and sample data.

4-96

Page 182
Image 182
Texas Instruments MSP50C6xx Cork Correlation Filter Function, Sample data. During Cork execution, interrupt is queued