Top Banner
Synchron’08 Jean-François LE TALLEC INRIA SOP lab, INRIA SOP lab, EPI AOSTE AOSTE ScaleoChip Company ScaleoChip Company SoC Conception Methodology
27

Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Dec 16, 2015

Download

Documents

Buddy Andrews
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Synchron’08

Jean-François LE TALLECINRIA SOP lab, INRIA SOP lab, EPI AOSTEAOSTEScaleoChip CompanyScaleoChip Company

SoC Conception Methodology

Page 2: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

2

• System on Chip & conception

• Early experiment & result

• Next

Page 3: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

System on Chip3

What’s a SoC ?

• Piece of software

• IP software for modularity

IP softwareIP software

IP softwareIP software

IP softwareIP software

Page 4: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

System on Chip4

What’s a SoC ?

• Piece of software & hardware

• IP software for modularity

• IP hardware for fast execution

IP softwareIP software

IP softwareIP software

IP softwareIP software

IP hardwareIP hardware

IP hardwareIP hardware

IP hardwareIP hardware

Page 5: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

System on Chip5

What’s a SoC ?

• Piece of software & hardware & interconnect

• IP software for modularity

• IP hardware for fast execution

• interconnect

IP softwareIP software

IP softwareIP software

IP softwareIP software

IP softwareIP software

IP softwareIP software

IP softwareIP software

IP hardwareIP hardware

IP hardwareIP hardware

IP hardwareIP hardware

Page 6: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

System on Chip6

What’s a SoC ?

• Piece of software & hardware & interconnect

• IP software for modularity

• IP hardware for fast execution

• interconnect

IP softwareIP software

IP softwareIP software

IP softwareIP software

IP softwareIP software

IP softwareIP software

IP softwareIP software

ChipSystem

IP hardwareIP hardware

IP hardwareIP hardware

IP hardwareIP hardware

Page 7: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

SoC conception7

full designfull design softwaresoftwareSpecSpec Final productFinal product

Usual methodology up to now:Usual methodology up to now:

Page 8: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

SoC conception8

full designfull design softwaresoftwareSpecSpec

FPGApre-design

FPGApre-design

softwaresoftware

ScaleoChip methodology:ScaleoChip methodology:

Real designReal design

Final productFinal product

Final productFinal product

Speed up SoC conception

More tolerant to bug

Speed up SoC conception

More tolerant to bug

SpecSpec

Usual methodology up to now:Usual methodology up to now:

Page 9: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Designing problems9

Problems up to now

• Hardware needed to test software

• Interconnect Dimensioning

• HW/SW partitioning

Page 10: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Designing problems10

Problems up to now

• Hardware needed to test software

• Interconnect Dimensioning

• HW/SW partitioning

Potential solution

• Physical one : ScaleoChip

• Virtual one : virtual platform

• ARM SoC designer (SystemC inside)

• Virtutech

• Vast

• Coware

• Cofluent

Page 11: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

SystemC11

• C++ library

• Aiming to describe HW & SW

•Different level of description

• PV to RTL

• Simulation & event based

• wait on event or on time

• Hierarchical description

• modules, ports, signals

• Process type

• sc_method • sc_thread

Page 12: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Early experiments12

Encoding of a realistic case study of an IP component :

Proprietary Flash Controller from Verilog to SystemC (our running example)

Cortex M3Cortex M3

AHB2APBBridge

AHB2APBBridge

FlashController

FlashController

Flash AFlash A

Flash BFlash B

AHB Bus

Page 13: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Early experiments13

Several steps

• replace Verilog version by SystemC-RTL rewritting

• verify behavior preservation

• plug in a larger system description for RTL simulation

Page 14: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Early experiments14

Several steps

• replace Verilog version by SystemC-RTL rewritting

• verify behavior preservation

• plug in a larger system description for RTL simulation

Results

• Time consuming

• Behavior can be maintained

• Simulation consumes 11% more than original one

Page 15: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Early experiments15

Several steps

• replace Verilog version by SystemC-RTL rewritting

• verify behavior preservation

• plug in a larger system description for RTL simulation

Results

• Time consuming

• Behavior can be maintained

• Simulation consumes 11% more than original one

=> Don’t really scale up

Page 16: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Some other results16

• SystemC scheduler Parallelism emulation

• method re-activation during delta-cycle til stabilization

=> event partially ordered may be more efficient

• Assume static cycle will stabilize

• Known at simulation time if scenario is well chosen

Page 17: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Next17

• Flash Controller

• control oriented

• three different interfaces

• kind of synchronous behavior

Page 18: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Next18

• Flash Controller

• control oriented

• three different interfaces

• kind of synchronous behavior

• Rise level of description (abstraction)

Two options :

• SystemC-TLM

• Multi-clock Esterel

Models control part in Esterel See what could be TLM programming in Esterel

Page 19: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

SystemC vs Esterel19

•Event driven + physical time

•Input / Sensitivity list

•Wait()

•Parallelism emulation

•Can describe different level of abstraction

•PV to RTL

•Simulation based approach

•Activity stabilization (delta cycle)

• Clock driven + logical time

•Input / Interface

•Await()

• Parallelism

•Can describe different level of abstraction (maybe …)

•Esterel multi-clock ?

• Synthesis based approach

•Static cycle must be avoided

Page 20: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Q&A | Q&!A20

Thanks.

Page 21: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

21

Page 22: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

22

Page 23: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

23

Page 24: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Convert sc_thread into sc_method + clock24

thread << event

loop

wait(event)

body1

wait(time)

body2

end loop

method1 << event << ready_to_restart

do

body1

emit event_start_count

end do

clock (min_time_resolution)

method2 << event_start_count&clock

do

when event_start_count

count time clock period

emit event_time_elapsed

end do

method3 << event_time_elapsed

do

body2

emit event_time_elapsed

end do

Page 25: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

SystemC module representation25

Here state are methods that potentially emit signal when terminating and then activate other methods

Page 26: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

I/O esterel language26

esterel

c/c++

SystemC

Verilog

VHDL

FSM Bliff

?

Page 27: Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Esterel method representation27

Each method can be translate by a state running in parallel with the others and waiting on it sensitivity list to emit signal

Loop

await event1

emit refresh

End loop

Loop

await event2

emit refresh

End loop

Loop

await refresh

if cond then emit event3

End loop