memory/cache optimization

43

Upload: gage

Post on 01-Feb-2016

45 views

Category:

Documents


0 download

DESCRIPTION

Memory/Cache Optimization. Lochana Narayanan Suchitra Chandran. A Distributed BIST Control Scheme for Complex VLSI Devices. Yervant Zorian AT&T Bell Laboratories Princeton, NJ, 08540. Introduction. The problem in today’s VLSI devices. Power, noise and area overhead. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Memory/Cache Optimization
Page 2: Memory/Cache Optimization

Memory/Cache Optimization

Lochana NarayananSuchitra Chandran

Page 3: Memory/Cache Optimization

A Distributed BIST Control Scheme for

Complex VLSI Devices

Yervant Zorian

AT&T Bell Laboratories

Princeton, NJ, 08540

3/42

Page 4: Memory/Cache Optimization

Introduction• The problem in today’s VLSI devices.

– Power, noise and area overhead.

• Solution – BIST! (Built in self test)

4/42

Page 5: Memory/Cache Optimization

How BIST does it? It is used at all levels and reused at all consecutive

levels. Possible only when if BIST features are included in

devices. Devices are the building blocks – higher BIST levels

are built. So, device level BIST realization takes into account

the BIST requirements of all levels, device, MCM, board, system.

These requirements affect the BIST Execution Scheduling, hence the need for BIST Control Network.

5/42

Page 6: Memory/Cache Optimization

Existing Scheduling approaches

• Focus on optimizing the test time for random logic blocks.

• Problems in executing BIST in parallel :» Power and noise dissipation

» Higher activity rate

» Overpass the device package limits.

• New BIST scheduling process :» Power dissipation less

» Global optimization – block type, device floor plan and test time.

6/42

Page 7: Memory/Cache Optimization

New BIST Control Scheme

• Simplifies BIST Execution – Autonomous embedded block

– Simple and uniform interface protocol to communicate b/w controller and embedded blocks

– Distributed architecture

» Minimize routing cost – control elements placed close to BIST blocks

» Minimal control signals

7/42

Page 8: Memory/Cache Optimization

BIST Scheduling Process

• Analysis process where no hardware modifications are allowed.

• Prior to scheduling, 2 analysis processes are performed:

– Device partitioning

– BIST scheme selection

8/42

Page 9: Memory/Cache Optimization

Partitioning and BIST Control

• ASIC Z is a 132 pin standard device

» Partitioned into ten blocks

» Based on different criterion :

- Structural types – 4 RAMs 2 ROMs and Register File (RF)

-Random Logic blocks – RL1 and RL2

- High frequency blocks – RL3

9/42

Page 10: Memory/Cache Optimization

Partitioning and BIST Control Contd.

Each block requires Test Pattern Generator (TPG) Output Data Evaluator (ODE) BIST Resource Controller (BRC)

RL1 and RL2 – Pseudo random based TPG and polynomial based ODE

RF and 4 RAMs – 100% fault coverage TPG

ODE(RF) - provides zero loss of fault coverage

ODE(RAM)- performs output data comparison and space compaction

2 ROMs – TPG and ODE -> perform exhaustive test sets

10/42

Page 11: Memory/Cache Optimization

BIST Scheduling attributes

i. Power dissipation of each block

ii. Adjacency of blocks

iii. Type of each block

iv. Test time

11/42

Page 12: Memory/Cache Optimization

i. Power Dissipation Analysis

• BIST is executed at system clock rate• Adv. : full benefit is obtained

• Disadv. : higher activity rate -> excess power dissipation

• P=F.N.PG• F : Frequency

• N : Block size = number of grids

• PG : number of watts per active grid and activity rate (0.5 for BIST modes)

• Different modes : Normal, BIST active and BIST idle

• BIST Active – during execution of a block

• BIST Idle – during periods when it waits for other blocks to execute BIST.

• Total power dissipation = power from each block + power from input and output buffers.

12/42

Page 13: Memory/Cache Optimization

Power Dissipation Analysis Contd.

• Package limit of ASIC Z is 900mW.

• Based on the values in the table, the device power dissipation for parallel BIST execution is 2.332W.

• Hence BIST Scheduling for power optimization is necessary.

13/42

Page 14: Memory/Cache Optimization

ii. Grouping and Ordering• Create groups and proper sequence of each stage – BIST Execution

• Grouping and Ordering is dependent on the physical distribution of the blocks on the floor plan of a device.

• Grouping is done based on 2 conditions :

• BIST power dissipation has to be less than device limit

• Blocks in a group have to be physically adjacent

on floor plan.

• A profile which is the result of grouping and sequencing at device level is in a matrix format :

• Bij - block, i – single BIST stage, j – number of blocks

• For our example, we have :

14/42

Page 15: Memory/Cache Optimization

iii. Sharing and Test Time Optimization

• Sharing reduces hardware area by reducing redundancies.

• Sharing between blocks of same type: RAMs, random logic, since their BRCs are identical and TPGs and ODEs are different in parameters.

• Combine Boundary Scan with pseudo random TPGs on one hand and with ODEs on the other.

• Test time is a limited amount of time that is dedicated per device.

• BIST Execution takes only a minor fraction of the total test time as the other tests are far more time consuming.

15/42

Page 16: Memory/Cache Optimization

BIST Control Architecture

• Control operation has 4 functions:• External access to device level BIST.

• Control of BIST facilities of each block.

• Control of device BIST.

• Transfer of BIST response data.

• These functions are realized in 3 types of hierarchical controllers :

– External BIST Access Port

– BIST Resource Controllers (BRCs)

– BIST Control Network.

16/42

Page 17: Memory/Cache Optimization

External BIST Access Port

• Boundary Scan TAP is the external access port for the device BIST.

• For simple tests – use 1 controller, TAP finite machine and boundary scan instructions.

• For complex tests – separate controllers are required for each one of BIST control functions.

• BIST execution and BIST response data transfer are done via BS TAP – no additional pins dedicated for external BIST access.

17/42

Page 18: Memory/Cache Optimization

BIST Resource Controllers

• Individual BRCs have to be allocated because :– Number of blocks is in continuous growth.

– BIST schemes of each block are different.

• They are customized – TPG and ODE

• Sharing of non identical BRCs– low complexity – FSM

– Not cost effective

18/42

Page 19: Memory/Cache Optimization

BIST Control Network

• Executes the device BIST based on predetermined schedule.

• Functions :– Receives BIST execution via TAP and provides activation

signals.

– Collects and transfers BIST response when BIST completes.

• Advantages :– Division of control network – each function controls subsequent

BIST operation.

19/42

Page 20: Memory/Cache Optimization

Distributed BIST Control Network

• Centralized controllers for device level BIST control.

• Problems :– Routing area and number of control lines increase with the

increase in the number of BRCs

• For smaller number of blocks, centralized BIST control is possible.

• Optimizes cost of control lines. 20/42

Page 21: Memory/Cache Optimization

SBRIC Finite State Machine

• Distributed network has control elements called Scheduled BIST Resource Interface Controllers

21/42

Page 22: Memory/Cache Optimization

BIST control network

• Disadvantages :Accumulates signatures of all BISTed blocks to a common compactor – loss of diagnostic information.

•Advantages :

Provides not only group but also block level information.

22/42

Page 23: Memory/Cache Optimization

Conclusions- Generic BIST scheduling process and effective BIST control architecture.

- Scheduling provides power optimization.

- Control architecture provides autonomous BIST activation and capability to identify failed blocks.

Future Works- BIST network with additional diagnostic capabilities can be used for reconfiguration and repair operation.

- Development of scheduling processes that take into account multi level test restrictions.

23/42

Page 24: Memory/Cache Optimization

A Hybrid BIST Architecture and its Optimization for SoC Testing

Gert Jervan, Zebo Peng Raimund Ubar, Helena KruusLinköping University, Sweden Tallinn Technical University, Estonia

Page 25: Memory/Cache Optimization

OVERVIEW

Page 26: Memory/Cache Optimization

INTRODUCTIONINTRODUCTION

Page 27: Memory/Cache Optimization

BIST

Page 28: Memory/Cache Optimization

HYBRID BIST

Page 29: Memory/Cache Optimization

APPROACH OF THE PAPER

Page 30: Memory/Cache Optimization

TARGET HYBRID BIST ARCHIETECTURE

Page 31: Memory/Cache Optimization

TARGET HYBRID BIST ARCHIETECTURE

Page 32: Memory/Cache Optimization

COST of HYBRID BIST

Page 33: Memory/Cache Optimization

COST of HYBRID BIST

CGEN : cost related to the time for generating L pseudorandom test patterns (number of clock cycles)CMEM : related to the memory cost for storing S pre-computed testpatterns to improve the pseudorandom test setΒ, α : constants to map the test length and memory space to thecosts of the two parts of the test solutions to be mixed.

Page 34: Memory/Cache Optimization

COST CALCULATION FOR PSEUDORANDOM TEST

BIST Analysis Data

Page 35: Memory/Cache Optimization

COST CALCULATION FOR STORED TEST

Notations used

ALGORITHM 1

Page 36: Memory/Cache Optimization

Notations used

ALGORITHM 2

COST CALCULATION FOR STORED TEST

Page 37: Memory/Cache Optimization

TABU SEARCH

Page 38: Memory/Cache Optimization

RESULTS

L : length of pseudorandom sequence C: fault coverage CT : total cost of BISTS : number of test patterns generated by deterministic ATPG to be stored in BISTTG : the time (sec) needed for ATPG to generate the deterministic test setTA: the time(sec) needed for carrying out manipulations on fault tablesN : number of efficient patterns in the pseudorandom test sequenceT1,T1 : the time (sec) needed for calculating the cost curve by Algorithms 1 and 2T3 : the time (sec) to find the optimal cost by using Tabu searchTs: number of calculations in Tabu searchAcc : percentage accuracy of Tabu search solution compared to solution found from cost curve

Page 39: Memory/Cache Optimization

RESULTS

Percentage of test patterns in the optimized test sets compared to the original test sets

Page 40: Memory/Cache Optimization

RESULTS

Cost comparison of different methods.Cost of pseudorandom test is taken as 100%

Page 41: Memory/Cache Optimization

SUMMARY

Page 42: Memory/Cache Optimization

FUTURE WORK

Page 43: Memory/Cache Optimization

QUESTIONS