VisualSim
Libraries
Models are constructed in
VisualSim Architect using a set of building blocks in a UML-like graphical block
diagram editor. A block can be basic
structure such as a distribution-based stimulus generator or a complex component
like a processor. Each block contains a set of parameters that control their execution.
Libraries form the basis of VisualSim modeling capability.
A model is constructed by
instantiating the blocks from the library folders on the Block Diagram Editor,
editing the parameters and connecting the ports together using a black line
resembling wires. For example, the Transaction_Generator block has Start
Time, Mean Time and List of Distributions.
Library Description
All blocks in the modeling library
support transactions and are data type polymorphic. This means
the type of the data to be processing is determined during run-time. For example a processor or bus can have as transactions in one model and can have for another model. This flexibility enables the same block or function to be reused in a number
of scenarios. The basic blocks, such as the Mathematical Functions block, have about
10 different operating modes, while the more complex blocks, such as the Multi-dimension
Priority Queue and Processor, can have 45 different modes of operation. A mode of operation is established based on parameter
setting of the block.
The multi-mode operation
and the polymorphism substantially reduce the number of blocks that need to be
present in the library by a factor of 25.
This also reduces the number of blocks that need to be instantiated in a
model window, thus enabling large and extremely high performance models to be
created with minimal memory consumption. This
important capability reduces the learning curve for a new user of VisualSim.
Standard
Library
Sources: This library provides the user the
ability to construct traffic models that can be executed at different levels of
abstraction. The liubrary contains representation for distribution-based, sequences, trace file, clocks, and signals.
Analysis and Results: Over 3000 statistics
are built into the resources and architecture library components. In addition,
this library enables users to construct custom statistics such as intermediate
latency or throughput/packet size vs. Latency. In addition, this library provides
blocks that enable interactive display of the results in the form of graphs
and text displays.
Resources: This library contains queues, channels,
pipelines, schedulers and server. The components are used to define the resources
in a performance or traffic model that consume time or quantity. These can represent
a network or wireless channel, processor or a large system such as a satellite. Models
built with resources can be cycle-accurate detail and can be fairly accurate without
requiring a knowledge of the underlying implementation. This library forms the foundation
of the performance modeling, traffic analysis and the Transaction Level modeling capability of VisualSim.
The blocks can be shared or distributed and
contain complex scheduling algorithms such as First Come-First Serve,
Round-Robin and Preemption. All of the
blocks in this library generate statistics for the buffer usage, utilization,
data arrival and departure rate, transitions and processing latency. All varieties of hardware and software resources can be
described using the blocks available in this Resource Library.
Processing: The C-like scripting language
and associated modeling API functions provide a comprehensive approach to describing
the logic, interaction between resources, behavior and arbitration.
Finite State Machine: This is a UML-like graphical
representation of the State Chart View. The
state charts can be hierarchical for the definition
of the states and transition. In
addition, the states can have performance information associated with them,
thus making it uniquely timed.