29
RedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision Robert LiKamWa [email protected] Yunhui Hou [email protected] Yuan Gao [email protected] Mia Polansky [email protected] Lin Zhong [email protected] 1 [email protected] [email protected]

for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

RedEyeAnalog ConvNet Image Sensor Architecture for

Continuous Mobile VisionRobe r t Li K am W a r o b l k w @ r i c e . e d u

Yu nhu i H ou h o u y h @ r i c e . e d u

Yu an G ao y g 1 8 @ r i c e . e d u

M i a Pol an s ky m i a . p o l a n s k y @ r i c e . e d u

Li n Z hon g l z h o n g @ r i c e . e d u

1

[email protected]

[email protected]

Page 2: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

A vision of vision...

... continuous mobile vision!

Sense Compute Interact

Energy efficiency goal: 10 mW

• Idle power consumption of smartphone• Week-long use of small battery (2 Wh)• Opens door to energy-harvesting solutions

4

Page 3: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Vision demands energy

5

Sense Compute

1 nJ per pixelUltra-low-power CMOS imager

(Himax 2016)

12 nJ per data movementQuantifying Energy Cost of [Mobile] Data Movement

(Pandiyan, Wu IISWC 2014)

Page 4: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Key Idea: Shift processing into the analog domain!

6

Compute

Analog Challenges:Design complexityNoisy signal fidelity

SenseProcess + Sense

Page 5: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Complexity limits the extent of analog computing

No bus for control/data

• Analog exchanges data onpre-routed interconnects

• Congestion and overlap cause parasitics

Source: Wikipedia

Challenge #1: Design complexity

RedEye: Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision, LiKamWa et al. [ISCA ‘16]

7

Page 6: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Analog circuits suffer from

High CLow-noise

High-Energy

Low CHigh-noise

Low-Energy

Accumulating signal noise limits the extent of efficient analog computing

Challenge #2: Noisy signal fidelity

8

orv2n = kBT/C

thermal noiseE = CV 2/2

energy cost

Page 7: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Complexity and noise limit the efficiency of prior analog architectures

9

RedEye: Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision, LiKamWa et al. [ISCA ‘16]

Analog neural processing(St. Amant et al @ UT-Austin, 2014)

ADC consumes >90% of energy consumption

Page 8: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Insight #1: Vision is highly structured

• Repetitive building blocks◦ Reusable structure

• Patch-based operations◦ Data locality

• Dataflow bandwidth reduces with processing

◦ “Feed-forward”

10

ConvNet blocksConvolutionMax Pooling

...

“key”

Page 9: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

What about noise?

11

“jigsaw”

Page 10: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Insight #2: Noisy images are okay for vision

12

-10-9-8-7-6-5-4-3-2-10

10 20 30 40 500

20

40

60

80

100lo

g 10

[ Com

p. E

nerg

y (J

) ]

Goo

gLeN

et A

ccur

acy

(%)

Comp. Noise SNR (dB)

Energy

Accuracy

“key”“key”“jigsaw”

Page 11: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Insight #2: Noisy images are okay for vision

13

-10-9-8-7-6-5-4-3-2-10

10 20 30 40 500

20

40

60

80

100lo

g 10

[ Com

p. E

nerg

y (J

) ]

Goo

gLeN

et A

ccur

acy

(%)

Comp. Noise SNR (dB)

“key”“key”“jigsaw”

Accuracy

Energy

Page 12: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

14

Programmable analog ConvNet execution

• Low-complexity modules for design scalability

• Noise mechanisms to trade accuracy/efficiency

Reduce readout energy by 100x

RedEye vision sensor architecture

Page 13: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

15

RedEyeModules

RedEyeColumns

RedEyeControl Plane

DigitallyClocked

Controller

ProgramSRAM

System Bus

Noise tuning

Kernel config

Programming

FeatureSRAM

System Bus Send Results

Flow control

RedEye Output

Optical

Analog

Digital

RedEye vision sensor architecture

Page 14: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Analog-to-DigitalConversion

Pixel Column

Correlated DoubleSampling (CDS)

Analog Memory

Vertical Weighted Averaging

HorizontalAccumulation

HorizontalMax Pooling

VerticalMax Pooling

Cyclic Flow

Control

Column Vectorof Kernel

H columns H columns

Convolutional

Max Pooling

Quantization4

Storage

3

2

1

H columns H columns

QuantizationNoise Tuning

CapacitanceNoise Tuning

RedEyeOutput

16

Reusable Modules• Programmable kernel• Cyclic flow for reuse

Page 15: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Reusable Modules• Programmable kernel• Cyclic flow for reuse

Data locality for patches• Streaming processing• Column topology

17

Analog-to-DigitalConversion

Pixel Column

Correlated DoubleSampling (CDS)

Analog Memory

Vertical Weighted Averaging

HorizontalAccumulation

HorizontalMax Pooling

VerticalMax Pooling

Cyclic Flow

Control

RedEyeOutput

Analog-to-DigitalConversion

Pixel Column

Correlated DoubleSampling (CDS)

Analog Memory

Vertical Weighted Averaging

HorizontalAccumulation

HorizontalMax Pooling

VerticalMax Pooling

Cyclic Flow

Control

RedEyeOutput

Analog-to-DigitalConversion

Pixel Column

Correlated DoubleSampling (CDS)

Analog Memory

Vertical Weighted Averaging

HorizontalAccumulation

HorizontalMax Pooling

VerticalMax Pooling

Cyclic Flow

Control

RedEyeOutput

Analog-to-DigitalConversion

Pixel Column

Correlated DoubleSampling (CDS)

Analog Memory

Vertical Weighted Averaging

HorizontalAccumulation

HorizontalMax Pooling

VerticalMax Pooling

Cyclic Flow

Control

RedEyeOutput

Analog-to-DigitalConversion

Pixel Column

Correlated DoubleSampling (CDS)

Analog Memory

Vertical Weighted Averaging

HorizontalAccumulation

HorizontalMax Pooling

VerticalMax Pooling

Cyclic Flow

Control

RedEyeOutput

Column-parallel topologyfor streaming data locality

Page 16: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

18

Vertical access through

temporal buffering

Horizontal access through

column interconnects

Streaming patch-based access

Page 17: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Reusable Modules• Programmable kernel• Cyclic flow for reuse

Data locality for patches• Streaming processing• Column topology

19

Analog-to-DigitalConversion

Pixel Column

Correlated DoubleSampling (CDS)

Analog Memory

Vertical Weighted Averaging

HorizontalAccumulation

HorizontalMax Pooling

VerticalMax Pooling

Cyclic Flow

Control

RedEyeOutput

Analog-to-DigitalConversion

Pixel Column

Correlated DoubleSampling (CDS)

Analog Memory

Vertical Weighted Averaging

HorizontalAccumulation

HorizontalMax Pooling

VerticalMax Pooling

Cyclic Flow

Control

RedEyeOutput

Analog-to-DigitalConversion

Pixel Column

Correlated DoubleSampling (CDS)

Analog Memory

Vertical Weighted Averaging

HorizontalAccumulation

HorizontalMax Pooling

VerticalMax Pooling

Cyclic Flow

Control

RedEyeOutput

Analog-to-DigitalConversion

Pixel Column

Correlated DoubleSampling (CDS)

Analog Memory

Vertical Weighted Averaging

HorizontalAccumulation

HorizontalMax Pooling

VerticalMax Pooling

Cyclic Flow

Control

RedEyeOutput

Analog-to-DigitalConversion

Pixel Column

Correlated DoubleSampling (CDS)

Analog Memory

Vertical Weighted Averaging

HorizontalAccumulation

HorizontalMax Pooling

VerticalMax Pooling

Cyclic Flow

Control

RedEyeOutput

Page 18: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Noise-tuning mechanisms

20

Source: Wikipedia

RedEye: Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision, LiKamWa et al. [ISCA ‘16]

Mixed-signal Multiply-Accumulatew/tunable fidelity vs. efficiency

SAR ADC w/tunable-resolution vs. efficiency

Page 19: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

21

RedEyeModules

RedEyeColumns

RedEyeControl Plane

DigitallyClocked

Controller

ProgramSRAM

System Bus

Noise tuning

Kernel config

Programming

FeatureSRAM

System Bus Send Results

Flow control

RedEye Output

Optical

Analog

Digital

RedEye vision sensor architecture

Page 20: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Estimation and Evaluation

22

RedEye-caffeSim. Framework

RedEye+GoogLeNet_v1

Cadence Spectre

+ Quantization Noise Layer

+ ProcessingNoise Layer

Parametrized Behavioral

Model

https://github.com/JulianYG/redeye_sim

# Noise# Power# Timing

+ Quantized Weights

Page 21: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Admitting noise saves energy!(but our current process limits us to 40 dB)

23

Top-5 Accuracy

-9-8-7-6-5-4-3-2-10

10 20 30 40 50

log 1

0 [ C

omp.

Ene

rgy

(J) ]

Comp. Noise SNR (dB)

0

20

40

60

80

100

10 20 30 40 50

Goo

gLeN

et A

ccur

acy

(%)

Comp. Noise SNR (dB)

Energy consumption (Processing)

Page 22: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

0.01

0.10

1.00

IS 1 2 3 4 5

Ener

gy (m

J)

Depth

Image Sensor

(readout)

GoogLeNet on RedEye at different depths

Readout

(log

axis

)

RedEye reduces readout energy by >100x

24

Page 23: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Image Sensor

(readout)

Readout

(log

axis

)

RedEye reduces readout energy by >100x

at expense of processing energy

25

Processing

0.01

0.10

1.00

IS 1 2 3 4 5

Ener

gy (m

J)

Depth

Page 24: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

RedEye can help state of the art ConvNet processing efficiency by 2x

26

EyeRiss [ISCA ’16, ISSCC ‘16] Chen et al

Eyeriss+ Image Sensor:EyeRiss (Conv Layers): 5.9 mJ

Image Sensor: 1.0 mJEyeRiss (Full Layers): 2.1 mJ

Total: 9.0 mJ

EyeRiss + RedEye:RedEye (Analog Conv): 2.5 mJ

RedEye Readout: 0.001 mJEyeriss (Full Layers): 2.1 mJ

Total: 4.6 mJ

RedEyeModules

RedEyeColumns

RedEyeControl Plane

DigitallyClocked

Controller

ProgramSRAM

System Bus

Noise tuning

Kernel config

Programming

FeatureSRAM

System Bus Send Results

Flow control

RedEye Output

Page 25: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

RedEye limitations (and opportunities!)

• RedEye is bounded to 4o dB (Limits energy savings)• Unit capacitance of process technology

• ConvNet not optimized for RedEye architecture

• RedEye is strictly feed-forward (no recurrence, e.g., LSTM nets)

27

RedEye: Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision, LiKamWa et al. [ISCA ‘16]

Page 26: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Realizing RedEye chip

• Silicon validation in 65 nm TSMC◦ Non-idealities: noise, non-linearity, offset, process variation◦ Opportunities: voltage scaling, sub-threshold circuits

28

Page 27: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

App

? Raw image privacy through noisy degradation ?

• Idea: App can have vision info, not image data.

• Degrade image and features (e.g., insert noise)

• Ensure vision usability, but image privacy

` ADC

ConvNet Features

Image Reconstruction

VisionInfo

Depth 1 Reverse Depth 2 Reverse Depth 3 Reverse Depth 4 Reverse Depth 5 Reverse

“Understanding Deep Representations by Inverting Them”, Mahendran et al.

29

Page 28: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

Related Work• Hardware ConvNet acceleration

◦ Reconfigurable flexibility◦ NeuFlow: Dataflow vision processing system-on-a-chip (Pham et al, MSCS 2012)◦ Origami: A convolutional network accelerator (Cavigelli et al, GLSVLSI 2012)

◦ A dynamically configurable coprocessor for convolutional neural networks (Chakradhar et al, SIGARCH News 2010)

◦ Data Movement reduction◦ Convolution engine: balancing efficiency & flexibility in specialized computing (Qadeer et al, SIGARCH News, 2013)

◦ Memory-centric accelerator design for convolutional neural networks (Peemen et al, ICCD 2013)◦ DianNao: A small-footprint high-throughput accelerator for ubiquitous machine-learning. (Chen et al, ASPLOS 2014)◦ PRIME: A Novel Processing-in-memory Architecture for NN Computation in ReRAM-based Main Memory (Chi et al, ISCA 2016)

◦ ISAAC: A Convolutional Neural Network Accelerator with In-Situ Analog Arithmetic in Crossbars (Shafiee et al, ISCA 2016)

◦ EIE: Efficient Inference Engine on Compressed Deep Neural Network (Han et al, ISCA 2016)

◦ Eyeriss: A Spatial Architecture for Energy-Efficient Dataflow for Convolutional Neural Networks (Chen et al, ISCA 2016)

• Limited-precision ConvNets

◦ General-purpose code acceleration with limited-precision analog computation (St. Amant et al, ISCA 2014)

◦ Continuous real-world inputs can open up alternative accelerator designs (Belhadj et al, SIGARCH News 2013)◦ Minerva: Enabling Low-Power, Highly-Accurate Deep Neural Network Accelerators (Reagen et al, ISCA 2016)

30

Page 29: for Continuous Mobile Vision - roblkw.comroblkw.com/papers/likamwa2016redeye-isca_slides.pdfRedEye Analog ConvNet Image Sensor Architecture for Continuous Mobile Vision RobertLiKamWa

RedEyeModules

RedEyeColumns

RedEyeControl Plane

DigitallyClocked

Controller

ProgramSRAM

System Bus

Noise tuning

Kernel config

Programming

FeatureSRAM

System Bus Send Results

Flow control

RedEye Output

RedEyeAnalog ConvNet

Image Sensor Architecturefor

Continuous Mobile Vision

Robe r t Li K am W a l i k a m w a @ a s u . e d u

Yu nhu i H ou h o u y h @ ri c e . e d u

Yuan G ao j u l i a n y g @ s t a n f o rd . e d u

M i a Pol an s ky m i a . p o l a n s k y @ ri c e . e d u

Li n Z hon g l z h o n g @ ri c e . e d u

31

Programmable analog ConvNet execution

• Modules for design scalability

• Tunable noise for accuracy and efficiency

• Programmability for flexibility

Open-Source simulation framework:https://github.com/JulianYG/redeye_sim