The Sparta Modeling Framework
Loading...
Searching...
No Matches
Sparta

Sparta is a modeling framework, written in C++ (17 or higher) and python. Modeling teams can use Sparta to build abstract performance models, detailed performance models, functional models, hybrid (performance and functional) models, etc. Users of Sparta can connect Sparta built models to SystemC Models SystemC models, Gem5 models, etc.

Sparta can be a standalone simulator or embedded in a co-simulation environment like verification tools, Verilog, EDA, SystemC, etc. Sparta can be a driver or a slave in these co-simulation environment.

Either way, Sparta provides a rich set of classes, tools, utilities, and debug facilities to build a custom Core, SoC, or peripheral device and run it for functionality, performance analysis, or verification.

Online Documentation

  1. Building and Integrating the Framework
    Building and understanding what was built
     
  2. Skeleton Pipeline Using Sparta
    A simple producer/consumer pipeline model
     
  3. Core Example Using Sparta
    A basic "super scalar" core example using Sparta
     
  4. SystemC Models
    SystemC example using the sparta::SysCSpartaSchedulerAdapter and TLM examples
     
  5. Communication, Events, and Scheduling
    Examples of using Ports, Events, Clocks, Scheduling, and Event Ordering
     
  6. Sparta API
    Reference documentation for the Sparta API
     
  7. Sparta Command Line Interface End-User Guide
    Simulator End-User Documentation for Sparta CLI Simulators
     
  8. Sparta File Formats
    File formats used by Sparta
     
  9. Framework Development
    Documentation for Sparta Developers
     
  10. Best Practices, Suggestions on using Sparta
    Suggested best practices for using Sparta