ESL: Panacea or Hype?

27
ESL: Panacea or Hype? FERMAT | Sandeep Shukla | June 2005 {shukla}@vt.edu Acknowledgement: NSF, Project Espresso @IRISA, FERMAT @Virginia Tech, and the “Chip Design” Magazine

description

FERMAT | Sandeep Shukla | June 2005 {shukla}@vt.edu. ESL: Panacea or Hype?. Acknowledgement: NSF, Project Espresso @IRISA, FERMAT @Virginia Tech, and the “Chip Design” Magazine. Outline. Pictures speak louder than words What is ESL? Abstraction Trends Verification Trends - PowerPoint PPT Presentation

Transcript of ESL: Panacea or Hype?

Page 1: ESL: Panacea or Hype?

ESL: Panacea or Hype?

FERMAT | Sandeep Shukla | June 2005

{shukla}@vt.edu

Acknowledgement: NSF, Project Espresso @IRISA, FERMAT @Virginia Tech, and the “Chip Design” Magazine

Page 2: ESL: Panacea or Hype?

Outline• Pictures speak louder than words

− What is ESL?− Abstraction Trends− Verification Trends− EDA Industry Trends

• What are we doing?− Heterogeneity and MoCs− Behavioral Hierarchy− Meta Modeling Support− Service Oriented Validation Framework

Page 3: ESL: Panacea or Hype?

Electronic System Level?

Page 4: ESL: Panacea or Hype?

Abstraction Trends

Page 5: ESL: Panacea or Hype?

Hardware Resources and Computer Power

Page 6: ESL: Panacea or Hype?

A Tale of Two ESLs?

Page 7: ESL: Panacea or Hype?

HW/SW Cost Breakdown Trends

Page 8: ESL: Panacea or Hype?

Verification Trends

Page 9: ESL: Panacea or Hype?

Hybrid and AMS

Page 10: ESL: Panacea or Hype?
Page 11: ESL: Panacea or Hype?

Verification Trends

Page 12: ESL: Panacea or Hype?

ESL Industry Space

Page 13: ESL: Panacea or Hype?

Our Work at FERMAT and ESPRESSO• Introduce Heterogeneity in SystemC with Models

of Computation (MoC) extensions• Raise the Modeling Fidelity• Step towards Behavioral Hierarchy with

Heterogeneity• EWD: Meta-Modeling Frameworks• CARH: Service Oriented Validation Framework

Page 14: ESL: Panacea or Hype?

SystemC’s Discrete-Event Kernel

• Evaluate-Update Paradigm

• Dynamic scheduling incurs unnecessary delta cycles

• Statically schedulable MoCs should avoid dynamic scheduling

Page 15: ESL: Panacea or Hype?

An Example MoC Extension: Synchronous Data Flow in SystemC• SDF models are:

− Amenable to static scheduling− Require blocks to have predefined production and

consumption rates− Construct repetition vector− Construct firing order− Executable schedule achieved with valid repetition

vector and firing order

Page 16: ESL: Panacea or Hype?

An Example MoC Extension: Synchronous Data Flow in SystemC• Constructing an SDF model requires:

− Encapsulating SDF specific processes (SC_SDF_METHOD) in a top-level SystemC process

− Top-level constructs SDF graph with appropriate API

− Every unique SDF model must be registered in its own sdf_graph instance

− Top-level entry function must invoke sdf_trigger() function

SC_MODULE( sdf_block )

{

SDFPort< sc_uint< 8 > > sample_in;

SDFPort< sc_uint< 8 > > sample_out;

SC_SDF_METHOD( block_entry );

SC_CTOR( sdf_block ) {

// Register this block into sdf_graph

}

void block_entry() {

// Entry specific code

}

};

SC_MODULE( toplevel ){

sc_in_clk CLK;SC_THREAD( topentry ) { sensitive << CLK.pos();};SC_CTOR ( toplevel ) { // Instantiate SDF blocks and connect // the ports}void topentry() { sdf_trigger();}

};

Page 17: ESL: Panacea or Hype?

An Example MoC Extension: Synchronous Data Flow in SystemC• During initialization all executable schedules are

computed• DE kernel continues executes without intervention

until sdf_trigger() is invoked• SDF kernel takes over and executes the SDF-

specific blocks according to the computed schedule

Page 18: ESL: Panacea or Hype?

Heterogeneous ExtensionsCommunicating Sequential Processes• Rendez-vous communication

Phil1Phil4

Phil3

Phil0

Phil2

Fork1

Fork0

Fork4

Fork3

Fork2

Footman

Page 19: ESL: Panacea or Hype?

Heterogeneous ExtensionsFinite State Machine• Control machines

Phil1Phil4

Phil3

Phil0

Phil2

Fork1

Fork0

Fork4

Fork3

Fork2

Footmans0 s1 s2 s3 s4

Page 20: ESL: Panacea or Hype?

Heterogeneous ExtensionsDE, FSM, SDF & CSP

Phil1Phil4

Phil3

Phil0

Phil2

Fork1

Fork0

Fork4

Fork3

Fork2

Footman

DE: Solves RSA Encryption Algorithm

Producer Consumer

SDF: Producer/Consumer

SDF: Sobel EdgeDetectionAlgorithm

Page 21: ESL: Panacea or Hype?

Simulation EfficiencyA brief look• Pure SDF models ~ 65% gains• Pure FSM models ~ 10% degradation• Pure CSP models ~ 1% gains

Page 22: ESL: Panacea or Hype?

Behavioral Hierarchy with Heterogeneity • Decompose design into small behaviors• Behaviors expressed by different MoCs

Page 23: ESL: Panacea or Hype?

Behavioral Hierarchy with Heterogeneity• Semantics define interactions within MoC and

across MoCs• Hierarchical composition preserves behavioral

hierarchy

Page 24: ESL: Panacea or Hype?

Why you want GreenSocs • SystemCXML: http://systemcxml.sourceforge.net

SystemC Source

IR

Doxygen

Annotated XML

Phase 1

Extracted XML

Phase 2

Analysis, Transformation, Testing, Optimization, …

Page 25: ESL: Panacea or Hype?

What we do with SystemC?• Service-oriented architecture − Provide infrastructure for incorporating multiple

features into services using ACE/TAO − Use SCV for automated testbench generation− Dynamic-Value Change Dump− Logging Service

• Employ existing CORBA services such as:− Naming Service− Event Service

Page 26: ESL: Panacea or Hype?

Meta Modeling

Page 27: ESL: Panacea or Hype?

Reference

• Website for SystemC-H: http://fermat.ece.vt.edu/systemc-h/

• Book