MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

31
Effective verification of stacked and layered protocols Ofir Michaeli MIPI VIP R&D Team Leader Cadence Design Systems, Inc.

Transcript of MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Page 1: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Effective verification of stacked and layered protocols

Ofir Michaeli MIPI VIP R&D Team Leader Cadence Design Systems, Inc.

Page 2: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Overview

Page 3: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

MIPI M-PHY overview • MIPI M-PHY is a mature Protocol. Current version is M-

PHY 4.0 and the WG is working on version 4.1.

Page 4: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

MIPI UniPro overview

Page 5: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

MIPI UniPro overview •  UniPro is a mature Protocol. Current version is UniPro 1.61

(bound to MPHY 3.1) and the WG is working on version 1.8. •  Vast infrastructure support –

•  Application notes with Q&As. •  CTS (Conformance Test Suite). •  IOT (Interoperability) events. •  IPs, VIPs, Test equipment and protocol analyzers.

•  Key Features – •  Low footprint on power and area. •  Bi-directional. •  Application agnostic. •  Easy to use! •  Guaranteed and in-order delivery of payload.

Page 6: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

UFS overview •  UFS stands for Universal Flash Storage. •  UFS is high performance storage interface designed for

use in computing and mobile systems requiring low power consumption (smart phones, tablets, etc.)

Page 7: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

VIPcore

Pre-Silicon Verification

UserfeedstheDUT’sspecificConfigura:onthroughPureViewGUI

Confi

gura)on

File

SOMA/U

VMClass

BFM

Monitor

PureSpec UI

DUT

TestSuite

Native Coverage e/SV

NL Tests

TL Tests

DME Tests

PA Tests

DLL Tests

DUTspecificinfois

created

VIPconfiguredperSOMA,

readytotestDUT

vPlan,CoverageandTestSuitearefiltered

perSOMAparameters

Page 8: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

•  Interfaces – Verifying connection to Upstream/Downstream Layers: •  RMMI – Physical Layer (M-PHY) •  CPort interface – Application Layer (UFS/ CSI3) •  UniPro DME interface.

•  Backward compatibility – Verifying compatibility with designs implementing older versions of the specification.

•  Verifying new features or features that changed between version.

•  Unclear/ Vague Spec. description (for example Deep SAVE state).

•  Running with different configurations or with different set of supported features.

Verification Challenges

Page 9: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Capability Exchange •  New PACP introduced:

•  How does a device behave if no PACP_CAP_EXT1_ind is received or silently discarded.

•  TX_LCC_Enable and LINE-CFG behavior at the end of burst.

Page 10: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Interfaces •  RMMI (Reference M-PHY MODULE Interface) –

•  Optional. Described in M-PHY Annex •  UniPro SAPs (Service Access Points) VS. M-PHY Signaling

Interface

•  CPort interface – •  Informative. Described in UniPro Annex.

•  DME interface – SAPs only.

Page 11: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

How can a VIP help? •  Checks protocol compliance as per protocol specification. •  Provides full coverage model. •  Generates and drives test sequences. •  VIP interface is flexible –

•  No constraints to vendor capabilities. •  Can be configured with different feature support/ capability settings.

•  Developed independently from DUT.

•  Make vs. Buy: •  man years of development. •  reused across many designs.

TestSequences

StateMachines

ProtocolChecks

CoverageModel

Verifica)onPlan

Con

figur

atio

n Deb

ug

Methodology-Independent I/F

Mul:-LanguageTestbenchI/F

Core

VIP

DUT

Page 12: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

So how do we verify effectively?

Test Plan

Verification Plan

Test And

Debug

Coverage Analysis Verification

Environment

Page 13: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Verification should start as early as possible!

13

Page 14: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Verification Plan • Mapping each line in the specification to a verification

item. • Mapping each item in the plan to a coverage item in the

model.

Page 15: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Understand what you want to test and how to

test it!

15

Page 16: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

•  How much is enough? How much is too much? •  PA Hibernate description – 3 pages, 32 Test scenarios,

Thousands of Test cases.

Test Plan

Page 17: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Choose verification languages and

methodologies wisely!

17

Page 18: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Verify all interfaces!

18

Page 19: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

UniPro VIP

Data Link (L2)

PHY Adapter (L1.5)

PHY (L1)

Partial UniPro DUT connected to DLL+PA only UniPro VIP using RMMI

Dev

ice

Man

agem

ent E

ntity

(D

ME

)

UniPro DUT MP

MP

MP

RMMI

Page 20: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

UniPro VIP

UFS MM

Transport (L4)

Network (L3)

Data Link (L2)

PHY Adapter (L1.5)

PHY (L1)

UniPro DUT connected to UFS Device VIP using RMMI and UniPro Application VIP using CPort

Dev

ice

Man

agem

ent E

ntity

(D

ME

) UniPro DUT

MP

MP

MP

MP

MP

MP

MP

MP

RMMI

UniPro Application

CPort

Page 21: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

UniPro VIP

UFS MM

Transport (L4)

Network (L3)

Data Link (L2)

PHY Adapter (L1.5)

PHY (L1)

UFS Host DUT connected to UFS Device VIP using RMMI

Dev

ice

Man

agem

ent E

ntity

(D

ME

)

UFS Host DUT (fullstack) MP

MP

MP

MP

MP

MP

MP

MP

RMMI

Page 22: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

UFS MM

Transport (L4)

Network (L3)

Data Link (L2)

PHY Adapter (L1.5)

PHY (L1)

UFS Host DUT connected to UFS Device VIP using Serial interface

Dev

ice

Man

agem

ent E

ntity

(D

ME

)

UFS Host DUT (fullstack)

UniPro VIP

DPDN

MP

MP

MP

MP

MP

MP

MP

MP

Page 23: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

M-PHY DPDN VIP

M-PHY DUT connected to M-PHY VIP using RMMI and Serial interface

MPHY DUT

RMMI

DPDN

M-PHY RMMI VIP

Page 24: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Use a PASSIVE agent!

24

Page 25: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Verification Environment

Verifica:ontestbench

Ac:veMasterVIP

Agent

PassiveSlaveVIP

Agent

Slave

DUT

Protocol Lines

Protocolcheckingandcoveragecollec:onconfigura:onofpassiveagentmustmatchDUTconfigura:on

Genera:onofprotocoltraffic

Page 26: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Invest in tools!

26

Page 27: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Test and Debug

Page 28: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Test and Debug

Page 29: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Always make sure you’re covered!

29

Page 30: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Coverage analysis

Page 31: MIPI DevCon 2016: Effective Verification of Stacked and Layered Protocols

Effective verification of stacked and layered protocols

Ofir Michaeli MIPI VIP R&D Team Leader Cadence Design Systems, Inc.