1 / 30

(BOCA)

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

sade-snyder
Download Presentation

(BOCA)

An Image/Link below is provided (as is) to download presentation 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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Embedded Computer Architecture 2 (BOCA) Bijzondere Onderwerpen Computer Architectuur Block B Index Transformations

  2. The convolution algorithm 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

  3. The convolution algorithm continue with j = z – i, we obtain: and if the impulse response h is finite (bounded), i.e. we get

  4. x y F The dependency graph of the convolution We will investigate the dependency graph for both the convolution formulas and

  5. x y F The DG of the convolution In which h is the impulse response defining the system F. Recurrent relations:

  6. x 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

  7. hence 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

  8. and Hence, with we obtain for so and with we obtain for so so can be replaced by The convolution Recall:

  9. implies 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

  10. global variables 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

  11. 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

  12. global dependencies (broadcasts) Transformation from a globally recursive to a locally recursive DG Recall the recurrent relations of the globally recursive graph: for for

  13. 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

  14. The DG of the convolution Alternatives for the locally recursive dependency graph global local for xi : 2 alternatives total : 8 alternatives for hi : 2 alternatives for  : 2 alternatives

  15. h0 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

  16. x 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

  17. xz-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

  18. The DG of the convolution 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

  19. The DG of 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

  20. Algebraic description of a DG 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)

  21. our choice 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)

  22. Algebraic description of a DG 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

  23. Algebraic description of a DG 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))}

  24. 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:

  25. Index transformations 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.

  26. 0,0 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

  27. The DG of 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

  28. The DG of 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

  29. The DG of 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

  30. Examples of index transformations 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.

More Related