29
Design Refinement of E b dd dA l /Mi d Si lS t Embedded Analog/Mixed-Signal Systems with SystemC AMS extensions Prof. Dr. habil. Christoph Grimm Chair Embedded Systems Vienna University of Technology *partially supported by EC FP 6 ANDRESNo IST -5-033511 EC FP 6 ANDRES , No. IST 5 033511 MEDEA+ Project GEODES/FI-IT SNOPS

Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Design Refinement of E b dd d A l /Mi d Si l S tEmbedded Analog/Mixed-Signal Systems

with SystemC AMS extensions

Prof. Dr. habil. Christoph Grimm

Chair Embedded Systems

Vienna University of Technology*partially supported by

EC FP 6 ANDRES“ No IST-5-033511EC FP 6 „ANDRES , No. IST 5 033511MEDEA+ Project GEODES/FI-IT SNOPS

Page 2: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Beyond Moore: E-AMSBeyond Moore: E AMS

ReceiverSerial Modulator/Serial

InterfaceModulator/

demod.DSP

Micro-

Hostprocessor

ADC

Calibration & ControlAntennafront-end

controllerMemory

to all blocks

ImagingDSPTransmitter

DAC

High

front-end

Oscillator ClockGenerator

Power Manage-

ment

AudioDSPRF

detectorTemp.sensor

High SpeedSerial

Interface

Tightly interwoven DSP-software and analog circuit

[Grimm/Barnasconi/Vachoux/Einwich: An Introduction to Modeling Embedded Analog/Mixed-Signal Systems using SystemC AMS Extensions.

OSCI, June 2008]

Tightly interwoven DSP software and analog circuitfunctionality: Embedded Analog/Mixed-Signal System (E-AMS)

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 2

Page 3: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Design of E-AMSDesign of E AMS

(executable) Specification:(executable) Specification:

Matlab/Simulink, Ptolemy [Lee, UCB] , OMNET, C/C++

Methodology&language

functional

HW/SW Co-Design:SystemC (OSCI,IEEE 1666)

Methodology&languagefor „Analog/Digital

Co-Design“architec-ture

Analog design: VHDL-AMS, Verilog-AMS,

Digital:VHDL

Software:

C/C++

Co Design

implemen-

Integration validation

SPICEVHDL,… C/C++implemen-

tation

Integration validation

FastSPICE, …

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 3

Page 4: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Design refinement of E-AMS systemsDesign refinement of E AMS systems

1.) SystemC AMS extensions

2.) Design refinement of E-AMS

3.) Outlook

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 4

Page 5: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

SystemC AMS extensionsSystemC AMS extensions

OSCI AMS WG driven by academia and industryy y

Chair: Martin Barnasconi (NXP)Chair: Martin Barnasconi (NXP),

Co-Chair: Christoph Grimm (TU Wien)

5C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions

Page 6: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Modeling formalisms and use casesModeling formalisms and use cases

design abstraction

use modeling formalism

functional data flow

abstraction casesformalism

executable

S t C AMS

flow

signalhit t

specification

architectureSystemC AMS

extensionsflow

l t i l

architectureexploration

i i

implementation

electricalnetworks

integrationvalidation

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions

Page 7: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

SystemC AMS extensionsSystemC AMS extensions

AMS methodology specific elementsSystemC

Linear Signal Flow (LSF)

AMS methodology-specific elementselements for AMS design refinement, etc.

Timed Data Flow (TDF)

Electrical Linear Networks (ELN)

SystemCmethodology-specific elementsT i

User-definedAMS extensionsFlow (LSF)

modulesportssignals

Flow (TDF)modulesportssignals

Networks (ELN)modulesterminalsnodes

TransactionLevel Modeling

AMS extensionsmodulesportssignals(

SchedulerLinear DAE solver

Cycle/bitAccurateModeling

(e.g. additional solvers/simulators)

SystemC Language Standard

Synchronizationetc.

[Grimm/Barnasconi/Vachoux/Einwich: An Introduction to Modeling Embedded Analog/Mixed-Signal Systems using SystemC AMS Extensions

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 7

Embedded Analog/Mixed-Signal Systems using SystemC AMS Extensions.OSCI, June 2008]

Page 8: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Timed Data Flow in SystemC AMS extensionsTimed Data Flow in SystemC AMS extensions

„cluster“ := set of connected TDF modules

rate=8rate=8order of

computation

serial f1 deser

computation

serialf1f1f1deserf2

clusterperiod

f2delay

f2delay

delay=1 T=1t0=0

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 8

Page 9: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Timed Data Flow Block: SerializerTimed Data Flow Block: Serializer

TDF Module: SCA_TDF_MODULE(serial)

primitive module! {sca_tdf::sca_in<sc_bv<8> > in;sca_tdf::sca_out<bool> out;

Attributes specifytimed semantics

void set_attributes() { out.set_rate(8); //out set delay(1);timed semantics //out.set_delay(1);//out.set_timestep(1, SC_MS);}

void processing()processing()

describescomputation

void processing() {for (int i=7; i >= 0 ; i-- ) out.write(in.get bit(i), i);computation out.write(in.get_bit(i), i);

}SCA_CTOR(serial);

}

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 9

}

Page 10: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Interfacing Timed Data Flow and SystemC (DE)Interfacing Timed Data Flow and SystemC (DE)

sca_tdf::sc_in < <type> >sca tdf::sc out < <type> >

Converter ports towardsdi t t d i sca_tdf::sc_out < <type> >discrete event domain

sc_time sca_get_time()Note: Time in MR – TDF mayrun ahead DE time!

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 10

Page 11: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Linear Electrical Networks ConvertersLinear Electrical Networks, Converters

SC_MODULE(lp_filter_eln){

R1 tdf out{sca_tdf::sca_in<double> in;sca_tdf::sca_out<double> out;sca_eln::sca_node in_node, out_node; // nodes C1

tdf_out

tdf_in

sca_eln::sca_node_ref gnd; // reference sca_eln::sca_r *r1; // resistorsca_eln::sca_c *c1; // capacitorsca_eln::sca_tdf2v *v_in; // converter TDF->U

gnd

_ _ _ ;sca_eln::sca_v2tdf *v_out; // converter U->TDFSC_CTOR(lp_filter_eln) {v_in = new sca_eln::sca_tdf2v(“v_in”, 1.0); // scale factor 1.0

v in->ctrl(in); v in->p(in node); v in->n(gnd);v_in >ctrl(in); v_in >p(in_node); v_in >n(gnd);r1 = new sca_eln::sca_r(“r1”, 10e3); // 10kOhm resistor

r1->p(in); r1->n(out_node);c1 = new sca_eln::sca_c(“c1”, 100e-6); // 100uF capacitorc1 >p(out node); c1 >n(gnd);c1->p(out_node); c1->n(gnd);

v_out = new sca_eln::sca_v2tdf(“v_out”, 1.0); // scale factor 1.0v_out1->p(out_node); v_out1->n(gnd); v_out->ctrl(out);

}

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions

};

11

Page 12: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Design refinement of E-AMS systemsDesign refinement of E AMS systems

1.) SystemC AMS extensions

2.) Design refinement of E-AMS

3.) Outlook

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 12

Page 13: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Design Refinement“ of E-AMS„Design Refinement of E AMS

Design Refinement is a top-down design methodology thatg p g gy

stepwise and interactively augments an executable, functional

specification with properties of intended implementation atp p p p

architecture level.

Similar, but not the same:

− Extreme programming, refactoring (SW Engineering)Extreme programming, refactoring (SW Engineering)

− Property refinement (Formal method to ensure safetyproperties)p p )

13C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions

Page 14: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

What is needed for Design Refinement“?What is needed for „Design Refinement ?

1. A single language that combines functional level witharchitecture/implementation level:

SystemC AMS extensions (OSCI)

2. Design methodology specific support library

HEAVEN (TU Vienna‘s Heterogeneous Embedded Systems Analysis/Refinement Environment)Systems Analysis/Refinement Environment)

14C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions

Page 15: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Design Refinement of E-AMSDesign Refinement of E AMS

(executable) Specification:(executable) Specification:

Matlab/Simulink, Ptolemy [Lee, UCB] , OMNET, C/C++

1 ) Refinement of computation

HW/SW Co-Design:

1.) Refinement of computationAlgorithms, data types, physical effects/accuracy

2.) Refinement of structureMapping functional blocks to concrete processors

SystemC (OSCI,IEEE 1666)

A l d i

Mapping functional blocks to concrete processors3.) Refinement of interfaces

Signals, synchronization, bus protocolsAnalog design: VHDL-AMS, Verilog-AMS, SPICE

Digital:VHDL,…

Software:

C/C++

System integration, Postlayout, Test

FastSPICE, …

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 15

Page 16: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

1 ) Refinement of computation

Objective: Evaluate impact of non-ideal behavior of assumed

1.) Refinement of computation

j parchitecture/implementation using functional model

Method: Add non-ideal effects to executable specification bymodifying block-behavior, e.g.:

void processing() // Mixer with distortions and noisevoid processing() // Mixer with distortions and noise {double rf = in1.read(); double lo = in2.read();d bl f di t ( l h * f * f ) * fdouble rf_dist = (alpha – gamma * rf * rf ) * rf; double mix_dist = rf_dist * lo; if_out.write( mix_dist + my_noise() );

}

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 16

Page 17: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

2 ) Refinement of structure2.) Refinement of structure

Objective: Compare performance of different A/D/HW/SW j p p / / /partitionings more accurately

Map functions to assumed or existing processor(=change structure, MoC)

LNA Mixer DSPAlgor.Filter1

MoC: TDF

MoC: Analog DSPADC/DAC MoC:TLM

MoC:ELN

17C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions

Page 18: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Integration in functional model interactive“?Integration in functional model „interactive ?

A

DDSP RAMHW/SW:

messages

LO LNA

90°90°90°90°90°90°

TP

RAMmessages(transactions) Processors, …

A

D

TP

Signal/dataflow: Numbers

CPUProcessors, …

U

Ubias

Uin+

Uout

Uin-

A l i iDigital circuit: Analog circuit:

Electrical nodes,physical sizes

circuit:pinaccurate, single bits physical sizessingle bits

18C. Grimm - Drahtlose Sensornetze - Entwurf und Anwendungen

Page 19: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

2 ) Refinement of structure2.) Refinement of structure

DSP RAMConverter Channel

Uin+

Uout

Uin-

Ubias

CPU

DSP RAMLO LNA

A

D

90°90°90°90°90°90°

AD

TP

TP

TDF Clusterwrites values as …. analog simulator

d V lt

•DE Clusterwrites values as

f

writes values asdouble/bitvector ….

reads Voltagebitvector ….

Converter channel from HEAVEN library :

Automatically do conversion of signal types, ranges, …

Enable interactive replacement of functional blocks byimplementation

[Damm, Haase, Grimm, “Co-Simulation of mixed HW/SW and Analog/RF S A hi l L l” BMAS’08 S J é S 2008 ]

19C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions

Systems at Architectural Level”, BMAS’08, San José, Sept. 2008.]

Page 20: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Refinement of structure re-partitioningRefinement of structure, re partitioning

Method 2 (top-down):

Re-write functional part that is re-partitioned in new model ofcomputation that matches intended realization (cumbersome …)

Analog: Signal flow Network− Analog: Signal flow, Network

− Digital HW: TDF, DE ( or TLM)

Slightly simplified by „static polymorphism“g y p f y „ p y p

SCA_MoC_MODULE(par2ser) {

sca_MoC::sca_in<sc_bv<8> > in;sca_MoC::sca_out<bool> out;…SCA_CTOR(par2ser)

}

20C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions

Page 21: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

3 ) Refinement of interfaces3.) Refinement of interfaces

Intention: Prepare validation of system integration -p y gAll ports accurately as in implementation(same types, same number, clocks, enable-signals, …)

Method :Adapter classes translate between abstract data flow and(DE) pin-accurate protocols or analog nodes

( i i t d l i id k f S t C(requires appropriate models inside, known from SystemC, TLM, …)

21C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions

Page 22: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

HEAVEN bundles support for refinementHEAVEN bundles support for refinement

Converter channels

− MoC supported: TDF, TLM, DE, Analog circuits

− Data types: double, bitvector, logic vectoryp , , g _

− Simulators: CADENCE, Matlab Simulink

Adapter classes (at the moment: SSIO)Adapter classes (at the moment: SSIO)

Functional blocks & behavioral models for communicationsystemsy

Analysis tools

− Power estimation

− Eye diagrams, Trellis diagrams, Constellation diagrams, …

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 22

Page 23: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Analysis Tools: Estimation Power ConsumptionAnalysis Tools: Estimation Power Consumption

Estimation via

− Usage of functionality

− ISS

“Calibration” by

− Circuit simulationCircuit simulation

− Measurement

− Data sheetsData sheets

“Usage profile” in log file

Post Processing:Post Processing: Analysis, Visualization

23C. Grimm - Drahtlose Sensornetze - Entwurf und Anwendungen

Page 24: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Typical Simulation Scenario: Wireless Sensor NetworkTypical Simulation Scenario: Wireless Sensor Network

24C. Grimm - Drahtlose Sensornetze - Entwurf und Anwendungen

Page 25: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Results?Results?

Design Refinement aims at higher productivitg g p

− Hard to measure / compard …

Statistics of industrial application

− Executable spec, Integration validation w/ Verilog-AMSExecutable spec, Integration validation w/ Verilog AMSToday most SoC projects „first time right“

− Architecture exploration by refinement (+SystemC AMS?)Target: 30% reduction of design time

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 25

Page 26: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Design refinement of E-AMS systemsDesign refinement of E AMS systems

1.) SystemC AMS extensions

2.) Design refinement of E-AMS

3.) Outlook

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 26

Page 27: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Summary Future workSummary, Future work

SystemC AMS extensions provide appropriate means fory p pp parchitecture exploration of E-AMS systems

Outlook SystemC AMS

− 1st Draft of LRM available on www.systemc.org

− public review – please comment!

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 27

Page 28: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

Summary Future workSummary, Future work

Design refinement could increase design productivity byg g p y y

a) Quickly available first models

b) Immediate analysis/verification after changing/adding) y / g g/ gproperty

HEAVEN library:

− Communication with CADENCE Design Framework

− Application specific blockset for refinement of Ultra-Low power Wireless Sensor Networks incl. estimation of power

f i l/ hi /i l i l lat functional/architecture/implementation level.

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 28

Page 29: Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed ...Design Refinement of EbdddA l /Mi dEmbedded Analog/Mixed-Si l S tSignal Systems with SystemC AMS extensions Prof. Dr. habil

ReferencesReferences

www.systemc.org(OSCI members)

www.systemc–ams.org

(For information from former SystemC AMS SG provides some(For information from former SystemC-AMS SG, provides someinformation for the public)

Ch. Grimm, M. Barnasconi, A. Vachoux, K. Einwich: An Introduction to Modeling Embedded Analog/Mixed-Signal Systems using SystemC AMS Extensions. OSCI, June 2008

Ch. Grimm: Modeling and Refinement of Mixed Signal Systems withCh. Grimm: Modeling and Refinement of Mixed Signal Systems with SystemC. In: SystemC: Methodologies and Applications. Kluwer Academic Publisher (KAP), June 2003.

C. Grimm: Refinement of E-AMS Systems using SystemC AMS extensions 29