GreenBus Extensions for System-On-Chip Exploration - PowerPoint PPT Presentation

1 / 44
About This Presentation
Title:

GreenBus Extensions for System-On-Chip Exploration

Description:

GreenBus Extensions. for System-On-Chip Exploration. GreenBus ... Handshake protocol dust_control service_request PortControlService /service_request ... – PowerPoint PPT presentation

Number of Views:38
Avg rating:3.0/5.0
Slides: 45
Provided by: Klin8
Category:

less

Transcript and Presenter's Notes

Title: GreenBus Extensions for System-On-Chip Exploration


1
GreenBus Extensionsfor System-On-Chip Exploration
2
Outline
  • DUST analysis framework
  • Design analysis services
  • JAVA viewer
  • SQL database support
  • GreenBench
  • GreenSocs Configuration framework
  • Video processor example
  • Cell phone example

3
Outline
  • DUST analysis framework
  • Design analysis services
  • JAVA viewer
  • SQL database support
  • GreenBench
  • GreenSocs Configuration framework
  • Video processor example
  • Cell phone example

4
DUST Overview
SystemCsimulation
Visualization, Monitoring, Debugging
Analysis backend,SQL database
5
DUST Overview
SimulationControl
GreenBus
MonitorServices
Service Manager
InjectionServices
Design-Under-Test
StructureExtraction
SystemC Kernel
SystemC Java
Network Socket
Views
SQL Database
Structure View
Database
Transaction Analyzer
DesignStructure
Transaction Introspection
Transactions
Bus Analyzer
6
DUST Overview
SimulationControl
GreenBus
MonitorServices
Service Manager
InjectionServices
DUST Backend
Design-Under-Test
StructureExtraction
SystemC Kernel
SystemC Java
Network Socket
Views
DUST Frontend
SQL Database
Structure View
Database
Transaction Analyzer
DesignStructure
Transaction Introspection
Transactions
Bus Analyzer
7
DUST Backend
  • Service Manager
  • TCP/IP server, runs concurrently to SC kernel
    (POSIX thread)
  • XML streaming (data and control)
  • Plug-in interface for services
  • Services
  • Design Structure Service
  • Module hierarchy, Processes, Ports, Interfaces,
    Channels
  • "GreenBus-aware"
  • Transaction Monitor Service
  • Record transactions during running simulation
  • Configurable introspection depth
  • Port Control Service
  • Configure transaction recording for each port
    individually
  • Call control methods in a port Fault injection
  • Pause / resume simulation

8
Service Manager
DUST Backend
DataBase
Server
9
XML Communication
  • Handshake protocol

ltdust_controlgt ltservice_requestgtPortControlServi
celt/service_requestgt ltinitial_services_to_startgt
1lt/initial_services_to_startgt lt/dust_controlgt
10
DUST Frontend
  • JAVA-based integrated analysis environment

11
DUST Frontend
  • Design structure visualization

12
DUST Frontend
  • Design structure visualization

13
DUST Frontend
  • Design structure visualization

14
DUST Frontend
  • Design structure visualization

15
DUST Frontend
  • Transaction Monitoring

16
DUST Frontend
  • Transaction Monitoring

17
DUST Frontend
  • Transaction Monitoring

18
DUST Frontend
  • Transaction Monitoring

19
Structure reflection
  • DUST macros add context-sensitive information to
    SystemC objects

class GenericRouter public sc_module,
public GenericRouter_if, ..
GenericRouter(sc_module_name name_)
sc_module(name_), target_port("tport"),
init_port("iport"), protocol_port("protocol_port")
GS_TRACE(name(), "I am a generic
router.") target_port.bind_b_if(th
is) SC_METHOD( MasterAccessMonitor )
sensitive ltlt target_port.default_event()
.. ..
DUST_BUS("GenericRouter")
19
20
Structure reflection
  • DUST macros used in GreenBus
  • DUST_MASTER_PORT(name, protocol)
  • DUST_SLAVE_PORT(name, protocol)
  • DUST_PORT(name, protocol)
  • DUST_BUS(name)
  • DUST_MASTER_MODULE(name, protocol)
  • DUST_SLAVE_MODULE(name, protocol)
  • DUST_PROTOCOL(name)
  • DUST_SCHEDULER(name)
  • DUST_BRIDGE(name)

21
Transaction Monitoring
  • gs_dust_port replaces sc_port
  • Interface method calls on port (operator -gt) are
    recorded with SCV
  • Generates XML element for each transaction phase
    (atom)
  • XML stream is sent to JAVA frontend via network
    connection

GreenBus TransactionContainer
22
Port Control Service
  • Send control commands to ports
  • Configure transaction recording
  • Inject communication faults
  • drop / delay / duplicate / modify packets
  • Implement custom port control functions

class dust_injection_if public virtual
bool inject(stdstring xml) 0 virtual
dust_injection_if()
23
Port Control Service
  • Port control message example

ltxml_injection xmlns\"http//www.eis.cs.tu-bs.de/
DUST/TR\"gt ltchosen_injection_pointgtid0xbfff95e8lt
/chosen_injection_pointgt ltdelaygt
ltpercent_packetsgt25lt/percent_packetsgt
ltconsecutivegttruelt/consecutivegt
ltspecific_delaygt ltvaluegt0.003lt/valuegt
lt/specific_delaygt ltperiod_of_timegt
ltstart_timegt0.5lt/start_timegt
ltend_timegt0.75lt/end_timegt lt/period_of_timegt
lt/delaygt lt/xml_injectiongt
24
Port Control Service
25
Port Control Service
26
Port Control Service
27
Port Control Service
28
Database Connectivity
  • Database client connects to DUST backend
  • Stores simulation data in SQL database
  • MySQL / PostgreSQL
  • JAVA API enables easy database access
  • Get transactions for a given time interval
  • Inspect transaction payload
  • "Live" forwarding of transaction data during
    running simulation
  • Compare results of different simulations

SQL Database
Database
DesignStructure
Transactions
29
Database Connectivity
  • SQL database is automatically created from DUST
    XML schema

30
DUST
  • Summary
  • Non-intrusive analysis and debugging of SystemC
    designs
  • Easy to use (include "utils/dust.h")
  • Full GreenBus support
  • Growing number of visualization frontends
  • Extensible architecture (add your own debug
    services, views, )
  • Download contribute www.greensocs.com/Dust
  • Ongoing work
  • SystemC Debugger pause / resume simulation, run
    for n delta cycles, etc.
  • Bus protocol analyzer

31
  • GreenBench

32
Outline
  • DUST analysis framework
  • Design analysis services
  • JAVA viewer
  • SQL database support
  • GreenBench
  • GreenSocs Configuration framework
  • Video processor example
  • Cell phone example

33
GreenSocs Configuration Framework
  • GS_PARAM wrapper makes module parameters
    configurable

34
GreenSocs Configuration Framework
  • Configure parameters from within your model

35
GreenSocs Configuration Framework
  • or by using a configuration file

36
GreenSocs Configuration Framework
  • Also create communication architecture by config
    file

37
GreenSocs Configuration Framework
  • Also create communication architecture by config
    file

38
GreenSocs Configuration Framework
  • Summary
  • Easily add configurable parameters to your model
  • Use configuration files
  • Explore different communication
    architectureswithout re-compiling your sources
  • Ongoing work
  • System-wide address range management
  • Global memory configuration and introspection
  • Configure parameters with DUST debugger

39
GreenBench
  • GreenBench
  • Build benchmark suits for SystemC and GreenBus
  • Test new SystemC extensions (e.g., DUST)
  • Identify missing SystemC features (e.g.,
    synthesis)
  • Re-use GreenBench components in your own models
  • Two models are donated by TU Braunschweig, E.I.S.
  • Video Processor (EmViD)
  • Cellphone Example
  • Visit www.greensocs.com/GreenBench, download our
    models, and upload your own models!

40
EmViD Embedded Video Detection
  • Example EmViD system (face detection)

41
EmViD Embedded Video Detection
  • EmViD models are comprised of Video Processors
    (VIPs)

Channel
Component
(SC_MODULE)
Video
Processing
Video data
Video data
Input port
Output port
(sc_port)
(sc_port)
Process
(SC_THREAD)
42
EmViD Embedded Video Detection
  • Configuration framework is used to create
    different EmViD models

43
EmViD Embedded Video Detection
  • Configuration framework is used to create
    different EmViD models

Color-
Erosion,
Labeling
BRAM
BRAM
Matching
Dilation
GreenBus (PLB)
Video-
Video-
DDR-RAM
Input
Output
44
EmViD Embedded Video Detection
  • Components use different TLM APIs
  • SHIP, TAC, OCP
  • Create mixed-mode designs
  • PV ? BA ? CC
  • Numerous config files available
  • Test communication architecture exploration with
    GreenBus
  • Create new video processors
  • Add your own video processing cores

45
Thank You
Wolfgang Klingauf Integrated Circuit Design Lab
(E.I.S.) Technical University of
Braunschweig ? w.klingauf_at_tu-bs.de ? 49 (531)
391 3105
Write a Comment
User Comments (0)
About PowerShow.com