mipi devcon 2016: mipi c-phy - introduction from basic theory to practical implementation

37
MIPI C-PHY: Introduction From Basic Theory to Practical Implementation Mohamed Hafed Introspect Technology

Upload: mipi-alliance

Post on 15-Apr-2017

1.213 views

Category:

Mobile


53 download

TRANSCRIPT

Page 1: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

MIPI C-PHY℠: Introduction

From Basic Theory to Practical Implementation

Mohamed Hafed Introspect Technology

Page 2: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Original Spark: Three Phase Encoding!

2

GeorgeWiley,Qualcomm

1UnitIntervalofData

2.285BitsofInforma?on

Page 3: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Basic Concept of Three Phase Encoding

3

Page 4: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Three Voltage Levels Per Wire Ensure Proper Differential Reception

4

Page 5: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Always-Toggle Design Allows for Simple Clock Recovery (100% Transition Density)

5

Page 6: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Key Takeaways

6

Three-level single-ended signaling

Non-deterministic transitions based on self-clocked mapping and encoding algorithm

Page 7: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Evolution from D-PHY (1 Lane, 4 Wires)

7

Page 8: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Evolution from D-PHY (1 Lane, 4 Wires)

8

Page 9: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Evolution from D-PHY (1 Lane, 4 Wires)

9

Page 10: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Evolution from D-PHY (1 Lane, 4 Wires)

10

Page 11: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Architecturally Flexible

11

Source:MIPIAlliance

Page 12: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Mapping and Encoding

12

Page 13: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

C-PHY Data Types

13

ANALOG DIGITAL

A

B

C

•  3wiresperlane•  3-levelwires(LOW,MID,HIGH)•  Everyunitintervalmustcontain

LOW,MID,andHIGHwires•  Notwoconsecu?veiden?cal

wirestates

Symbols(3bits)

Integers(16bits)

A>B

B>C

C>A

WireStates(3bits)

Wiredifferen?al

7-symbolto16-bitmapping

Wires Wirestates

65

6 3 4 6 5 3 6

-z -y -z -x +x -z -z-y -x

02

2 4 1 0 0 0

0x7290

Page 14: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Wire States

14

A B C A>B B>C C>AWirestatename

HIGH LOW MID 1 0 0 +x

LOW HIGH MID 0 1 1 -x

MID HIGH LOW 0 1 0 +y

MID LOW HIGH 1 0 1 -y

LOW MID HIGH 0 0 1 +z

HIGH MID LOW 1 1 0 -z

ANALOG DIGITAL(3bits)

•  Awirestateisthecollec?onofA,B,andC•  6possiblewirestates

Page 15: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Symbols: Now We’re Transmitting!

15

•  Asymbolrepresentsatransi?onbetweentwowirestates•  5possiblesymbols

Symbol(3bits)

Flip Rotate Polarity

0 0 0 0

1 0 0 1

2 0 1 0

3 0 1 1

4 1 DC DC

Rotate

0 Decr.le_er

1 Incr.le_er

Polarity

0 -

1 Togglesign

Flip

0 -

1 Samele_er,togglesign.

-z+x

Example:

1

Page 16: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Mapping 7 Symbols 16-bit Integers

16

•  C-PHYdefinesamappingbetween7-symbolwordsand16-bitintegers

Numberof7-symbolwords: Numberof16-bitintegers:

65536

7-symbolwords 16-bitintegers

65536

12589unmappedwords

1-to-1mapping

{0224100} 0x7290

{3444443}

{4444444}

SyncWord(Alignmentmarker)

Post(End-of-Packetmarker)

Page 17: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Well Defined Algorithms from MIPI Alliance

17

Page 18: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

18

“Don’t Even Worry

About It”

Page 19: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Eco-System Is Developed for Tools

19

Three-PhaseSignals

DecodedData

Page 20: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Anatomy of a Packet Transmission

20

Page 21: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Practical Experiences

21

Page 22: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Tx: Both Mapping and Encoding Before Serializer

22

Page 23: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Rx: Avoiding False Sync Detection (Problem Statement)

23

Page 24: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Rx: Avoiding False Sync Detection (Solution)

24

DetectSYNCwithPre-EndasMarkerforStartofTransmission

Page 25: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

CSI-2 Long Packets in C-PHY

25

Page 26: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

CSI-2 Long Packets in C-PHY

26

Page 27: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

CSI-2 Long Packets in C-PHY

27

Page 28: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

CSI-2 Long Packets in C-PHY

28

Page 29: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

CSI-2 Long Packets in C-PHY: The Invisible SYNC

29

Page 30: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

DSI-2 Long Packets in C-PHY

30

Page 31: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

DSI-2 Long Packets in C-PHY

31

Page 32: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

DSI-2 Long Packets in C-PHY

32

Page 33: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

DSI-2 Long Packets in C-PHY

33

Page 34: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

DSI-2 Sample Protocol Analyzer Trace

34

Page 35: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

DSI-2 Sample Protocol Analyzer Trace

35

Page 36: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

Key Takeaways

36

Tx mapping and encoding in parallel domain

Rx false sync avoidance required pre-begin monitoring

Packet header definition required careful design of SYNC manipulation (both Tx and Rx)

CSI-2 & DSI-2 treat SYNC insertion differently

Page 37: MIPI DevCon 2016: MIPI C-PHY - Introduction From Basic Theory to Practical Implementation

April 10, 2014: World’s First C-PHY Interoperability!

37

Leading Image Sensor Manufacturer Test Chip

(Tx)

2.0 Gsps

First Packet Received First Eye Diagram