▼ example | |
► CoreModel | |
► src | |
BIU.cpp | |
BIU.hpp | |
Core.cpp | |
Core.hpp | |
CoreTypes.hpp | |
CPU.cpp | |
CPU.hpp | |
CPUFactories.hpp | |
CPUFactory.cpp | |
CPUFactory.hpp | |
CPUTopology.cpp | |
CPUTopology.hpp | |
CustomHistogramStats.hpp | |
Decode.cpp | |
Decode.hpp | |
Dispatch.cpp | |
Dispatch.hpp | |
ExampleInst.cpp | |
ExampleInst.hpp | |
ExampleSimulation.cpp | |
ExampleSimulation.hpp | |
Execute.cpp | |
Execute.hpp | |
Fetch.cpp | Implementation of the CoreModel Fetch unit |
Fetch.hpp | Definition of the CoreModel Fetch unit |
FlushManager.hpp | |
LSU.cpp | |
LSU.hpp | |
main.cpp | |
MSS.cpp | |
MSS.hpp | |
Preloader.cpp | |
Preloader.hpp | |
Rename.cpp | |
Rename.hpp | |
ROB.cpp | |
ROB.hpp | |
SimpleDL1.hpp | |
SimpleTLB.hpp | |
gen_layouts.py | |
► SkeletonPipeline | |
► src | |
Consumer.cpp | |
Consumer.hpp | |
main.cpp | |
MessageCategories.hpp | |
Producer.cpp | |
Producer.hpp | |
SkeletonSimulator.cpp | |
SkeletonSimulator.hpp | |
▼ sparta | |
► app | |
AppTriggers.hpp | Application-infrastructure triggers |
Backtrace.hpp | Handles writing backtraces on errors |
CommandLineSimulator.hpp | Class for creating a simulator based on command-line arguments |
ConfigApplicators.hpp | Configuration Applicators |
FeatureConfiguration.hpp | |
MetaTreeNode.hpp | |
MultiDetailOptions.hpp | Wrapper for boost program_options option_description that allows multiple levels of detail |
ReportConfigInspection.hpp | |
ReportDescriptor.hpp | Describes reports to instantiate and tracks their instantiations |
Simulation.hpp | Simulation setup base class |
SimulationConfiguration.hpp | |
SimulationInfo.hpp | Simulation information container for tracking the status of the simulation |
► collection | |
Collectable.hpp | Implementation of the Collectable class that allows a user to collect an object into an pipeViewer pipeline file |
CollectableTreeNode.hpp | Define a CollectableTreeNode type TreeNode |
Collector.hpp | Define a base Collector class |
DelayedCollectable.hpp | Implementation of the DelayedCollectable class that allows a user to collect an object into an pipeViewer pipeline file |
IterableCollector.hpp | |
PipelineCollector.hpp | Class to facilitate pipeline collection operations |
► events | |
AsyncEvent.hpp | |
Event.hpp | File that defines the Event class |
EventNode.hpp | File that defines the EventNode class |
EventSet.hpp | File that defines the EventSet class |
GlobalEvent.hpp | File that defines the GlobalEvent class |
GlobalOrderingPoint.hpp | |
PayloadEvent.hpp | File that defines the PayloadEvent class |
PhasedPayloadEvent.hpp | File that defines the PhasedPayloadEvent class. Suggest using sparta::PayloadEvent instead |
PhasedSingleCycleUniqueEvent.hpp | File that defines the PhasedSingleCycleUniqueEvent class |
PhasedUniqueEvent.hpp | File that defines the PhasedUniqueEvent class |
Precedence.hpp | File that defines Precedence operator>> rules between EventNode types |
Scheduleable.hpp | File that defines the Scheduleable class |
SchedulingPhases.hpp | File that defines the phases used in simulation |
SingleCycleUniqueEvent.hpp | File that defines the SingleCycleUniqueEvent class |
StartupEvent.hpp | File that defines the StartupEvent class |
UniqueEvent.hpp | File that defines the UniqueEvent class |
► functional | |
ArchData.hpp | |
ArchDataContainer.hpp | Contains a number of ArchData pointers |
ArchDataSegment.hpp | |
DataView.hpp | |
Register.hpp | |
RegisterBankTable.hpp | |
RegisterBits.hpp | |
RegisterDefinitionSet.hpp | |
RegisterSet.hpp | |
► kernel | |
DAG.hpp | Used internally by the sparta::Scheduler to set event ordering |
MemoryProfiler.hpp | Simple class to see where memory is being used. Generates reports |
ObjectAllocator.hpp | File that defines the ObjectAllocator class |
PhasedObject.hpp | Basic Node framework in sparta device tree composite pattern |
Scheduler.hpp | A simple time-based, event precedence based scheduler |
SpartaHandler.hpp | File that contains the macro used to generate the class callbacks |
► log | |
► categories | |
CategoryManager.hpp | |
Destination.hpp | |
Events.hpp | |
Message.hpp | |
MessageInfo.hpp | |
MessageSource.hpp | |
NotificationSource.hpp | |
Tap.hpp | |
► memory | |
AddressTypes.hpp | |
BlockingMemoryIF.hpp | File that contains BlockingMemoryIF |
BlockingMemoryIFNode.hpp | File that contains BlockingMemoryIFNode |
DebugMemoryIF.hpp | File that contains DebugMemoryIF |
DMIBlockingMemoryIF.hpp | |
MemoryExceptions.hpp | File that contains some exception types related to memory interfaces |
MemoryObject.hpp | File that contains MemoryObject |
SimpleMemoryMap.hpp | File that contains SimpleMemoryMap |
SimpleMemoryMapNode.hpp | File that contains SimpleMemoryMapNode |
Translation.hpp | File that defines Translation classes and typedefs for addressing |
TranslationIF.hpp | |
TranslationIFNode.hpp | Contains class for publishing a TranslationIF as a TreeNode |
► pevents | |
NestedPeventCollector.hpp | |
PeventCollector.hpp | |
PeventController.hpp | |
PEventHelper.hpp | |
PeventTreeNode.hpp | |
PeventTrigger.hpp | |
► ports | |
Bus.hpp | File that defines the Bus, BusSet and helper binding classes |
DataPort.hpp | File that defines Data[In,Out]Port<DataT> |
ExportedPort.hpp | File that defines the ExportedPort class |
Port.hpp | File that defines the Port base class |
PortSet.hpp | File that defines the PortSet class |
SignalPort.hpp | File that defines the SignalInPort |
SyncPort.hpp | File that defines synchronized input/output ports |
► resources | |
AgedArrayCollector.hpp | |
Array.hpp | Defines the Array class |
Buffer.hpp | Defines the Buffer class used for buffering data |
CircularBuffer.hpp | Defines the CircularBuffer class |
FrontArray.hpp | Type of Array with special allocation policies to support writing to the front most valid entry in the Array |
Pipe.hpp | Defines the Pipe class |
Pipeline.hpp | Defines the Pipeline class |
PriorityQueue.hpp | Defines a Priority queue similar to STL's, but with more functionality |
Queue.hpp | Defines the Queue class used for queuing data |
Scoreboard.hpp | Class used to track operand dependencies (timed) between units |
SharedData.hpp | Defines the SharedData class |
► serialization | |
► checkpoint | |
Checkpoint.hpp | |
Checkpointer.hpp | |
CheckpointExceptions.hpp | File that contains checkpoint exception types |
DeltaCheckpoint.hpp | |
FastCheckpointer.hpp | |
FILEStream.hpp | |
PersistentFastCheckpointer.hpp | |
► simulation | |
Audience.hpp | |
Clock.hpp | File that defines the Clock class |
ClockManager.hpp | Manages building a clock tree |
DynamicResourceTreeNode.hpp | |
GlobalTreeNode.hpp | TreeNode refinement representing the global namespace (above "top") of a device tree |
Parameter.hpp | Individual Parameter interface base class, container class, and global helpers methods |
ParameterSet.hpp | A set of sparta::Parameters per sparta::ResourceTreeNode |
ParameterTree.hpp | |
Resource.hpp | File that defines the Resource class. Consider using sparta::Unit instead |
ResourceContainer.hpp | Object with a name which holds a Resource |
ResourceFactory.hpp | |
ResourceTreeNode.hpp | |
RootTreeNode.hpp | TreeNode refinement representing the root (or "top") of a device tree |
State.hpp | |
StateTimerUnit.hpp | |
StateTracker.hpp | |
TreeNode.hpp | Basic Node framework in sparta device tree composite pattern |
TreeNodeExtensions.hpp | |
TreeNodePrivateAttorney.hpp | |
Unit.hpp | File that defines the Unit class, a common grouping of sets and loggers |
VirtualGlobalTreeNode.hpp | Contains the virtual global tree node which receives propagating messages from every other node |
► statistics | |
► db | |
SINodeHierarchy.hpp | |
SIValuesBuffer.hpp | |
► dispatch | |
► archives | |
ArchiveController.hpp | |
ArchiveDispatcher.hpp | |
ArchiveNode.hpp | |
ArchiveSink.hpp | |
ArchiveSource.hpp | |
ArchiveStream.hpp | |
BinaryIArchive.hpp | |
BinaryOArchive.hpp | |
ReportStatisticsAggregator.hpp | |
ReportStatisticsArchive.hpp | |
RootArchiveNode.hpp | |
StatisticsArchives.hpp | |
► streams | |
StatisticsStreams.hpp | |
StreamController.hpp | |
StreamNode.hpp | |
ReportStatisticsHierTree.hpp | |
StatisticsHierRootNodes.hpp | |
StatisticSnapshot.hpp | |
BasicHistogram.hpp | A simple histogram with programmable ranges, using sparta::Counters |
ContextCounter.hpp | |
Counter.hpp | |
CounterBase.hpp | |
CycleCounter.hpp | |
CycleHistogram.hpp | CycleHistogram implementation using sparta CycleCounter |
EnumCycleHistogram.hpp | EnumCycleHistogram implementation using sparta CycleCounters that models enum state lifetimes. This Histogram class can be templated on both C++ enums and sparta::utils::Enums |
EnumHistogram.hpp | HistogramEnum implementation using sparta Counters |
Expression.hpp | |
ExpressionGrammar.hpp | |
ExpressionNode.hpp | |
ExpressionNodeTypes.hpp | |
ExpressionNodeVariables.hpp | This exists mainly to remove circular dependencies on StatVariable and SimVariable: Expression -> StatVarible -> StatisticInstance -> Expression |
ExpressionParser.hpp | |
Histogram.hpp | Histogram implementation using sparta Counters |
HistogramFunctionManager.hpp | |
InstrumentationNode.hpp | Virtual interface node for simulator instrumentation (e.g. counters, stats, nontifications) |
ReadOnlyCounter.hpp | |
StateHistogram.hpp | StateHistogram implementation using sparta Counters |
StatInstCalculator.hpp | |
StatisticDef.hpp | Contains a statistic definition (some useful information which can be computed) |
StatisticInstance.hpp | Contains a StatisticInstance which refers to a StatisticDef or Counter and some local state to compute a value over a specific sample range |
StatisticSet.hpp | File that defines the StatisticSet class |
WeightedContextCounter.hpp | |
► utils | |
BitArray.hpp | |
Bits.hpp | Helper functions to count bits. A little old – consider using compiler intrinsics |
BoundedValue.hpp | Implementation of the Bounded Value class that is templated based on a certain integral or floating-point data-type and functions within one or more non-overlapping operating range |
ByteOrder.hpp | Byte order types and byte-swapping routines |
Colors.hpp | Color code for SPARTA |
DataContainer.hpp | File that defines the DataContainer class |
DetectMemberUtils.hpp | Compile-time SFINAE techniques to detect presence of operators, member-fields and methods by name in any class |
Enum.hpp | |
FastList.hpp | File that defines the FastList class – an alternative to std::list when the user knows the size of the list ahead of time |
File.hpp | Utilities for file I/O |
IteratorTraits.hpp | Defines a few handy (and now deprecated) C++ iterator traits |
KeyValue.hpp | |
LexicalCast.hpp | String-to-value helpers and string formatting helpers |
LifeTracker.hpp | File that defines the LifeTracker class |
LockedValue.hpp | File that defines a LockedValue |
LogUtils.hpp | |
MathUtils.hpp | |
MetaStructs.hpp | Contains a collection implementation of various compile-time metaprogramming and Type-Detection APIs useful for Template Metaprogramming |
MetaTypeList.hpp | Contains the implementation of Metatype_lists, a compile-time list for storing different type structures which can be accessed by using nested type aliases inside. Metatype_lists are extremely useful in Template MetaProgramming |
PointerUtils.hpp | |
Printing.hpp | Helpers for printing and populating vectors |
Rational.hpp | |
SmartLexicalCast.hpp | Smart lexical casting supporting prefixes, separator ignoring, and suffixes |
SpartaAssert.hpp | Set of macros for Sparta assertions. Caught by the framework |
SpartaException.hpp | Exception class for all of Sparta |
SpartaExpBackoff.hpp | |
SpartaSharedPointer.hpp | Defines the SpartaSharedPointer class used for garbage collection |
SpartaSharedPointerAllocator.hpp | |
SpartaSharedPointerBaseAllocator.hpp | |
SpartaTester.hpp | File that defines the SpartaTester class and testing Macros |
StaticInit.hpp | Helpers for enforcing StaticInitialization order |
StringManager.hpp | |
StringUtils.hpp | Cool string utilities |
SysCSpartaSchedulerAdapter.hpp | Glue code that connect the Sparta scheduler to SystemC |
Tag.hpp | Simple class for sequence numbering |
TieredMap.hpp | |
TimeManager.hpp | |
Traits.hpp | File that defines compile-time queries on data types. Extends c++11+'s trait types |
TreeUtils.hpp | File that defines hand sparta::TreeNode functions |
TupleHashCompute.hpp | |
Utils.hpp | |
ValidValue.hpp | File that defines a ValidValue |
VectorUtils.hpp | |