2. p1500-wrapper _creation

24
1 Automating P1500 Wrapper Creation for System-on-Chip (SoC).

Upload: krish-gokul

Post on 13-Oct-2015

23 views

Category:

Documents


0 download

DESCRIPTION

Boundary Testing

TRANSCRIPT

  • 5/23/2018 2. P1500-Wrapper _creation

    1/24

    1

    Automating P1500 Wrapper Creation for

    System-on-Chip (SoC).

  • 5/23/2018 2. P1500-Wrapper _creation

    2/24

    2

    Abstract

    One of the major efforts of System on Chip (SoC) design is

    integrating the Intellectual Property (IP) and verifying thecorrectness of the design.

    The purpose of this project is to create IEEE P1500 standardwrappers for any given Intellectual Property (IP) andautomating the wrapper creation .

    Wrappers are the circuitry added around an embedded coreto facilitate test reuse and to interface between a test accessmechanism (TAM) and the embedded core.

  • 5/23/2018 2. P1500-Wrapper _creation

    3/24

    Phases Of Project

    Understanding Boundary Scan architecture

    Developing a dummy module with Boundary Scanarchitecture

    Understanding P1500 architecture

    Learning Perl Scripting language

    Automation of P1500 Wrapper Creation

  • 5/23/2018 2. P1500-Wrapper _creation

    4/24

    SoC Test Problems

    Mixing technology

    Hierarchical cores

    Different core providers

    IP protection/Test reuse

    Expensive and inefficient external ATE(Automatic Test

    Equipment)

    Long test application time

    4

  • 5/23/2018 2. P1500-Wrapper _creation

    5/24

    5

    P1500 System Architecture

    Standardizes the integration of IPs into SoC environment.

    Mechanism for testing of core designs within SoC.

    Provision of a wrapper on the boundary (I/O terminals) of each core.

    A system chip complying with 1500 should contain the following hardwarecomponents

    One standard test wrapper for each core

    Signal sources and sinks for test pattern provision and reception

    On-chip TAM (Test Access Mechanism) to connect the wrapper to the

    source/sinks*(In addition to H/W component 1500 architecture uses a test-specific

    language called Core Test Language(CTL) to communicate betweencore providers and core users.)

  • 5/23/2018 2. P1500-Wrapper _creation

    6/24

    6

    User-Defined Parallel TAM

    TAM source

    1500 Wrapper

    Core 1

    WIR

    TAM-in TAM-out

    1500 Wrapper

    Core N

    WIR

    TAM-in TAM-out

    TAM sink

    Chip I/O Chip I/O.

    WSO1 WSIN.

    Wrapper Serial Controls (WSC)

    Wrapper Serial Port

    (WSP)

    WSI1 WSON

    System Chip

    P1500 System Architecture

  • 5/23/2018 2. P1500-Wrapper _creation

    7/24

    CORE

    WBY

    INPUTS OUTPUTS

    WSI

    WSO

    WRCKWRSTN WRAPPER CONTROLSIGNALS

    (ShiftWR,

    UpdateWR,

    CaptureWR)

    WRAPPER

    BOUNDARY

    REGISTER(WBR)

    WRAPPER

    BOUNDARY

    CELL(WBC)

    (WRAPPER SERIAL INPUT)

    (WRAPPER SERIAL OUTPUT)WIR

    SelectWIR

    P1500 Wrapper

  • 5/23/2018 2. P1500-Wrapper _creation

    8/24

    8

    Wrapper Components

    Chip

    Core

    WSI

    CaptureWR

    WRCK

    WSO

    ShiftWR

    I

    O

    UpdateWR

  • 5/23/2018 2. P1500-Wrapper _creation

    9/24

    9

    Wrapper Cell

    Operational events supported by wrapper cell(Type1)CaptureWRShiftWR

    UpdateWR

    *(Type 2wrapper cell will not have update register)

  • 5/23/2018 2. P1500-Wrapper _creation

    10/24

    10

    CaptureWR

    Chip

    Core

    WSI

    CaptureWR

    WRCK

    WSO

    ShiftWR= 0

    UpdateWR

  • 5/23/2018 2. P1500-Wrapper _creation

    11/24

    11

    ShiftWR

    Chip

    Core

    WSI

    CaptureWR

    WRCK

    WSO

    ShiftWR= 1

    DATA0 1 0 11 0 1 0

    0 1 0 1

    1

    0

    0

    01011

    0

    1

    0

    0

    1

    1

    UpdateWR

  • 5/23/2018 2. P1500-Wrapper _creation

    12/24

    12

    UpdateWR

    Chip

    Core

    WSI

    CaptureWR

    WRCK

    WSO

    ShiftWR

    DATA0 0 0 0

    0000

    0

    0

    0

    MuxSelect=1

    UpdateWR

  • 5/23/2018 2. P1500-Wrapper _creation

    13/24

    13

    Mandatory Instruction

    WS_BYPASS:when no operation of that core is required,

    1 bit shift path between WSI and WSO,

    WS_EXTEST: To test the interconnections betweencores,

    Wx_INTEST:To test the correctness of core module,

  • 5/23/2018 2. P1500-Wrapper _creation

    14/24

    Proposed Work

    14

    Core Core with wrapper

    Boundary Cell

  • 5/23/2018 2. P1500-Wrapper _creation

    15/24

    Core With P1500 Wrapper

    15

  • 5/23/2018 2. P1500-Wrapper _creation

    16/24

    P1500 Wrapper Module

    16

  • 5/23/2018 2. P1500-Wrapper _creation

    17/24

    Need of automation

    Practical cores being used in an SoC will have many

    numbers of pins. So to create a wrapper around a real

    core will be tiring, cumbersome and time consuming Since there may be any number of cores present in SoC,

    again creating wrappers for each core separately will be

    time consuming and complex. And it will be difficult to meet

    the time-to-market requirement .

    With automation we can meet time to market demands.

    17

  • 5/23/2018 2. P1500-Wrapper _creation

    18/24

    Project Work

    Automation is being done with help of Perl scripting.

    Input files to the Perl script

    Core module.v (Which will give information about input and output ports

    of core)

    Exclude(list of exclude pins)

    Output files of script

    Wrap.v(Wrapper module)

    Top.v(Top module of core with wrapper ) Perl --

    Working of wrapper is being tested through simulation. All mandatory

    operations( Capture, Shift and Update) were happening properly

    18

  • 5/23/2018 2. P1500-Wrapper _creation

    19/24

    Test case 1

    ############# io.v ########

    module io(a,b,c,d,e,m,n);

    input [1:0]a,b;

    input c;

    output e;

    output [1:0]d;

    output m,n;

    endmodule############ exclude #########

    m;

    n;

    19

  • 5/23/2018 2. P1500-Wrapper _creation

    20/24

    RTL Schematic for Test case1

    20

  • 5/23/2018 2. P1500-Wrapper _creation

    21/24

    Simulation Output for Test case 1

    21

  • 5/23/2018 2. P1500-Wrapper _creation

    22/24

    Result

    Automation of wrapper creation is being tested for many

    test cases for both the types of Wrapper boundary cell

    types. As we know that P1500 architecture supports different

    types of wrapper cell types. This wrapper generation

    supports two types of wrapper boundary cells.

    22

  • 5/23/2018 2. P1500-Wrapper _creation

    23/24

    Limitations and Future enhancements

    Does not support bidirectional pins.

    Current script supports two types of wrapper cells

    As part of future enhancement, the same script can bemodified so that it can be used for other types of cells to

    create wrapper around the core.

    23

  • 5/23/2018 2. P1500-Wrapper _creation

    24/24

    24

    Thank you