dynamically parameterized architectures for power aware video coding: motion estimation and dct

37
Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT Wayne Burleson ([email protected]) Prashant Jain ([email protected]) Subramanian Venkatraman ([email protected]) Dept. of Electrical and Computer Engineering University of Massachusetts Amherst This work was partially supported by NSF-9988238

Upload: kagami

Post on 15-Jan-2016

37 views

Category:

Documents


0 download

DESCRIPTION

Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT. Wayne Burleson ([email protected]) Prashant Jain ([email protected]) Subramanian Venkatraman ([email protected]). Dept. of Electrical and Computer Engineering - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Dynamically Parameterized Architectures for Power Aware

Video Coding: Motion Estimation and DCT

Wayne Burleson ([email protected])

Prashant Jain ([email protected])

Subramanian Venkatraman ([email protected])

Dept. of Electrical and Computer EngineeringUniversity of Massachusetts Amherst

This work was partially supported by NSF-9988238

Page 2: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Outline

Introduction

Video Content Variation

Dynamic Parameterization to achieve Power-Aware

Video Coding

Motion Estimation & DCT

On-Going Work

Page 3: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Introduction

Video Content and processing are non-uniform in space

and time.

Video processing can gracefully degrade in power

constrained environments.

Exploits Perceptual tolerance.

MPEG-4.

High level algorithm changes affect power efficiency the

most.

Page 4: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Recent Work

Configurable FPGA based Architectures [Villasenor ‘95].

Heterogeneous architecture with Programmable

Processors [Kneip ‘98].

Heterogeneous Configurable architecture with on-chip

low-power FPGA [Zhang ‘00].

FPGAs

Slow

High power dissipation

Page 5: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Adaptive System-On-a-Chip (aSOC)

Partially Predefined Configuration ArchitectureHeterogeneous tiles with Statically scheduled interconnection switchesTiles can be reconfigured internally as well as from an external source

uP

DSP

RISC

RAM

ME/DCTCore

SRAM

Switch

Switch Memory

FPGA

FPGA

Ref. J. Liang et. al., aSOC: A Scalable, Single-Chip Communications Architecture in the Proceedings of the IEEE International Conference on Parallel Architectures and Compilation Techniques, 2000

Page 6: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Outline

Introduction

Video Content Variation

Dynamic Parameterization

Motion Estimation & DCT

On-Going Work

Page 7: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Content Variation across sequences

Page 8: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Content Variation in TimeHorizontal Component of the Motion Vectors

Page 9: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Content Variation in SpaceBackground: Not much variation

High variation

Page 10: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Outline

Introduction

Content Variation

Dynamic Parameterization

Motion Estimation & DCT

On-Going Work

Page 11: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Dynamic Parameterization

Functional parameters vary the output of a

computation.

Architectural parameters allow trade-offs in area,

performance, power and reliability.

Parameters can be bound at varying stages.

StandardTime

IP Time Run-TimeConfig.Time

Compile/BootTime

DesignTime

Years… Months… Secs… msecs… secs…

Page 12: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Dynamic Parameter Adjustment

System Requirements and Constraints

Signal statistics from the Input Signals

Algorithm statistics from the post processing of the Input Signals

Algorithm

Architecture

Predictor

Archi. Para.

Function. Para.

Signals

Precision, Quality, Compress.

Algo. & Archi. Stats.

SignalStats.

Area Speed Power

Area, Latency, Power

Predictor Inputs

Predictor Outputs

Architectural and Functional Parameters

Signal ProcessingSystem

Page 13: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Functional Parameter Adjustment: Algorithms

Full Search Logarithmic

Algorithms Compression Frames encoded/sec

(fps)

Full Search 70:1 0.2

Logarithmic 50:1 2.76

Page 14: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Functional Parameter Adjustment: Search Space

Larger search space improves chances of a good match.

A Good match

Increasing search space is effective up to a point

Larger search space increases computations.

High Compression

bpp

Plot for a specific sequence

Page 15: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Power versus Search Area

Memories – Major contributors to Power dissipation.

Algorithms presented reduce memory accesses and computations.

Our novel architecture reconfigures to different algorithms with reduced memory accesses and computations, thus saving power.

Page 16: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Power Consumption in Video Coding

Ref. Peter Kuhn, “Algorithms, Complexity Analysis and VLSI Architectures for MPEG-4 Motion Estimation”

Com

pu

tati

on

(%

)

0

10

20

30

40

50

60

Steps

MotionEstimationDCT (IDCT)

Other (VLC,Quantization)

ME

DCTIDCTVLC,

etc.

Page 17: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Outline

Introduction

Content Variation

Dynamic Parameterization

Motion Estimation & DCT

On-Going Work

Page 18: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Functional Parameter: Full Search

Selects the most representative block from an exhaustive set of candidate blocks within a search window.

Page 19: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Functional Parameter: Spiral Search

Performs a Spiral Search for the matching block.

Algorithm is data dependent during run-time.

Page 20: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Functional Parameter : 3-Step Search

Page 21: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Functional Parameter: Pel Subsampling

16x16 Pixel Array 4:1 Subsampling2:1 Subsampling

Page 22: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Functional Parameter: Half-Pel ME

Current and Previous block data can be filtered to Half-Pel resolution.

Ref. Peter Kuhn, “Algorithms, Complexity Analysis and VLSI Architectures for MPEG-4 Motion Estimation”

A

DC

B

a

c

b

a= (A+B+C+D)/2

b= (B+D)/2

c= (C+D)/2

Page 23: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

I/O Re-use

Current Block

Candidate Blocks

Candidate blocks differ by a single row of pixels

Can reuse the previous rows of pixels

Previous rows are stored in FIFOs

Page 24: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Matching Criteria

The Matching Criteria used is Sum of Absolute Differences (SAD).

Ref. Peter Kuhn, “Algorithms, Complexity Analysis and VLSI Architectures for MPEG-4 Motion Estimation”

1 1),(

1),(),(

Nx

xm

Ny

yndyndxm

kInm

kIdydxSAD

Page 25: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Proposed Architecture for Dynamically Parameterized ME

16x16PE Array

Address Generator

Unit

SRAMExternal to PE Array

MemoryBlock

SummingBlock

PE

RAMAddresses

PE Control

307,200 bytes/frame

storage

Page 26: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Architecture: Processing Element (PE)

|c-p|

Local Control

Sum of Absolute

Differences

Half-Pel

FIFOCurrent Pixel & 256 bytes

Page 27: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Outline

Introduction

Content Variation

Dynamic Parameterization

Motion Estimation & DCT

On-Going Work

Page 28: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Discrete Cosine Transform

Integral part of any still-image or video compression system.

Compute intensive - next only to motion estimation.

Amenable to VLSI implementation – “Decomposition” property and “Distributed Arithmetic”.

Page 29: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Decomposition Property

Y6

Y4

Y2

Y0

2

1

CBBC

AAAA

BCCB

AAAA

43

52

61

7

xx

xx

xx

xx0

7

5

3

1

Y

Y

Y

Y

2

1

DEFG

EGDF

FDGE

GFED

43

52

61

7

xx

xx

xx

xx0

1D DCT in matrix notation

2D DCT~ 2 1D DCTs

Ref. W.H. Chen at al., “A Fast Computational Algorithm for the Discrete Cosine Transform”, IEEE Trans. Commun.,

Page 30: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Distributed ArithmeticA0

A1

A1+A0

A1+A0

A2

A3+A2+A1

A3+A2+A1+A0

+

Result

X00

X01

X02

X03

X10

X11

X12

X13

X20

X21

X22

X23

X30

X31

X32

X33

4 t

o 1

6 A

ddre

ss

Deco

der

X2

Bit-serial arithmetic using Read Accumulate Computation (RAC) unit

Inner product computation of coefficient vector A and input vector X

Facilitates variable-precision processing

Ref. T. Xanthopoulos et al., “A Low-Power DCT Core Using Adaptive Bitwidth and Arithmetic Activity Exploiting Signal Correlations and Quantization”, IEEE JSSC 2000

Page 31: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Exploiting Content Variation

Most Significant Bit Rejection (MSBR) RAC operation disabled in the presence of spatial

correlation

Row Column Classification (RCC) Reduction in overall arithmetic activity by imposing

upper bound on RAC cycles

Replication of Arithmetic Units (RAU) Replication of the RAC units – trade-off between

Power and Performance

Page 32: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Energy Efficiency Comparison Among DCT/IDCT

Chip Sw-Cap/sample

Matsui et al. 375 pF

Bhattacharya et al. 479 pF

Kuroda et al. 417 pF

T. Xanthopoulos et al.

128 pF

Ref. T. Xanthopoulos et al., “A Low-Power DCT Core Using Adaptive Bitwidth and Arithmetic Activity Exploiting Signal Correlations and Quantization”, IEEE JSSC 2000

Page 33: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Architecture of DCT Core

Ref. T. Xanthopoulos et al., “A Low-Power DCT Core Using Adaptive Bitwidth and Arithmetic Activity Exploiting Signal Correlations and Quantization”, IEEE JSSC 2000

Page 34: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Outline

Introduction

Video Content Variation

Dynamic Parameterization to achieve Power-Aware

Video Coding

Motion Estimation & DCT

On-Going Work

Page 35: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

On-Going Work

Implementations at the RTL, netlist and physical levels.

Power estimation at the various levels mentioned above.

Techniques for statistically tracking content variation.

Full prototyping based on actual video workloads using a logic emulator from IKOS systems, and

Extensions to other parameterized multimedia computations (e.g. 3D Graphics, natural and synthetic audio).

Page 36: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Conclusions

Content variation and Dynamic Parameterization can be

used to achieve power aware video coding.

Proposed Motion Estimation & DCT architectures to be

implemented to achieve the above.

Page 37: Dynamically Parameterized Architectures for Power Aware Video Coding: Motion Estimation and DCT

Dynamically Parameterized Architectures for Power Aware

Video Coding: Motion Estimation and DCT

Wayne Burleson ([email protected])

Prashant Jain ([email protected])

Subramanian Venkatraman ([email protected])

Dept. of Electrical and Computer EngineeringUniversity of Massachusetts Amherst

This work was partially supported by NSF-9988238

http://vsp2.ecs.umass.edu/vspg/publication.html