1 / 30

# (BOCA) - PowerPoint PPT Presentation

Embedded Computer Architecture 2. (BOCA). Bijzondere Onderwerpen Computer Architectuur Block B Index Transformations. The convolution algorithm.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

### (BOCA)

Bijzondere Onderwerpen

Computer Architectuur

Block B

Index Transformations

The behavior of a linear time-invariant system can be fully described by its impulse response h, i.e. the response on the output to a single unit pulse on the input.

The response y on the output to an input stream x then follows from:

or

continue

with j = z – i, we obtain:

and if the impulse response h is finite (bounded), i.e.

we get

y

F

The dependency graph of the convolution

We will investigate the dependency graph for both the convolution formulas

and

y

F

The DG of the convolution

In which h is the impulse response defining the system F.

Recurrent relations:

y

F

The DG of the convolution

In which h is the impulse response defining the system F.

Recurrent relations:

Let x be a bounded sequence of length NX, i.e.:

for

and

And let hbe a bounded sequence of length NH, i.e.:

for

and

The convolution

and

for

and

and

for

z-i<0

NX=NH= 5

i

-1

0

1

2

3

4

5

-1

0

1

2

or

3

4

5

z

6

7

8

i>4

or

i<0

9

z-i>4

Hence, with

we obtain

for

so

and with

we obtain

for

so

so

can be replaced by

The convolution

Recall:

for all i

Notice that

i.e. z < 0 or z > NX + NH-2

implies

for all i, and thus yz= 0

The convolution

Recall:

Hence, yzis a bounded sequence too.

Consequently the recurrent relations become:

for

xi

hz-i

hz-i

xi

x

sz,i-1

sz,i

sz,i-1

sz,i

Fz,i

+

local variables

The DG of the convolution

Implementation basic cell

Basic cell

x0

h0

x1

y0=s0,0

0

h1

x2

y1=s1,1

0

x3

h2

y2=s2,2

0

h3

y3=s3,3

0

h4

y4=s4,3

0

y5=s5,3

0

y6=s6,3

0

0

y7=s7,3

The DG of the convolution

Dependency graph

(globally recursive)

i

z

NX = 4

NH = 5

Transformation from a globally recursive to a locally recursive DG

Recall the recurrent relations of the globally recursive graph:

for

for

h0

x0

y0=so,o

0

h1

x1

y1=s1,1

0

h2

x2

y2=s2,2

0

h3

x3

y3=s3,3

0

h4

y4=s4,3

0

y5=s5,3

0

y6=s6,3

0

y7=s7,3

0

The DG of the convolution

Dependency graph

(locally recursive)

NX = 4

NH = 5

Easier:

First make the graph and then the recurrent relations

Alternatives for the locally recursive dependency graph

global local

for xi : 2 alternatives

total : 8 alternatives

for hi : 2 alternatives

for  : 2 alternatives

h 0

0

h1

0

h2

0

h3

0

h4

0

The DG of the convolution

One of the alternative

locally recursive graphs

y0=so,o

0

y1=s1,0

0

y2=s2,0

0

y3=s3,0

y4=s4,0

x0

y5=s5,1

x1

NX = 4

NH = 5

y6=s6,2

x2

y7=s7,3

x3

y

F

The dependency graph of the convolution

We will investigate the dependency graph for both the convolution formulas

and

We have investigated this one

This one can be investigated

similarly

x z-i

hi

sz,i-1

sz,i

Fz,i

The DG of the convolution

h0

x0

y0=so,o

0

h1

x1

y1=s1,1

0

h2

x2

y2=s2,2

0

x3

h3

y3=s3,3

0

h4

y4=s4,3

0

y5=s5,3

0

NX = 4

NH = 5

Basic cell

y6=s6,3

0

y7=s7,3

0

x0

The locally recursive DG

h0

y0=s0,0

0

x1

h1

y1=s1,1

0

x2

h2

y2=s2,2

0

x3

h3

y3=s3,3

0

h4

y4=s4,3

0

y5=s5,3

0

NX = 4

NH = 5

y6=s6,3

0

y7=s7,3

0

versus

x0

h0

h0

y0=s0,0

x0

0

x1

y0=s0,0

0

h1

h1

y1=s1,1

x1

0

x2

y1=s1,1

0

h2

h2

x2

y2=s2,2

0

x3

y2=s2,2

0

h3

h3

x3

y3=s3,3

0

x4

y3=s3,3

0

h4

h4

y4=s4,3

x4

0

x5

y4=s4,4

0

y5=s5,3

x5

0

x6

y5=s5,5

0

x6

y6=s6,3

0

y6=s6,6

0

y7=s7,3

x7

y7=s7,7

0

0

Node description

Each node in an N-dimensional DG can be described by a vector in an N-dimensional index space.

1

2

3

4

5

6

7

8

(6,3)

Algebraic description of a DG

Edge description

Alternative 1

Alternative 2

3

3

2

2

source

destination

source

destination

6

6

(0,1)

(6,2)

(6,2)

(6,3)

A dependency graph is fully described by:

• The set of nodes

• The set of intermediate edges

• The set of input edges

• The set of output edges

virtual nodes:

in which

0,0

1,0

1,1

nodes: Vn= {(0,0),(1,0),(1,1)}

intermediate edges: Eint= {((0,0),(1,0)),((1,0),(0,1))}

input edges: Ein= {((0,-1),(0,1)),((1,-1),(0,1)),((-1,0),(1,0)),((0,1),(1,0))}

output edges: Eout= {((0,0),(0,1)),((1,1 ),(0,1)),((1,0),(1,0)),((1,1),(1,0))}

Shifting the origin = adding a vector

is vector in the new description

is vector in the old description

causes a shift of the origin

is a non-singular matrix

Index transformations

An N-dimensional dependency graph can be linearly transformed by:

Just cosmetic.

Does not give new designs

Chosing a different base with the same origin

= multiplying with a non-singular matrix A

So

In which:

Shifting the origin with a vector is just cosmetic and does not lead to any new designs. So we refrain from this operation.

Hence,

Because A is non-singular, the inverse tranform is always possible.

All vectors in the algebraic description of the DG have to be

multiplied with A.

0,1

0,2

0,0

1,1

1,2

1,0

0,0

1,1

2,2

1,-1

2,0

2,1

2,2

2,0

2,-2

3,-1

4,0

Examples of index transformations

Transformation

Transformation

An edge consists of two vectors

Both are multiplied with A

versus

x0

h0

h0

x0

y0=s0,0

0

y0=s0,0

0

x1

h1

h1

x1

y1=s1,1

y1=s1,1

0

0

x2

h2

h2

x2

y2=s2,2

0

y2=s2,2

0

x3

h3

h3

x3

y3=s3,3

y3=s3,3

0

0

x4

h4

h4

x4

y4=s4,4

y4=s4,4

0

0

x5

x5

y5=s5,4

y5=s5,5

0

0

x6

x6

y6=s6,6

y6=s6,4

0

0

0

x7

y7=s7,4

0

0

versus

Applying the transformation

h0

(0,0) → (0,0)

x0

y0=s0,0

0

h1

x1

(1,0) → (1,1)

y1=s1,0

0

h2

(1,1) → (1,0)

x2

y2=s2,0

0

h3

x3

(2,0) → (2,2)

y3=s3,0

0

h4

(2,1) → (2,1)

x4

0

y4=s4,0

(2,2) → (2,0)

x5

0

y5=s5,1

x6

0

y6=s6,2

versus

Applying the transformation

x0

h0

h0

x0

y0=s0,0

y0=s0,0

0

0

x1

h1

h1

x1

y1=s1,0

y1=s1,1

0

0

x2

h2

h2

x2

y2=s2,0

0

y2=s2,2

0

x3

h3

h3

x3

y3=s3,0

y3=s3,3

0

0

x4

h4

h4

x4

y4=s4,4

0

0

y4=s4,0

x5

x5

y5=s5,4

0

0

x6

y5=s5,1

x6

y6=s6,4

0

0

y6=s6,2

y7=s7,4

The previous transformation elucidates that index transformations on a formula are identical to the transformations in the N-dimensional index space.

Hence, transformation in the N-dimensional index space might support index transformation on a formula.