Presentation is loading. Please wait.

Presentation is loading. Please wait.

GreenBus Extensions for System-On-Chip Exploration.

Similar presentations


Presentation on theme: "GreenBus Extensions for System-On-Chip Exploration."— Presentation transcript:

1 GreenBus Extensions for System-On-Chip Exploration

2 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 2 Outline  DUST analysis framework  Design analysis services  JAVA viewer  SQL database support  GreenBench  GreenSocs Configuration framework  Video processor example  Cell phone example

3 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 3 Outline  DUST analysis framework  Design analysis services  JAVA viewer  SQL database support  GreenBench  GreenSocs Configuration framework  Video processor example  Cell phone example

4 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 4 DUST Overview Analysis backend, SQL database SystemC simulation Visualization, Monitoring, Debugging

5 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 5 DUST Overview SystemC Java Monitor Services Design Structure Transactions SystemC Kernel GreenBus Design-Under-Test Structure Extraction Service Manager Network Socket SQL Database SQL Database Simulation Control Structure View Bus Analyzer Transaction Analyzer Transaction Introspection Views Database Injection Services

6 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 6 DUST Overview SystemC Java Monitor Services Design Structure Transactions SystemC Kernel GreenBus Design-Under-Test Structure Extraction Service Manager Network Socket SQL Database SQL Database Simulation Control Structure View Bus Analyzer Transaction Analyzer Transaction Introspection Views Database Injection Services DUST Backend DUST Frontend

7 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 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 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 8 Service Manager DataBase DUST Backend Server

9 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 9 XML Communication  Handshake protocol PortControlService 1

10 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 10 DUST Frontend  JAVA-based integrated analysis environment

11 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 11 DUST Frontend  Design structure visualization

12 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 12 DUST Frontend  Design structure visualization

13 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 13 DUST Frontend  Design structure visualization  „  ‚ 

14 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 14 DUST Frontend  Design structure visualization

15 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 15 DUST Frontend  Transaction Monitoring

16 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 16 DUST Frontend  Transaction Monitoring

17 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 17 DUST Frontend  Transaction Monitoring

18 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 18 DUST Frontend  Transaction Monitoring

19 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 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(*this); SC_METHOD( MasterAccessMonitor ); sensitive << target_port.default_event();.. }.. } 19 DUST_BUS("GenericRouter");

20 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 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 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 21 Transaction Monitoring  gs_dust_port replaces sc_port  Interface method calls on port (operator ->) 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 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 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(std::string &xml) =0; virtual ~dust_injection_if() {} };

23 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 23 Port Control Service  Port control message example id0xbfff95e8 25 true 0.003 0.5 0.75

24 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 24 Port Control Service

25 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 25 Port Control Service

26 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 26 Port Control Service

27 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 27 Port Control Service

28 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 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 Design Structure Transactions SQL Database SQL Database

29 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 29 Database Connectivity  SQL database is automatically created from DUST XML schema

30 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 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 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 31 GreenBench

32 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 32 Outline  DUST analysis framework  Design analysis services  JAVA viewer  SQL database support  GreenBench  GreenSocs Configuration framework  Video processor example  Cell phone example

33 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 33 GreenSocs Configuration Framework  GS_PARAM wrapper makes module parameters configurable

34 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 34 GreenSocs Configuration Framework  Configure parameters from within your model…

35 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 35 GreenSocs Configuration Framework  …or by using a configuration file

36 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 36 GreenSocs Configuration Framework  Also create communication architecture by config file

37 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 37 GreenSocs Configuration Framework  Also create communication architecture by config file

38 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 38 GreenSocs Configuration Framework  Summary  Easily add configurable parameters to your model  Use configuration files  Explore different communication architectures without re-compiling your sources  Ongoing work  System-wide address range management  Global memory configuration and introspection  Configure parameters with DUST debugger

39 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 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 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 40 EmViD – Embedded Video Detection  Example EmViD system (face detection)

41 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 41 EmViD – Embedded Video Detection  EmViD models are comprised of Video Processors (VIPs) Video Processing Output port (sc_port) Channel Input port (sc_port) Process (SC_THREAD) Component (SC_MODULE) Video data

42 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 42 EmViD – Embedded Video Detection  Configuration framework is used to create different EmViD models

43 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 43 EmViD – Embedded Video Detection  Configuration framework is used to create different EmViD models Color- Matching Erosion, Dilation Labeling GreenBus (PLB) Video- Input DDR-RAM Video- Output BRAM

44 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 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 GreenBus Extensions for SoC Exploration Wolfgang Klingauf, TU Braunschweig, E.I.S. 45 Thank You Wolfgang Klingauf Integrated Circuit Design Lab (E.I.S.) Technical University of Braunschweig  w.klingauf@tu-bs.de  +49 (531) 391 3105


Download ppt "GreenBus Extensions for System-On-Chip Exploration."

Similar presentations


Ads by Google