+ All Categories
Home > Documents > Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal...

Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal...

Date post: 09-Apr-2018
Category:
Upload: dinhthuan
View: 253 times
Download: 10 times
Share this document with a friend
23
Accelerated SOC Verification Using UVM Methodology for a Mixed - Signal Low Power Design Giuseppe Scata – Texas Instruments ([email protected]) Ashwini Padoor – Texas Instruments ([email protected]) Vladimir Milosevic – ELSYS Eastern Europe ([email protected]) © Accellera Systems Initiative 1
Transcript
Page 1: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

Accelerated SOC Verification Using UVM Methodology for a Mixed-

Signal Low Power Design

Giuseppe Scata – Texas Instruments ([email protected])Ashwini Padoor – Texas Instruments ([email protected])

Vladimir Milosevic – ELSYS Eastern Europe ([email protected])

© Accellera Systems Initiative 1

Page 2: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

Overview Introduction

• Unified SoC flow for directed and constrained random verification approach

DUT Overview • DUT Overview – I am Mixed Signal

SoC TB Architecture Overview• SoC Testbench: An Overview • SoC Testbench: Stimuli• SoC Testbench: Direct Testing • SoC Testbench: TB/SW synchronization• IPDV Reuse Examples• uVC: Use-Model• Checkers and Assertions• Functional Coverage Tracking• Test End Mechanisms

Going AMS

Results & Observations

© Accellera Systems Initiative 2

Page 3: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

The microcontroller SoC verification strategyrefinement to the next level:

Unified flow from RTL to AMS

Reduction of development cycles via reuse of IP-DVcomponents

Uncover each possible design surprise by usingalways on checkers / scoreboards

Adherence to Industry standard methodology: UVM

Support for direct and random verificationapproaches

© Accellera Systems Initiative 3

The Motivations

Page 4: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

DUT – I am Mixed Signal

Design is not just digital: Analog On Top (AOT) LowPower Mixed Signal Design;

The toplevel is an analog netlist instantiating RealNumber Models and the digital top.

Netlist is automatically generated by analog toolnetlister – The tool extracts the design hierarchydetails until it finds a Verilog view of a cell.

© Accellera Systems Initiative 4

Page 5: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

SoC Testbench: An Overview

The testbench framework contains the following components:

Verilog segment: Plain Verilog part;

System Verilog segment: UVM compliant components;

Hardware/Software synchronization logic;

© Accellera Systems Initiative 5

Page 6: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

SoC Testbench: An Overview

© Accellera Systems Initiative 6

SoC Analog toplevel

V regulators(WREAL/Spice)

Pads(WREAL/Spice)

…(WREAL/Spice)

Oscillators(WREAL/Spice)

Digital Top

ARM

Core

ROM/RAM

MEMCTL NVM

Timer

AH

B/A

PB

Bri

dg

e

SPI

GP

IO/P

ins

Power/

Reset/ClkControl

DEBUG

JTAG

TB

Verilog Segment

Backdoor

memory access

Power supply (WREAL/electrical)

SV Segment

Inte

rface

s Active

uVCs

Passive

uVCs

UVCs Monitors connections

UVCs Drivers Connections

Ext Clock

generation

Reset Control

Page 7: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

SOC Testbench: Stimuli

© Accellera Systems Initiative 7

The testcase definition constitutes:

A System Verilog file that defines a SV Sequence;

A Software file (C/ASM/memory image) which definesthe data which needs to be loaded into the SoC memory;

Optional support files (linker command files,configuration files, …);

Page 8: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

SOC Testbench: Stimuli

© Accellera Systems Initiative 8

Universal Verification Component (uVC) deployment for generating the traffic :

SOC external Stimuli: The stimulus generation onexternal I/O via the uVCs;

SOC software Stimuli: uVC based constrained randomsoftware data handling using mailbox mechanisms;

Handling Stimulus on multiple interfaces in a controlledway: multiple uVC integration using Virtual sequencer;

Page 9: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

SoC Testbench: Direct Testing

© Accellera Systems Initiative 9

Allow “legacy” direct verification methodology in Verilog stylevia instantiating a dummy sequence that just waits for the “testend” event :

class `tc_name extends uvm_test;

soc_tb ve;

`uvm_component_utils(`tc_name)

function new(…);

super.new(name,parent);

endfunction

virtual function void build_phase(uvm_phase phase);

super.build_phase(phase);

uvm_config_db#(uvm_object_wrapper)::set(this,

"ve.virtual_sequencer.run_phase",

"default_sequence", sw_seq::type_id::get());

endclass : `tc_name

initial begin

// Verilog direct test

// paired with a C file

// testend event via SW

// or via task call

end

Page 10: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

SoC Testbench: TB/SW Synchronization

© Accellera Systems Initiative 10

int main ()

{

while (1) {

// synchronize with TB

TB_synch = 1;

// Use random data got from TB

switch (DATA_MAILBOX1) {

case 1: fct1 (DATA_MAILBOX2); break;

case 2: fct2 (); break;

case 3: fct3 (DATA_MAILBOX3); break;

case 4: test_end(); break;

default: ERROR++;

}

}

void fct1 (int);

void fct2 (void);

void fct3 (uint32_t);

C-test issues a write to

dedicated memory locationwith a predefined key Testbench

uVC sequence

Testbench detects a

write to TB_synch’saddress and generatesan event according to

its value;

uVC reacts to the testbench’s

event by storing randomconstrained data into the device’smemory (DATA_MAILBOX*) thus

achieving randomization of the C-code execution.

Page 11: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

IP-DV uVC Reuse

Reused components:

Any passive component from IP DV – monitors:

- Functional coverage definitions;

- Protocol checkers;

Any active component - driver that drives external I/Os to the DUT:

- In SoC environment drivers are connected to the DUT boundary (Example:Serial interfaces uVC);

Redundant components:

Any active component that drives signals internal to the SOC:

- Interconnect signals (APB, AHB) – use C code to generate stimuli;

- Signals connected to other IPs (Clock, Power, Reset, etc.) – use specific scenarios to trigger these signals by various SOC internal blocks;

© Accellera Systems Initiative 11

Page 12: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

© Accellera Systems Initiative 12

SoC DV Environment

DUT

SPI

Module

GP

I/OAP

B

BR

IDG

E

Power, Clock, Reset, Control IPs…

IP DV Environment

System Verilog TB

APB I/f

APB uVCACTIVE

Driver

Monitor

CTRL I/f

CTRL uVCACTIVE

Driver

Monitor

SPI I/f

SPI uVCACTIVE

Driver

Monitor

DUT - SPI

Module

IP-DV uVC Reuse

REU

SE

APB SPI I/F

Ctr

l

System Verilog TB

APB I/f

APB uVCPASSIVE

Driver

Monitor

CTRL I/f

CTRL uVCPASSIVE

Driver

Monitor

SPI I/f

SPI uVCACTIVE

Driver

Monitor

SPI I/F

Page 13: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

uVC: Use-Model

Scoreboards are automatically configured accordingto the transactions based on IP configuration throughthe register interfaces;

Availability to check design behavior automaticallyreduces testcase development effort;

Checkers always are enabled for any testcase, andeven if application software is run;

© Accellera Systems Initiative 13

Page 14: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

uVC: Use-Model

© Accellera Systems Initiative 14

DUT

Mem_CtrlMemory

Bank

System Verilog TB

MEMDATA I/f MEM

Transaction

Scoreboard

APB I/f

AHB I/f

MEMDATA

Monitor

APB Monitor

AHB Monitor

MEMCTL

Monitor

Config

Automatic MEMCTL Monitor based on detected MEMCTL

configuration; MEMCTL monitor controls MEMScoreboard operation;

Data I/FAHB

AP

B

Page 15: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

Checkers and Assertions

Checkers are implemented at various design abstraction levels to ensure design correctness

© Accellera Systems Initiative 15

Data Checkers

Protocol Checkers

Inbuilt Self Checking Mechanisms

Page 16: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

Checkers and Assertions

© Accellera Systems Initiative 16

Always running assertions based checkers are implementedto ensure the clock and power management blockfunctionality correctness at system level.

System Verilog TB

DUTDigital Top

Analog

Blocks

(Reg, Osc,

BG, …)

CPU

Peripherals

…Clock system

Power Management

Assertions

Page 17: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

© Accellera Systems Initiative 17

task ams_regulator_chk();

forever begin

@(posedge vif.tbclk iff (vif.resetall === 0 &&

cfg.checkers_en == 1 && (vif.vdd_lvl < `VDD_LVL_MIN)))

nRST_AMS_CHK: assert(vif.pmucore_poresetn_i == 1'b0)

else begin

`uvm_error(get_type_name(),

$psprintf("CORE_RESET: %1b,not expected (low Reg

Voltage LvL) @ %0t!\n", vif.pmucore_porstn, $time))

end

end

endtask

Checkers and Assertions

// If RESET_PIN is risen, in next cycle RESET_SD and RESET_SYS has to be asserted

property reset_pin_asserted;

disable iff (checkers_en == 0 || sig_reset == 0)

$rose(sig_reset_pin) |-> ##1 (~sig_reset_sdn & ~sig_rst_sysn);

endproperty

assert property (reset_pin_asserted)

else begin

`uvm_error("RSTCTRL_IF", $sformatf("\n Reset pin should

assert RESET_SD and RESET_SYS in next cycle @ %0t!\n", $time))

end

Page 18: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

© Accellera Systems Initiative 18

Standard UVM Checkers for protocol checking

UVM Scoreboard implementation for data paths

Software checkers for register / some direct tests

Checkers and Assertions

Page 19: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

Functional Coverage Tracking

© Accellera Systems Initiative 19

Coverage groups in uVC Monitors – standard uVMmethod;

VITAGs – Verification Item Tags:

– Implemented in TB as SV Assertions;

– Manually triggered to indicate PASS/FAIL status:

• C code - library function call;

• Verilog testcase - dedicated task call;

– Used where automatic checkers cannot be used

– Track a directed scenario or any part of a directed scenario;

Page 20: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

Test End Mechanisms

The testcase end declaration:

uVC sequence end;

Software: calling a “test_end()” function;

Verilog (direct testing): generating a “test end” event;

Pass / Fail criteria: No uVCs errors;

No assertions errors;

No software errors (error counter in memory);

At least one success event;

© Accellera Systems Initiative 20

Page 21: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

Going AMS

• Allows to use of the goodness of the digital verificationflow;

• Possibility to mix abstraction level of analog blocks(models/transistor level) via configuration file;

© Accellera Systems Initiative 21

Verilog Netlist

(WREAL behavioralmodels)

Block A

Block A1

Block A2

Block B

SPICE Netlist

Block A

Block A1

Block A2

Block B

Block B1

Simulated Netlist

Block A

Block A1

Block A2

Block B

Block B1

Configfile

Verilog WREAL models

SPICE transistorlevel

Page 22: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

Results and Observations

The UVM based verification infrastructure helped us:

To have a single verification environment for digital,AMS and software validation;

Helped us to overcome IP verification gaps;

To maximize verification quality in a very minimalschedule;

© Accellera Systems Initiative 22

The silicon validation is showing positive results

Page 23: Accelerated SOC Verification Using UVM … SOC Verification Using UVM Methodology for a Mixed-Signal Low Power Design Giuseppe Scata –Texas Instruments (g-scata@ti.com) Ashwini Padoor

Questions ?

Thank you !

© Accellera Systems Initiative 23


Recommended