design examples: sram, buck , adc - workcraft2016/12/11  · power electronics context efcient...

56
Design examples: SRAM, buck, ADC Andrey Mokhov, Alex Yakovlev Danil Sokolov, Victor Khomenko Newcastle University, UK async.org.uk; workcraft.org

Upload: others

Post on 27-Mar-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Design examples:

SRAM, buck, ADCAndrey Mokhov, Alex Yakovlev

Danil Sokolov, Victor Khomenko

Newcastle University, UKasync.org.uk; workcraft.org

Page 2: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Bit cell

Conventional 6T SRAM

Reading: precharge bit lines, assert WL, sense bit line changes

Page 3: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Write driverBit cell

Conventional 6T SRAM

Writing: set data lines, assert WL and WE, wait for a while…

Page 4: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Problem: how long to wait?

Page 5: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

SRAM 6T cell delays are difficult to match accurately

– When Vdd = 1V, SRAM read delay is ≈50 inverters

– When Vdd = 190mV, SRAM read delay is ≈158 inverters

– Read and write delays scale differently with Vdd

Conventional solutions

– Use different delay lines for different ranges of Vdd

– Duplicate an SRAM line to act as a reference delay line

– Need voltage references, costly in area and energy

Asynchronous solution with completion detection

– Speed-independent, free from voltage references

– Developed by A. Baz et al. (PATMOS 2010, JOLPE 2011)

Problem: how long to wait?

Page 6: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Bit cell with CDBit cell

Low-level completion detection

True completion detection both for reading and writing

Too costly!

Page 7: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Write driverBit cell

Back to conventional 6T SRAM

Idea 1: completion detection is possible when the bit is flipped

Idea 2: read before writing to check if the bit will be flipped

Page 8: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Specification: read scenario

Page 9: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Specification: write scenario

Page 10: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Read Write

Specification: composing scenarios

Page 11: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Asynchronous SRAM controller

We will design a provably correct implementation in Part II

Hand made, hence not guaranteed to be speed-independent

Page 12: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Tolerating variable voltage supply

Page 13: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Tolerating variable voltage supply

Low voltage, slow response High voltage, fast response

Page 14: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Trading energy for performance

Page 15: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Specification: read scenario

Page 16: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Modelling bit line signals B0 and B1

Page 17: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Adding bit line signals to read scenario

First step: how do we

implement bit_lines_11?

Page 18: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Adding bit line signals to read scenario

Next step: implement

bit_lines_01_or_10?

Page 19: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Adding bit line signals to read scenario

Not done: bit line signals

may change when Rr=0

Page 20: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Memory is inherently asynchronous

– Read & write completion can be reliably detected

– Conventional synchronous ‘handcuffs’ (matching delay lines) are clumsy and costly

Typical ‘little digital’ control, fully supported by

Workcraft design, synthesis and verification flow

Ongoing and future work – you can contribute!

– Integrate asynchronous SRAM into a real system

– Opportunity for new memory architectures

Summary

Page 21: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Multiphase Buck Converter

Page 22: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Motivation

A2D D2A

IP cores (big digital)

level shifters

sensorssynchronisers

sanitisers

powerconverters

control for analog layer (little digital)

slow fast local

infrastructure

digital

analog

sensor/timing/energy

time bands

Legend:

design automationscope for

• Analog and digital electronics are becoming more intertwined

• Analog domain becomes more complex and itself needs digital control

Page 23: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Power electronics context

• Efficient implementation of power converters is paramount

• Extending the battery life of mobile gadgets• Reducing the energy bill for PCs and data centres

(5% and 3% of global electricity production respectively)

• Need for responsive and reliable control circuitry

• Millions of control decisions per second for years• An incorrect decision may permanently damage the circuit

• Need for EDA (little digital vs big digital design flow)

• RTL flow is optimised for synchronous data processing• Ad hoc asynchronous solutions are prone to errors

and cannot be verified

Page 24: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Synchronous vs asynchronous control

• Synchronous control

Conventional RTL design flow

Slow response (defined by the clock period)

Power consumed even when idle

Non-negligible probability of a synchronisation failure

• Asynchronous control

Prompt response (delay of few gates)

No dynamic power consumption when inactive

Non-conventional methodology and tool support

Page 25: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Basic buck converter

V_nmos

V_pmos

I_0

R_lo

ad

PMOS

NMOS

I_max

gp_ack

oc

uv

zc

gn_ack

gp

gn

over-current

zero-crossing

analog buck

digitalcontrol

V_refunder-voltage Operating modes

• Under-voltage (UV)• Over-current (OC)• Zero-crossing (ZC)

UV UV OC

I_max

current no ZC late ZC

OC

early ZC

PMOS OFF

ZC

PMOS O

FF

NMOS O

N

NMOS OFF

ZC

NMOS O

FF

PMOS

ON

NMOS

OFF

NMOS O

N

PMOS O

FF

PMOS O

N

UV OC

timeNMOS

OFF

PMOS

ON

I_0

Page 26: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Synchronous design

. module control (clk, nrst, oc, uv, zc, gp_ack, gn_ack, gp, gn);

. input clk, nrst, uv, oc, zc, gp_ack, gn_ack;

. output reg gp, gn;

. always @(posedge clk or negedge nrst) begin

. if (nrst == 0) begin

. gp <= 0; gn <= 1;

. end else case ({gp_ack, gn_ack})

. 2’b00: if (uv == 1) gp <= 1;

. else if (oc == 1) gn <= 1;

. 2’b10: if (oc == 1) gp <= 0;

. 2’b01: if (uv == 1 || zc == 1) gn <= 0;

. endcase

. end

. endmodule

.

RB

CK

D Q

SB

CK

D Q gn

gp

gp_ack

oc

gn_ack

uv

zc

nrst

clk

• If clock is slow, the control is unresponsive to the buck changes

• If clock is fast, it burns energy when the buck is inactive

Page 27: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Asynchronous design

• STG specification

• Speed-independent implementation

Page 28: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Multiphase buck converter

R_lo

ad

V_nmos

V_pmos

V_nmos

V_pmos

analog buck

PMOS

NMOS

PMOS[N]

NMOS[N]

digital

oc

zc

ocN

uv

zcN

gn_ackN

gn_ack

gp

gp_ack

gn

gp_ackN

gpN

gnN

hl

over-current

I_0 (I_neg)

I_max (I_0)

I_max (I_0)

I_0 (I_neg)

V_ref

zero-crossing

under-voltage

V_minhigh-load

V_maxover-voltage

ovbasic

convert

er

control

mult

iphase c

onvert

er

• Activation of phases

• Sequential• May overlap

• More operating modes

• High-load (HL)• Over-voltage (OV)

• Transistor min ON times

• PMIN for PMOS• NMIN for NMOS• PMIN+PEXT for

PMOS at first cycle

Page 29: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Synchronous design

• Two clocks: phase activation (slow) and sampling (fast)• Conventional RTL design flow for phase control• Need for multiple synchronizers (grey boxes)

Page 30: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Asynchronous design

• Token ring architecture, no need for phase activation clock• No need for synchronisers• A4A design flow for phase control

Page 31: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

A4A design flow

informal design intent

(waveforms, phase diagrams)

architectural decomposition

and component formalisation

formal specification of components

(signal transition graph)

logic synthesis & technology mapping

(Petrify, Punf, MPSat)

verification report

(violation traces)

reachability report

(hazard traces)

signoff report

(timing violations)

speed-independent components

(Verilog netlist)

system integration

(Workcraft)

little digital asynchronous controller

(Verilog netlist)

sanity check

(Punf, MPSat)

functional verification

(PComp, Punf, MPSat)

design concepts

timing verification

(PrimeTime)

gate library

A2A interfaces

specification and synthesis verification

and validation

libraries and

design guidelines

manual effort

offline testing features

and place & route

conventionaldesign flow

Page 32: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

A2A components

• Interface analog world of dirty signals

• Provide hazard-free sanitised digital signals

• Basic A2A components

• WAIT / WAIT0 – wait for analog input to become high / low and

latch it until explicit release signal

• RWAIT / RWAIT0 – modification of WAIT / WAIT0 with a possibility

to persistently cancel the waiting request

• WAIT01 / WAIT10 – wait for a rising / falling edge

• Advanced A2A components

• WAIT2 – combination of WAIT and WAIT0 to wait for high and low

input values, one after the other.

• WAITX – arbitrate between two non-persistent analog inputs

• WAITX2 – behaves as WAITX in the rising phase andas WAIT0 in the falling phase

Page 33: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

WAIT element

• Interface • STG specification

• ME-based solution • Gate-level implementation

can be removed

Page 34: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Asynchronous phase control

Page 35: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Design of asynchronous components

• Token control

• STG specification

• Speed-independent implementation

Page 36: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Simulation setup

• Verilog-A model of the 4-phase buck

• Control implemented in TSMC 90nm

• AMS simulation in CADENCE NC-VERILOG

• Synchronous design

• Phase activation clock – 5MHz

• Clocked FSM-based control – 100MHz, 333MHz, 666MHz, 1GHz

• Sampling and synchronisation

• Asynchronous design

• Phase activation – token ring with 200ns timer (= 5MHz)

• Event-driven control (input-output mode)

• Waiting rather than sampling (A2A components)

Page 37: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Simulation waveformssy

nchr

onou

s 0.43V

0 1 2 3 4 5 6 7 8 9 10

phase_clk

fsm_clk

V_load (V)

hl

uv

ov

act

TIME ( s)

3

2

1

0

3.3V

I_coil (A) 0

0.2

0.1

-0.1

0.24A

startup normal load high load normal load

phase

asyn

chro

nous

I_coil (A) 0

0.2

0.1

-0.1

0.21A

V_load (V)

hl

uv

ov

get & !pass

3

2

1

0

3.3V

startup normal load high load normal load

0.36V

phase

Page 38: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Reaction time

Controller HL UV OV OC ZC

(ns) (ns) (ns) (ns) (ns)

100MHz 25.00 25.00 25.00 25.00 25.00

333MHz 7.50 7.50 7.50 7.50 7.50

666MHz 3.75 3.75 3.75 3.75 3.75

1GHz 2.50 2.50 2.50 2.50 2.50

ASYNC 1.87 1.02 1.18 0.75 0.31

Improvementover 333MHz

4x 7x 6x 10x 24x

Page 39: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Peak current

3.1

0 1 2 3 4 5 6 7 8 9 100

100

200

300

400

500

600

700 100MHz

333MHz

666MHz

1GHz

ASYNC

Coil inductance ( H)

Pe

ak c

urr

en

t (m

A)

Page 40: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Conclusions

• Design flow is automated to large extent

• Library of A2A components• Automatic logic synthesis• Formal verification at the STG and circuit levels

• Benefits of asynchronous multiphase buck controller

• Reliable, no synchronisation failures• Quick response time (few gate delays)• Reaction time can be traded off for smaller coils• Lower voltage ripple and peak current

Page 41: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Asynchronous ADC

Page 42: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Sampling schemes

• Synchronous

ADC

Ts

• Asynchronous

AADC

A. Ogweno, P. Degenaar, V. Khomenko and A. Yakovlev: “A fixed window level crossing ADC withactivity dependent power dissipation” , accepted for NEWCAS-2016.

Page 43: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

ADC design

VinVramp

rise

Vpulse

fall

Vchange

refn

refp

refm

t2 t3 t4 t5 t6t1

Page 44: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Asynchronous controller

• STG specification • Speed-independent implementation

outn-

outp- req+

req+

outp+

outn+

req-

req-

ack-

ack+

ack-

p1 p2 p3

ack

ack

req

outn

outp

req

r � � � t

ramp_en

Vpulse

Page 45: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

http://workcraft.org/

Page 46: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

What is WORKCRAFT?

• Framework for interpreted graph models

• Interoperability between different abstraction levels• Consistency for users; convenience for developers

• Elaborate graphical user interface

• Visual editing, analysis, and simulation• Easy access to common operations• Possibility to script specialised actions

• Interface to back-end tools for synthesis and verification

• Reuse of established theory and tools (PETRIFY, MPSAT, PUNF)• Command log for debugging and scripting

Page 47: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Why to use WORKCRAFT?

• Availability

• Open-source front-end and plugins• Permissive freeware licenses for back-end tools• Frequent releases (4-6 per year)• Specialised tutorials and online training materials

• Extendibility

• Plugins for new formalisms• Import, export and converter plugins• Interface to back-end tools

• Usability

• Elaborated GUI developed with much user feedback

• Portability

• Distributions for Windows, Linux, and OS X

Page 48: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Supported graph models

Conditional Partial

Order Graph

Digital Circuit

Dataflow Structure

xMAS Circuit

lossless translation lossy translation synthesis

Directed Graph

Finate State

Machine

Finate State

Transducer

Signal Transition

GraphPetri Net

Structured

Occurrence Net

Policy Net

Digital Timing

Diagram

abstract behaviour signal semantics structural information

Page 49: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Supported features

Page 50: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Design flow

• Import: ASTG, Verilog• Export: ASTG, Verilog, SVG/Dot/PDF/EPS• Convert: synthesis or translation• Verify: reachability analysis (REACH predicates, SVA-like invariants)• Visualise: CSC conflict cores, circuit initialisation, bottleneck

Page 51: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Design flow: Asynchronous circuits

1. Specification of desired circuit behaviour with an STG model

2. Verification of the STG model

(a) Standard implementability properties:consistency, deadlock freeness, output persistency

(b) Design–specific custom properties

3. Resolution of complete state coding (CSC) conflicts

4. Circuit synthesis in one of the supported design styles

5. Manual tweaking and optimisation of the circuit

6. Verification of circuit against the initial specification

(a) Synthesis tools are complicated and may have bugs(b) Manual editing is error-prone

7. Exporting the circuit as a Verilog netlist for conventional EDA backend

Page 52: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

What is hidden from the user?

Verification that the circuit conforms to its specification

1. Circuit is converted to an equivalent STG – circuit STG

2. Internal signal transitions in the environment STG (contract between

the circuit and its environment) are replaced by dummies

3. Circuit STG and environment STG are composed by PCOMP

back-end

4. Conformation property is expressed in REACH language

5. Composed STG is unfolded by calling PUNF back-end

6. Unfolding prefix and REACH expression are passed to MPSAT

back-end

7. Verification results are parsed by the front-end

8. Violation trace is projected to the circuit for simulation and debugging

Page 53: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Circuit Petri nets as assembly language

Page 54: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Circuit Petri nets: Dataflow pipelines

Page 55: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

WORKCRAFT live demo

Page 56: Design examples: SRAM, buck , ADC - Workcraft2016/12/11  · Power electronics context Efcient implementation of power converters is paramount Extending the battery life of mobile

Circuit Petri nets: xMAS circuits