TLV in LunD Introduction to Top Level Verification Presenter - - PowerPoint PPT Presentation

tlv in lund
SMART_READER_LITE
LIVE PREVIEW

TLV in LunD Introduction to Top Level Verification Presenter - - PowerPoint PPT Presentation

TLV in LunD Introduction to Top Level Verification Presenter Shkelqim Lahi B.Sc.E. in Computer Engineering (Engineering College of Copenhagen 2004) M. SC. EE. In System on Chip (LTH 2006) Work experience EMP 2006


slide-1
SLIDE 1

TLV in LunD

Introduction to Top Level Verification

slide-2
SLIDE 2

2018-10-15 | Ericsson Internal | Page 2

› Shkelqim Lahi

– B.Sc.E. in Computer Engineering (Engineering College of Copenhagen 2004) – M. SC. EE. In “System on Chip” (LTH 2006) – Work experience › EMP 2006 – 2009 › ST-Ericsson 2009 – 2013 › Ericsson 2013 - …. – Verification Engineer

Presenter

slide-3
SLIDE 3

2018-10-15 | Ericsson Internal | Page 3

› Radio Product and variant Lund

– Radio, analog and mix signals ASICs for 5G – FPGA Products – Design & Verification in all levels

› SOC Level I&V

– Top Level Verification for Radio ASICs

ERICSSON in LUND

slide-4
SLIDE 4

2018-10-15 | Ericsson Internal | Page 4

Top Level Verification in focus

› SoC Verification › What do we do? › TLV SW environment › Why Verification? › TLV in other areas › Q&A

Agenda

slide-5
SLIDE 5

2018-10-15 | Ericsson Internal | Page 5

SOC

CPU

interconnect

B1 B2 B3 CRC MEM B4 B5 B7 B6

Subsystem A

SoC

slide-6
SLIDE 6

2018-10-15 | Ericsson Internal | Page 6

› Block Verification

– Block functionality – Protocol verification – Full coverage e.g. code coverage

› Subsystem Verification

– Integration of blocks – Functionality of combined blocks

› Top Level Verification

– Integration test – Functional test of full system – Pad verification

Verification Scopes

CPU

interconnect

B1 B2 B3 CRC MEM B4 B5 B7 B6

Subsystem A

SoC

slide-7
SLIDE 7

2018-10-15 | Ericsson Internal | Page 7

› Full responsability for the functionality of the ASIC/SoC › Design implemented according to the Specification › Involved in ASIC Bring up activities

TLV Mission

slide-8
SLIDE 8

2018-10-15 | Ericsson Internal | Page 8

› SoC Verification › What do we do? › TLV SW environment › Why Verification? › TLV in other areas › Q&A

Agenda

slide-9
SLIDE 9

2018-10-15 | Ericsson Internal | Page 9

› Project start

– Workshop and information meetings – Verification Planning – Prepare SW and TB environment for the Project – CPU architecture and compiler › ARM CA53, CA9, CA7, CA5 › ARM CM4, CM7 › ARM CR4

WHAT do WE DO?

Execution pre exe Production Silicon

slide-10
SLIDE 10

2018-10-15 | Ericsson Internal | Page 10

› Sanity test

– Boot all CPUs and Cores › Clk & rst, Memories, Interconnect – Interconnect test › Access every block inte the system, one register on every block – Memory test › Access memories, few locations

WHAT do WE DO?

Execution pre exe Production Silicon

slide-11
SLIDE 11

2018-10-15 | Ericsson Internal | Page 11

› Integration test

– Integration test of Blocks with external interfaces (B1, B2) › E.g. UART, I2C, DDR – Integration test of internal blocks (B3) › E.g Timer, Interrupt controller – Integration test of Subsystems (SubSys A) › Verify all interfaces of the subsystem

WHAT do WE DO?

Execution pre exe Production Silicon

slide-12
SLIDE 12

2018-10-15 | Ericsson Internal | Page 12

› Functional test

– Functional test of complex blocks › Complement to Integration test – Functional use cases including several blocks › Different complexity levels – All supported boot modes – Cold and warm reset logic – Clock tree verification

WHAT do WE DO?

Execution pre exe Production Silicon

slide-13
SLIDE 13

2018-10-15 | Ericsson Internal | Page 13

› Netlist Simulations

– Run simple tests on the synthesized netlist – Without and with SDF (Timing information)

› Regression Run

– Rerun all the tests in Regression mode – Quality stamp before ”tape out”

WHAT do WE DO?

Execution pre exe Production Silicon

slide-14
SLIDE 14

2018-10-15 | Ericsson Internal | Page 14

› ASIC Bring up

– Run tests on the Silicon after production – Verify package – Sanity test of all external interfaces

› Support SW community in getting up to speed

– Help debug HW related issues

WHAT do WE DO?

Execution pre exe Production Silicon

slide-15
SLIDE 15

2018-10-15 | Ericsson Internal | Page 15

› SoC Verification › What do we do? › TLV SW environment › Why Verification? › TLV in other areas › Q&A

Agenda

slide-16
SLIDE 16

2018-10-15 | Ericsson Internal | Page 16

› The SW driven flow uses the existing cores in the DUT to verify the integration and/or functionality of the design › Using SW the system is verified as it is intended to be used › Since the test cases are implemented in SW they can easily be reused on different platforms

– Virtual Platforms – Emulation – RTL Simulation – ASIC Bring-Up

› Directed tests are primarily used in the SW driven flow

– Exhaustive testing is more suitable for constrained random flows – But there are also tools available on the market that can auto generate parts of the SW => enable exhaustive testing using SW

SW Driven Verification

slide-17
SLIDE 17

2018-10-15 | Ericsson Internal | Page 17

Flexible Architecture Software Test bench › TEST SW

– Test SW including drivers and register mapping, in C. – ELF and HEX files are generated to be loaded into the memories.

› TC specific TB files

– Additional DUT connections – Verification components – Assertions – Parameters and forces

› Common TB files

– DUT – Standard TB components – Optional external memories

Test Architecture

slide-18
SLIDE 18

TEST SW

slide-19
SLIDE 19

2018-10-15 | Ericsson Internal | Page 19

SW architecture

› C base SW

Reg Description

CPU Config

  • Vector table
  • IRQ setup
  • MPU/MMU

Drivers for Common blocks Support functions

  • Printouts
  • System setup
  • Test functions

SW Test Cases gcc compiler

SW Image

slide-20
SLIDE 20

2018-10-15 | Ericsson Internal | Page 20

› TC categories

– Sanity – simple tests for sanity purpose (e.g. boot) – Register – complete register test of a block – Integration – Integration test of a block – Function – complex functional tests of the one or more blocks or subsystem – ABU – Sw test for ASIC bring up activities

Test cases

slide-21
SLIDE 21

SW Testbench

slide-22
SLIDE 22

2018-10-15 | Ericsson Internal | Page 22

SW Driven TB

Bridge

Tester

Tester B1

Tester CRC

clk rst

SW Image

slide-23
SLIDE 23

2018-10-15 | Ericsson Internal | Page 23

INTegration Test with assertion

Bridge

Tester

SW Image

Assertion

slide-24
SLIDE 24

2018-10-15 | Ericsson Internal | Page 24

› How to debug the SW when running in simulation environment?

– Printout! › Printf vs. Costumized functions

printf(“read data %d from memory\n”, data); TST_REPORT_SNS(“read data “, data, “from memory\n”);

› UART vs Costumized Tester

  • Uart is slow in simulation
  • Use costumized test component with dedicated registers

for printouts – ARM Tarmac log › “Tarmac is a textual trace output. Fast Models supports the generation of traces that consistently track the execution and related activities in the model, particularly those that affect the state of the modeled IP.”

Debug SW

slide-25
SLIDE 25

2018-10-15 | Ericsson Internal | Page 25

› Tarmac log example

Tarmac log

slide-26
SLIDE 26

2018-10-15 | Ericsson Internal | Page 26

SW debugger

slide-27
SLIDE 27

2018-10-15 | Ericsson Internal | Page 27

› SoC Verification › What do we do? › TLV SW environment › Why Verification? › TLV in other areas › Q&A

Agenda

slide-28
SLIDE 28

2018-10-15 | Ericsson Internal | Page 28

Source: https://blogs.mentor.com/verificationhorizons/blog/2016/10/04/part-8-the-2016-wilson-research-group-functional- verification-study/

Increasing demand

› The 2016 Wilson Research Group Functional Verification Study

slide-29
SLIDE 29

2018-10-15 | Ericsson Internal | Page 29

Source: https://blogs.mentor.com/verificationhorizons/blog/2016/09/25/part-7-the-2016-wilson-research-group-functional- verification-stud/

Complex SOC

slide-30
SLIDE 30

2018-10-15 | Ericsson Internal | Page 30

timeplan

Source: https://blogs.mentor.com/verificationhorizons/blog/2016/10/04/part-8-the-2016-wilson-research-group-functional- verification-study/

slide-31
SLIDE 31

2018-10-15 | Ericsson Internal | Page 31

› Interesting

– Different blocks and tools

› Challenging

– Complex functionality

› Big responsibly

– Responsible for the functionality of a ”very” expensive product

› Variation

– Long project with various work packages – Work with both SW & HW

Working in TLV

slide-32
SLIDE 32

2018-10-15 | Ericsson Internal | Page 32

› SoC Verification › What do we do? › TLV SW environment › Why Verification? › TLV in other areas › Q&A

Agenda

slide-33
SLIDE 33

2018-10-15 | Ericsson Internal | Page 33

› SoC on FPGAs

– Zynq UltraScale from Xilinx

› Reuse between Simulation and Lab environment

SW driven on FPGA

slide-34
SLIDE 34

2018-10-15 | Ericsson Internal | Page 34

› Combined analog and digital design › Perfect solution

– SPICE + RTL simulations – Very slow or not possible due to complexity

› Use model for analog design

– Real Number Modeling RNM – SystemVerilog SV-RNM › Supported by IEEE 1800- 2012

Mix signal ASIC

slide-35
SLIDE 35

2018-10-15 | Ericsson Internal | Page 35

› Different power regions › Isolation between the regions › Simulate with UPF flow

Power aware

slide-36
SLIDE 36

2018-10-15 | Ericsson Internal | Page 36

› SoC Verification › What do we do? › TLV SW environment › Why Verification? › TLV in other areas › Q&A

Agenda

slide-37
SLIDE 37