CSIM Tool News
- CSIM-v4.10 Released Februrary 4, 2013
- Major improvements to new Gtk-based GUI stability for MS-Windows.
- Added Drag-and-drop capability to GUI. Select under Edit / Drag-and-Drop
- Updated Iterator-GUI to Gtk graphics. See See iGui.
- Updated Time-Line GUI to Gtk graphics. See See TLPP-Gui.
- Updated CSIM Tool-Launcher to modern Gtk graphics.
- Fixed the slow-execution issue in Windows-7.
- Added convenient help summary option to csim-preprocessor and simulator. See -help.
- Upgraded CSIM'S attribute expression processing - now more robust.
- Fixed -count_threads option for C++ simulations.
- Improved Calc, interactive command-line calculator tool.
- XGraph - Added option to interactively plot equations.
Upgraded internal data storage from single to double precision.
- Made csim_printf() a monolithic "safe" function.
- Added example
of using CSIM models as Live Network Emulator, or Simulator In-The-Loop (SITL),
to study the effects of network performance on real applications.
- CSIM-v4.00 Released April 4, 2012
- Major upgrade to Gtk graphics. Now provides turn-key support on Microsoft Windows, Mac OSx, and Linux.
Gtk versions of the CSIM GUI, SimView, and XGRAPH are now included.
Nearly identical in features to the Motif X-Windows and OTK implementations,
the new Gtk-based versions offer modern look & feel, as well as
easier installation on all platforms. In particular,
major improvement in Microsoft support.
New GUI Features:
- Ability to select built-in text editor.
- Ability to display .iscz compressed images.
- Now you can to set box body (fill) colors in addition to border colors.
- Now you can edit bounding-box colors and thicknesses.
- Gui now considers boxes to be solid, so you can select them anywhere inside; not just on borders.
- Added ability for GUI to check port-types, and provide immediate feedback if
incorrect connections are made.
- Right-clicking on an object now opens the object's properties directly.
- Created separate Mac OSx tools directories for PPC and Intel MacIntosh architectures.
- Added model-aliasing feature. Enables using multiple type-names,
while avoiding reduplicating source-code for otherwise identical models.
- Fixed rare RECEIVE_ALL race-condition bug in simulator.
- In WinFrame-3D viewer:
- Added object manipulation controls.
Press Shift-"9" to bring up control window to manipulate
the last selected object.
- Added ability to insert X-Y-Z origin and axis markers by
pressing Shift-"0". Useful for aligning and positioning
objects during design. Positive X, Y, and Z axes appear
in Red, Green, and Blue, respectively.
- Added ability to generate and capture automatic camera
scripts. Simply navigate to positions you wish to capture,
and press Shift-"C". WinFrame will output the XML for
moving and pointing the camera as positioned, with the
coordinate values filled-in. Just copy&paste the XML
into a file (or re-direct the output into a file), for
future auto-navigation.
- Added WFL2WFB and WB2WFL utilities, to convert Winframe3D XML
files to- and from- a fast binary format (WFB). Added ability for
Winframe3D to accept WFB files for faster read-in of large
virtual world files.
- Added findall utility to the general_utilities directories.
Findall is a tool for quickly finding files in directory branches,
based on variety of rules, such as date-ranges, file-types, name substrings,
content search-words, and to see rankings based on date or file sizes.
For example, it can quickly find the newest, oldest, or largest files in deep directory
branches.
- Enabled quick 2-step install process.
- CSIM-v3.90 Released July 29, 2011
- GUI Updates:
- Added direct diagram export capability to Powerpoint in .pptx format.
- Updated diagram export capability to OpenOffice to use the new .odp format.
- Enhanced diagram export to Office tools + PDF: OpenOffice, Powerpoint, + Acrobat.
- Multi-diagram exports are now placed in single multi-page file.
- Now displays solid boxes.
- Added some UML/SysML widget support in diagram GUI editor.
- Improved robustness of GUI font-loading for platforms with missing font libraries.
- Accelerated sim-build process for extremely large diagrams.
- Added iteration-count option to Iterator tool and Igui.
See -icount option.
- Added new modeling function: CSIM_GET_DEVICE_ATTACHED_TO_PORT()
- Enhanced Cygwin installation instructions by adding pictures of each step.
- Added CSIM tools build for Cygwin-1.7 to support MS-Windows-7 and Vista.
- Added Cygwin 1.7 download ISO.
- Added Virtual Box install option. Enables simple install of CSIM with all compilers and development libraries
on all platforms with single common CSIM build, through Oracle's VBox virtual machine.
- Added Visio diagram import+export translator.
Enables creation and editing of diagrams in Visio, with simulation in CSIM.
- Further enhancements to Winframe-3D viewer.
- Added vehicle trajectory tracing option.
- Added switch to interactively disable and re-enable automatic camera control.
- Constant-size control panel for any size window.
- Added "live" Heatbugs model example to web-pages:
Heatbugs Example Model.
- Enhanced Winframe-3D viewer default window sizing for screen size, as well as control panel size.
- XGRAPH updates:
- Added -liv4 option.
- Revised printing capabilities. Direct output to PPTX, ODP, and PDF.
- Updated General-Blocks models library.
- Improved HistogramProbe, HistogramProbeF2_F1, SR_Preempt_Server_Response_Probe, Service_wPriority_Preemption, and Generic_Batcher
- Added Msg_Count box. Counts messages passed through and reports total at end of simulation.
- Improved initialization and reporting of Attribute values (via Central_Utilities Att_Debug attribute).
- Each Set_Preempt_Resource now handles up to 40 defined Limited Threads
- Improvements to in-line documentation
- Improvements to Service_wPriority_Preemption debugging
- General code cleanup
- Updated Human-Factors models library.
- Ubuntu 64-bit OS Issues:
- Recently, we are finding reports of a bug in 64-bit Ubuntu where it reports an error message claiming
that an executable file does not exist, even though ls shows the file DOES exist.
This happens when attempting to run an executable compiled for 32-bit Linux, on a 64-bit Linux system
which does not have any 32-bit back-compatibility run-time libraries. The latter part of the situation seems more common
with 64-bit versions of Ubuntu than 64-bit versions of Redhat.
- We generally provide only a few CSIM Builds for pure 64-bit Linux systems, since so few people need this.
On special request, we may provide other 64-bit versions at our option, or when funding is provided.
For this reason, we recommend using the 32-bit version of Linux distributions, unless the 64-bit OS is absolutely required.
- CSIM-v3.80 Released March 24, 2010
- Improvements to Analog models library, due to user contributions.
Added model documentation and bug fixes.
See: Analog Systems Models
- Major updates to Winframe-3D (WF3D) Viewer.
Now enforces full XML input syntax.
Added control-panel buttons and on-line help panel.
See: WF3D
- Many updates to the software+hardware architecture models library (Core_Models).
The updates include support for a stochastic multi-level cache memory
and enhanced error reporting and display for PCI bus models.
Added new model, dual_port_mem.sim. It manages access of concurrent dual read/write
data streams with overlapping addresses to memory.
See: HW/SW Architecture Core Models
- Further enhancements to General Blocks models library.
- Extended Multi Core processor model by implementing Core Locking.
- Reporting of Utilization By Thread
- Detect invalid, incomplete or ambiguous input data
- Built In Self test
- Enhanced initialization analysis and debug
- Improved accuracy of Utilization reporting
- Memory usage reductions and speed improvements
- Regression test suite extended from 18 to 40+ simulations,
including one which executes over 1.5 billion events.
See: General Blocks Models
- Added fast optimal least-mean-squares curve-fitter.
See: LS-Solver.
- CSIM-v3.70 Released July 20, 2009
- Added convenient CSIM-launcher for both Posix and MS-Windows environments.
Enables CSIM to be started by clicking on an icon
from a file-browser, or the desktop, system menu, or tool-tray. Allows navigating to project
directories before opening the GUI, so all tools have common project-location context.
Traditional command-line operation is also supported.
- Added native MS-Windows (OTK) version of the Iterator-GUI. This completes
the full set set of CSIM tools for native Microsoft usage.
- Refined the method of selecting either the Motif or OTK versions of the CSIM tools
throughout the full tool-stream.
- Added Net-Book support in the GUI. Accommodates the very tiny screens common in
new generations of Net-Book PC's. CSIM's GUI now detects the screen size, and if too small,
optimally shrinks to fit within the screen.
- Improved Scenario Entry Tool (ScenGen) - Added Map-Creator tool for downloading and configuring
new maps. Added several new 3D vehicle models, and method for users to add your own models by
simply placing them in the vpt/3dobjects directory.
- Added support for installing CSIM under directory paths containing spaces in their names.
- CSIM-v3.60 Released May 1, 2009
- Updated General-Blocks model library.
Many safety improvements and debugging enhancements.
New extensions such as for support of multi-core processor modeling.
- Fixed bug in Gui that caused temporarily highlighted link colors to be saved, as file was saved.
- Further improvements in native Microsoft versions.
- Major enhancements to Scenario Entry Tool.
- Minor fix to WinFrame3D beam-animations.
- Added binaries for latest Linux releases (libc for Fedora-10, et.al.).
- CSIM-v3.50 Released December 3, 2008
- Added functions: CSIM_Get_Next_Event_Time(),
CSIM_AddEventLoopPostFunc,
and CSIM_RemoveEventLoopFunc.
These are useful in supporting multi-simulation federations, such as DMSO HLA.
- Added drawline_between_boxes function in SimView.
Supports richer hardware/software animations by dynamically visualizing
the logical software mappings to physical hardware elements throughout run-time.
- Added Real-Time Clock Synchronizer models to User-Contributed models library.
These convenience boxes force the simulation to run at wall-clock speed.
- For 3D Viewer, added 10 Unmanned Aerial Vehicle (UAV) 3D-object models.
Added options to restrict camera view-point above ground-level.
- Improved display quality of Microsoft native version of the graphical tools.
Added method to adjust display quality vs. performance on Otk tools.
(Command option: -rend xx Where xx default is 1.0.
Smaller values (0.0 - 1.0) may give faster display, but poorer graphics on challenged PC's.
Higher values may yield better quality graphics, but slower display on challenged PC's.
Modern PC's will generally produce fast high-quality graphics by default.)
- Updated General-Blocks models.
- Several improvements, fixes, and cleanups.
- Upgraded all floating-point calculations to double-precision.
- Added String-to-Number box.
- Added convenient Launch-Control panel for
rocket launch-to-orbit model. The model is useful for optimizing the parameters to reach specific orbits, and
is part of CSIM's Vehicles/Platforms/Terrains (VPT) model library.
- Iterator tool Auto-Optimize mode now sets simulation to best parameters
after optimization completes. (Previously just listed the best parameters.)
- Added automatic connection-highlighting in the GUI. Now when a box is selected in CSIM's
diagram editor GUI, all links connected to the selected box are highlighted, as well as
all the directly connected boxes. This helps rapidly find all boxes connected to a given box
in complex diagrams.
- Major improvements to Scenario Entry Tool (SET, also called ScenGen).
- Supports multiple coordinate systems, and switches dynamically between them.
(KM, Miles, Nautical Miles, Degrees Lat/Lon)
- Displays current or previous events during play.
- Easier panning, variable map detail -- sharp at any zoom level.
- CSIM-v3.40 Released June 26, 2008 - - Several minor improvements and fixes.
- New function: CSIM_RESCHEDULE_EVENT( ThreadID, scheduled_absolute_time, new_absolute_time )
Re-schedules a previously scheduled pending event to a new absolute time.
- Separated simulator kernel initialization from main-event-loop sections,
so simulator can be called from an alternate main program.
This feature is intended only for expert developers, especially when
interfacing with legacy projects. Also added new function, see CSIM_RESET_EVENT_QUEUE().
- In SimView, fixed module-documentation loading.
- In GUI, improved or fixed file-browser which had broken on some platforms.
- Added automated GUI regression testing capability to OTK version of tools.
- Improved OS version detection for Linux, and support for several newer releases.
- In WinFrame-3D, added new fog-control commands to XML and meta-menu.
See: Fog Control Commands and
Modifying Fog Settings Interactively
- CSIM Course held June 16-17, 2008
The CSIM course covered a general introduction,
with specialization on wireless network modeling.
Contact admin@csim.com to register for the next course.
See Course syllabus.
Specific areas can be covered in greater detail by prior request, such as Human Factors modeling, computer architectures
and software modeling, IP-network modeling, and mission scenario simulation.
- CSIM-v3.30 Released March 5, 2008 - Several minor improvements and new features.
- GUIs:
- Added level indicator. Indicates hierarchy-level being viewed.
Helps with navigation, especially during searches.
- Improved "Find-Box" and "Find-Next" functions.
Sequentially finds all instances within hierarchies.
- Major fixes to the Microsoft GUI file-browser.
- Simulator:
- New function, CSIM_PREEMPT_EVENT_AT, added as companion to
CSIM_PREEMPT_EVENT. The new function provides additional
efficiency when the approximate time of the event is known.
- Vehicle/Terrain Models:
- For orbital modeling, improved prompting for units in VPT calculate-orbits utility.
- 3D-Viewer:
- Simplified manipulation and tracking of objects.
- Nine advanced commands added to WF3D.
- Added hyper-notes to timelines produced by demo_examples: demo1 + demo3.
- General-Blocks Models:
- Major enhancements to balance of models for greater efficiency,
scalability, speed, stability, and robustness. Major reductions
in memory and CPU resources.
- Web-Documentation:
- Minor Rev. 12-21-07: CSIM-v3.22
- Updated Mac OS X version to be processor independent (PPC+Intel) executables.
- Added SGI executables.
- Minor Rev. 11-27-07: CSIM-v3.21
- Extended GUI's new Find-Box feature to search within virtual diagram hierarchy instead of raw diagrams.
- Fixed CSIM preprocessor parser name-collision between the port CHECK(... function and the
new CSIM_EVENT_CHECK(... function.
- CSIM-v3.20 Released October 31, 2007 - Several improvements and new features.
- Winframe3D - Added automatic frame-rate throttling.
Reduces compute resources. Avoids computing unused frames.
See WF3d Options.
- GUI - Added ability designate project-specific object-attributes to be visible on diagrams.
See Designating Visible Attributes.
- Activated ability to view documentation and life-cycle info on module instances.
- Added ability to add documentation to module/diagram definitions.
See Format.
- Added option under View menu to see the documentation on the current diagram being viewed.
- Added ability to edit include-file names or paths under Edit / Special / Edit Include Files..
- Added "Find-Box by-name" option to Edit menu of GUI.
- GUI now displays the current navigation hierarchical path of diagram being viewed.
- Added ability to open external port properties.
Identifies box and port an external link connects to.
Provides button to jump there directly.
- Link properties dialog now has a Connections button which shows
which boxes the selected link connects to.
- Enhanced file-browser includes fixes for some platforms.
- SimView - Additional animation time-display granularities in SimView.
- Simulator - Added function to test for existence of an event. Checks if a given event is still pending, and
returns 1 if it does. Otherwise it returns 0.
See CSIM_EVENT_CHECK for more information.
- Added function to clear any pending resumes or waits from a SYNCHRON.
See CLEAR_SYNCHRON for more information.
- Enhanced C++ support.
- CSIM Course Held: (10-31-07)
A CSIM course was present ed October 31 - November 1, 2007.
See Course syllabus. The course covered general introduction and
specialized on the General-Blocks library. The next course is expected in the Spring'08 time-frame.
Specific areas can be covered in greater detail by prior request.
- CSIM-v3.10 Released August 6, 2007 - Includes many improvements and new features.
- New tool added - Diagram Differencer.
SimDiff compares two versions of a given diagram
file that are expected to correspond closely, but perhaps not exactly.
It shows any logical differences between them.
This situation occurs frequently in projects in which experimental variants
are sometimes created or evolve. SimDiff is helpful in quickly determining
the relevant differences, if any. Being a logical-compare, it is insensitive
to differences in order, sequence, formatting, geometry, or positioning.
SimDiff also contains extra validation checks which are useful when importing
diagrams from foreign translators, such as from SysML, UML, or Visio.
- Upgraded Scenario Entry Tool (S.E.T.):
- Added ability to repeat events, with time-period for a given duration.
- Added option to filter display of tracks by time-window. Under View-menu.
- Added ability to include other files (by include-tag reference) in a track-file.
Example: <include file="xyz.dat" />
- Added ability to drag whole tracks. (Set drag-mode under Tools / Mouse menu.)
- Promoted event scheduling format to full xml.
- Generic Publish/Subscribe models added to User-Contributed Models Library.
- Simulator updates:
- Improved Synchron queuing. Faster, more scalable, more robust.
- Added ability for model to access attributes on links connected to it. CSIM_GET_LINK_ATTRIBUTES.
- Improved installer for MS-Windows.
- New Native XGraph tool for MS-Windows:
A fully operational MW-win native version of the XGraph data plotting tool in now available.
This completes the full set of graphical tools in native executables for the MS-windows platform.
The native executables do not depend on any extra libraries, such as Cygwin. They can be run individually
on any MS-win PC without installing any additional software.
- CSIM Course:
A CSIM course was held on March 27-28, 2007.
See Course syllabus. The course covered general and broad topic areas, including Human Factors modeling.
Contact admin@csim.com to register for the next course.
- CSIM-v3.00 was released the week of Feb. 28, 2007 - Includes many improvements and new features, such as improved XML format
for increased robustness and greater compatibility with other tools, as well as a new native Microsoft GUI (presently alpha version).
- Updated XML format for greater robustness and compatibility with other tools.
- Added support for C++ models. Compatibility with C++ compilers:
- Modernized all parameter lists to ANSI style from old K&R style.
- Explicit type-casting everywhere.
- Input-only params cast as "Const".
- Added Change-Working-Directory option to File menu.
- Made GUI and CSIM prepocessor tolerate file-names and directory-paths having spaces in them.
- Added Re-Run / New-Sim button under Tools Menu of simulation control panel.
- Ability to prioritize events - for events that tie.
- RECEIVE_ALL_PORTS and CALL_ON_RECEIVE_ALL_PORTS
- faster simpler alternatives to RECEIVE_ANY and CALL_ON_RECEIVE.
- Improvements to simulation speed.
- For long port-queues (Split link-queues into send-side & rcv-side.)
- Faster read-in routines.
- Improved DFG-Scheduling speed for large DFG's.
- Native MS-Windows version based on Open-Tool-Kit (OTK). Eliminates need for Cygwin DLL's.
Uses much smaller MinGW compiler (Minimum Gnu for Windows). Free and easier to install. (Presently alpha-version.)
- CSIM-2.9 Released - (4-17-06)
- GUI & SimView:
- User extendable tool menu - New keyword "EXTEND_TOOL_MENU" can be used in
custom "gui_steups" files to add command options to the GUI's Tool menu.
See: Extending Tools Menu.
- In Data Flow Graphs, GUI+SimView now display any non-zero initial arc amounts.
- XGRAPH:
- Added option to display time-axis values in day:hour:min:sec format.
See: DHMS
- Added -wbgr option to display graphs with
white background instead of default black background.
- SCHEDULER:
- Update allows macro substitution and evaluation of user defined attributes.
Allow multiple instantiations of the same DFG module to have different
parameter values.
- Core Models:
- New PCI-Bus and PCI Bridge models.
- Inserted advanced thread calls in many models to reduce the thread count
and enhance simulation speed.
- Added NIU mode and LocalPostList mode attributes to generic_pe and
multi_priority_pe.
- Added new instructions in generic_pe and multi_priority_pe accounting for
I/O bound compute operations.
- Human-Factors domain models library added to CSIM.
See: Hum-Fact Libs.
- General Block Models: Many improvements.
- Uniform comprehensive checks of attribute data.
- Enhanced detection of illegal Resource, Service, and Probe mappings.
- Revamped key memory management functions.
- Improved dynamic model debugging.
- Added utilities to facilitate model verifications.
- Enhanced presentation of output data. Added plotting helpers.
... past news ...
- CSIM-2.8 Released - (11-22-05)
- Many fixes and improvements to General-Blocks model library.
- Improved multi-selection of default attribute values operation in GUI.
- Several minor tool fixes and improvements.
- Improved installer for Microsoft platforms.
- Improved VPT models and tools. Added Scenario Generator, satellite model, and 3D-Plotting tools.
- Updates to some demo_example models due to tool changes. Added 3D examples.
- CSIM-2.7 Released - (8-1-05)
- Major acceleration of simulation builds for very large simulations (>100,000 nodes).
- New auto-placement feature in GUI.
For diagrams missing geometry or box-placement
information, such as when network topologies are imported from network discovery
tools, UML tools, or external data sources. Adding -autoplace on GUI command-line
causes GUI to calculate reasonable positions for all boxes, based on connectivity.
Minimizes long connections, overlaps, and cross-connections.
Diagrams can then be further edited as desired.
- Incorporated dynamic decompression algorithm into XGRAPH. Enables graph results data to
be stored in compressed (.scz) format, and directly displayed.
Reduces file sizes, and accelerates graphing large files.
- Several new Advanced Functions reduce thread-counts and runtimes.
- CALL_THREAD - Like TRIGGER_THREAD, but does not create a new thread.
Schedules named thread-routine to run under main kernel process
with unlimited stack space.
Called routine must return without delays or blocking (waits).
-- About 118x faster than TRIGGER_THREAD.
- TRIGGER_RECEIVE_ANY - A combination of RECEIVE_ANY and TRIGGER_THREAD.
Enables threads to be freed while waiting for messages to arrive on ports.
Only when a message arrives, the named thread is activated.
-- About 2x slower than RECEIVE_ANY, but no standing threads.
- CALL_ON_RECEIVE_ANY - A combination of RECEIVE_ANY and CALL_THREAD.
Enables threads to be freed while waiting for messages to arrive on ports.
Avoids generating new threads even to handle arriving messages.
Only when a message arrives, the named routine is called.
Called routine must return without delays or blocking (waits).
-- About 16x faster than RECEIVE_ANY, or 34x faster than
TRIGGER_RECEIVE_ANY, plus no standing threads.
- SET_WAITING_TRIGGER - A combination of WAIT and TRIGGER_THREAD.
Enables threads to be freed while waiting for synchron to be resumed.
Only when the synchron is resumed, is the named thread is activated.
-- About 2x slower than standard WAIT, but no standing threads.
- SET_WAITING_CALL - A combination of WAIT and CALL_THREAD.
Enables threads to be freed while waiting for synchron to be resumed.
Avoids generating new threads even to handle resumed synchron.
Only when the synchron is resumed, is the named thread is called.
Called routine must return without delays or blocking (waits).
-- About 32x faster than standard WAIT, plus no standing threads.
- SET_WAITING_TRIGGER_WITH_TIMEOUT - Variants of above with time-out.
- SET_WAITING_CALL_WITH_TIMEOUT - Variants of corresponding function above with time-out.
- Fixes/improvements to GeneralBlocks Library.
- New Models Added:
SystemLatencyProbe, MPGraph, Control_Signal_Generator, GlobalCount
GVCreate, Setup_GVElem, GVLen, Access_GVector
ReadFile_String, ReadFile_Line, WriteFile_Field, WriteFile_AppendField,
Global_Statistics, InsertMultipleTNow, InsertTNow, ServiceSetup InsertMultipleFieldParams
- Models/functions - Enhanced
CALL_ON_RECEIVE_ANY (converted many models for threadless operation)
set_alarm, reset_alarm, FreeBasic, AllocateBasic
General Vector (GVec) data kind added (changes to GenericProbe, get_user_structures, InsertField)
UniformRangenParam, Poisson_PulseTrain, CreateCDFfile, Uniform_PulseTrain,
Enabled_Uniform_PulseTrain, ProcessTimeLineProbe, SR_Preempt_Server_Occupancy_Probe,
SR_Preempt_Server_Response_Probe, SR_Preempt_Server_Utilization_Probe, Central_Utilities
SR_Preempt_Server_Utilization_Per_Priority_Probe, Service_wPriority_Preemption
- Models/functions - Corrected
UniformRangenParam, Int_Do_0_Nminus1, FIFO_wPeek, FIFOwPriority, Simple_FIFO,
Simple_LIFO, OpenFileRead, ReadFile_Int
- Models/functions - Corrected Documentation
WeightedMeanAndVariance, MeanAndVariance, one_input_expression_I, one_input_expression_R, MemorySwitch
- Added -sbdt preprocessor option. Causes the preprocessor to produce a Summarization
By Device Type. It shows the numbers of instances for each model-type in the compiled simulation.
They are listed in order of most numerous to least numerous. This is handy to guide optimizations by
indicating which models are most numerous, and how many of each type are instantiated.
- Added -quiet simulator option. Suppresses "Welcome ..." and "Exiting" messages.
Useful for logged production runs, or where sims are embedded within larger systems.
- Added -runto xx simulator option. Like -batch, but causes continuous simulations to
start running immediately and exit at time xx.
- Activated undelete in GUI.
- Fixed 90-degree rotation of encapsulated-postscript (.eps) outputs for easier
incorporation of snapshots into reports and presentations.
- Added -noabbrev option in XGRAPH. See Command-line Options.
- Fixes to DigiLogic Library.
- New command-line option for Iterator tool, -icount, adds the iteration count to the first column
of the "results.dat" file. See Iterator Command-line Options.
- Several improvements to WinFrame 3D Viewer (WF3D) - Accepts SCZ compressed files directly, like XGraph above).
- Included SCZ compress/decompress utilities.
- CSIM-2.6 Released - (3-21-05)
- Simulator:
- Changed SEND, RECEIVE, and TRIGGER_THREAD user-data type from
(int) to (void *), to be more consistent with modern usage in passing
structures, and to better support new 64-bit platforms. All models
in the distribution libraries have been updated accordingly, but
user-created models may need minor updating.
- A '-testbox' option was added to replace all devices with the testbox for
routing display.
- New procedure for increasing pthreads_max on Linux.
- GUI enhancements:
- Scalable text option. Text will shrink or expand with zoom level.
Select under View / Scale Text. Setting is saved/restored with files.
- Option to paste object's attributes on diagram next to object.
Select under Edit / Special / Show Object Attributes.
Attributes show up as text-notes that can then be edited, moved,
rearranged or deleted.
- Option to Delete All Unused Diagrams and Bundles. Access this under
the "Edit / Special / Delete Unused Diagrams" menu.
- Option to Delete All Empty Diagrams and Bundles. Access this under
the "Edit / Special / Delete Empty Diagrams" menu.
- Option to Weld-Port-Connections-to-Boxes.
This is a global state that alters the policy for determining
the attachment-points of links to boxes. In this mode,
the exact attachment points are preserved. In the default
mode, the closest attachment point is used. This new mode
can be set either by the "Options / Weld-Ports" menu, or
by the <weld-ports/> tag in graph files, which will be
saved when the GUI is in this mode.
This feature may remedy the "Offset display of overlapping
arc/link labels" issue, by enabling you to provide and
preserve precise placements of links.
- Option to Selectively display port-names. Toggle display of
port-names on an individual port basis by selecting a link
(or group of links) and clicking Properties / Other Attributes.
- Variable arrow-head sizes - You can vary the arrow-head sizes by
clicking under the "Options" / "Arrow Sizes" menu.
You can reduce and enlarge the displayed arrow sizes there.
The last set arrow size will be saved with your file, and will
be re-established whenever you open the file.
- Freeze-Scale Option - The normal ability to view diagrams at arbitrary
scales (ex. zooming) can create difficulties in formatting
fixed-size text to specific locations and form-factors.
To avoid re-sizing issues, select "Fixed Scale" under the "Options"
menu. It will force the scale to the default 8.5x11 inch mode.
Although zooming will be disabled, you can still pan around large
diagrams. The fixed-scale option will be stored when you save the
file. The key benefit is that text will always display exactly
where you positioned it, whenever you re-open the file or return to
a diagram. (This is an alternative to the "scalable-text" option above.)
- Block names can span multiple lines -
If a box is displayed too small to fit the full instance-name or
type-name of the box, then the name(s) will be wrapped to multiple
lines within the box. The name(s) will only be wrapped at points
where underscores occur in the name. Underscores are typical in long
names. For example: box_rapid_A_Module_5c_rev_28.
Previously, names were truncated.
- Fixed %ifdef and %ifndef nesting limitation.
- GUI now displays the file name of the module being edited
next to the module name at the top of the drawing canvas.
- Router updates:
- A '-testbox' option was added to the router to generate a netinfo.rte file
with the full paths for routing display. A 'routecat' utility was added
general_utilities to allow users to combine the original netinfo.rte file
with the user generated displayed_routes file.
- Scheduler updates:
- Support for Rate Monotonic Scheduling (RMS mode, options -loopcount and -looptime).
- Added ProduceSequence support for Multicast node.
- Added SINK node.
- Added LITERAL_OP node for user defined functions.
- fixed scientific notation format issue.
- Tool for automatically generating rate monotonic DFG's from Access tool.
- Core_models library updates:
- Changed to (void *) parameters in TRIGGER_THREAD and SEND functions.
- Added new test_box.sim model, support for testbox routing option.
- Support for LITERAL_OP options.
- General Block Library Updates: New Resource and server models, prioritized preemptive
and round-robin. New probes. Many fixes and enhancements to plotting boxes.
- New LAN-models library added. For modeling IP-based networks, LANS, WANS, SANS, etc..
- CSIM-2.5 Released - (9-1-04)
- New common setup file for all shells.
- Added save-results option (-S) to Iterator tool,
for automatically renaming results files from each iteration to unique save-names.
- Added -symb option to Scheduler tool.
Passes macro expressions in flow-graph parameters into program files (.prog files), which can
be varied by Iterator tool or other hardware parameters.
- Added -na option to core-models for starting
simulations with animations off.
- Added Cross-port routing-cost specification option to Router tool.
- Improved Gen node for DFG's specifies periodic deadlines/timers, which can be
combined and overlapped.
See: Monotonic Scheduling.
- Added ability to Cut & Paste Between GUI's without leaving either GUI -
See: Cutting & Pasting between GUI's.
- Improved wireless/radio model animation capabilities.
See: Radio Animations.
- Added SCHEDULE_RESUME_WITH_PARAM function for efficiently delaying synchron resumes.
See: SCHEDULE_RESUME_WITH_PARAM.
- Core Models Updates:
- Support new multimessg instruction and pendmessg instruction in generic_pe
and multi_priority_pe in static and dynamic scheduler modes.
- Allow for multiple monotonics in generic_pe.
- Support NoDisplay attribute in generic_pe and multipriority_pe.
- Handle hard EXIT case in generic_pe and multi_priority_pe.
- Detect invalid routes.
- Add nosource, nodest, nosrcdst classes to devices.
- Reverse direction of link animation for READ_REQ in Race++.
- Allow alternate output port designation in racepp_xbar.
- Added ability to register user exit functions. You can now register a function(s) which will
be run when the simulation exits.
See: CSIM_AddExitFunc.
- CSIM-2.4 Released - (3-8-04)
- Specific Instance Attribute feature. Allows setting attributes
on objects specific to a particular branch of hierarchy; sensitive to path
navigated to get to a diagram.
- Added ability for Scheduler to generate programs which pass variable attributes
to simulation models, which can then be varied by the Iterator. Use -Symb option.
- Improvements to Iterator and I-Gui tools.
- Improvements to TimeLine and TL-Gui tools. Splits window for small screens.
- Improved bi-directional animation functions for block-diagram simulations.
See: highlight_inlink/highlight_outlink.
- Added new animation functions for wireless/radio network simulations, and wireless models.
See: Radio Animation
- Added 3D animation viewer (VPT WF3D).
- Added color property for text notes.
- Improved simulation efficiency, added more error checking.
- Added "UnFlatten" to View menu of SimView.
- CSIM-2.2 Released - (11-11-03)
- Added long awaited unflatten capability. This is the reverse of "flatten".
Selecting flattened objects and pressing ^U causes flattened diagrams
to be re-aggregated in "SimView" simulation GUI.
- Added ability to set GUI options on a per-file basis, by placing
view-option settings in diagram files (ex. .sim or .dfg files).
- Added "silent-transfer" capability in models and Scheduler tool.
Place "silent-transfer" attribute on DFG arcs will not produce
explicit transfer in architecture.
- CSIM-2.1 Released - (6-26-03)
Several minor new features and improvements in this semi-annual distribution:
- Added ability to export individual diagrams from GUI.
Access under File/Special/Export Diagram menu.
- Added "Quick-Dirs" and recently edited files feature to
GUI's file browser. "Quick-Dirs" gets you to CSIM's
libraries, or your own initial directory, quickly.
- Ability to flip and rotate icon-images by box-instance,
as well as ability to flip and rotate flattened diagrams
on a module instance basis. Access under the GUI's
Properties/Attributes/Orientation menu.
- New Router options for additional checking and explicit formats.
(-check1, -check2, -check3, -fullpath)
See: Router-Options
- General cleaning up loose-ends in the GUI.
Eliminated many warning messages.
- Improvements to simulation kernel for very large simulations.
- Added default icon images to all General_Blocks models.
Added new Examples and now block models.
Added pop-up documentation to all models.
- Added new models: generic button and slider box models
to general_blocks and user_contributed libraries.
- Added option to Scheduler to suppress warnings: -nowarn.
Added option to CSIM Preprocessor to suppress consistency
warnings: -lenient.
- Core models updates:
- Updated cascade_bus.sim and added bus_nic.sim.
Allows cascade of different type buses.
- Added bus_buffer.sim and cbuf_module.sim for buffering between
cascade bus models. Buffering allows each bus to run at its
highest transfer rate.
- Added EventNote handling, detection of a missing simulation
monitor, simulation statistics window attributes and network
device transfer attribute settings.
- Automatic expansion of number of device ports for multiport
devices based on topology connections.
- Live XGRAPH display of ProcTline and Spider plots using sockets.
- Added the ability to specify instance attributes to processor
memory/buffer size parameters.
- Added ArcName attribute handling for recording of message
transfers in EventHist.dat file.
- CSIM Course - A CSIM Course was held June 9th and 10th
at CSIM.com's new facility. It covered the basic
introductory topics the first day, and concentrated
on various usage cases and development details on the second day,
- CSIM-II Release - (1-27-03)
A host of significant new features and improvements
in the Q1-2003 release increments CSIM's major
version number, to become CSIM-2.0.
CSIM-2.0 is the combined product of many people working across diverse organizations and projects
over many years.
A brief summary of some of the latest new features follow:
- SCHEDULER Improvement - New Replicate
construct added to CSIM's software SCHEDULER Tool.
Enables parametric replication of Data Flow
Graph (DFG) branches.
For a detailed description, documentation and examples, see:
Parallel Mapping.
CSIM's GUI visually depicts replicated nodes with a shadow,
to indicate the presence of multiple instances.
A task's "Replicate" parameter can be set to a numeric value or algebraic expression.
Very sophisticated parallel mappings can be expressed simply
and elegantly. All control aspects of the replicated
nodes and arcs are handled transparently by the SCHEDULER,
significantly easing the maintenance
of DFG diagrams, while reducing their complexity.
- Export diagrams directly to Office Tools such as OpenOffice,
StarOffice, or any tool supporting Office XML.
Enables you to include block-diagrams and timeline graphs
in your PowerPoint presentations and Word documents.
Better than image-export (which is also supported by CSIM).
Diagram objects can be edited, fonts/colors changed,
re-sized, and printed, without loosing quality.
You will access this from GUI's File/Print menu.
From XGRAPH, access from Print menu.
- File locking has been added to CSIM's GUI for improved
safety on group projects. Prevents simultaneous edits
on files, by restricting write-ownership during editing.
Transparent unless a would-be collision is detected.
If another modify/edit is attempted, a pop-up notice
indicates who holds the lock, and places the second
session in read-only mode, until the lock can be granted.
Locks are automatically removed when leaving a file.
- Click-able documentation as part of model definitions.
You can now access documentation about a model from
the GUI by clicking on an object's properties menu.
Enables modelers to add documentation to their models
which is accessible by users from the GUI.
See: Clickable Documentation.
- Life-cycle or Specialty-Engineering (-ilities) attributes
added to GUI's properties dialogs. You can now attach
additional information to your models. By virtue of XML,
the information becomes accessible to/from other 3rd party
tools about CSIM objects. 20 new information categories
and relationships are now available, including:
- requirements,
- status,
- purpose,
- issues,
- description,
|
- cost(s),
- weight/power/size,
- requires,
- depends-on,
|
- class,
- belongs-to,
- reference-by,
- availability,
|
- reliability,
- observations,
- history,
- owner,
|
See: Life-cycle Support.
- CSIM-II now supports MS-Windows, XP, NT, Win2000, Win98, Windows-95 -
A full graphical version of the CSIM tools package
for Microsoft Windows is included in the latest
CSIM release. The tools have been tested on NT, XP, and Windows-95.
All regular features are supported. Previously,
only a non-graphical version of CSIM was available for
Microsoft Windows, and many users relied on a terminal
emulator, such as Exceed, to remotely connect to Unix
or Linux. This new version permits CSIM to be used
directly on any PC or laptop.
With this addition, CSIM is now supported on virtually
all popular computer platforms including: Sun Solaris,
SGI Irix, HP UX-11, Apple Mac OSx, and PC's running Linux
and Microsoft-Windows.
- New Iterator-GUI -
A GUI front-end has been added to the Iterator-Tool.
This enables you to quickly design and launch multiple
experiments, and to conveniently view aggregated results.
It also allows you to change model parameters without
recompiling simulations.
See: Iterator-GUI.
- New Time-Line Post-Processor GUI (TLPP-GUI) and Improved Time-Line Post-Processor (TLPP) -
A GUI front-end has been added to the Time-Line Post-Processor
Tool. This GUI helps you set options for viewing simulation
results as time-line graphs. Although some models produce
time-line graphs directly, their format was not be easily
modified. The TLPP-GUI allows you to control the:
- Order of devices on the y-axis,
- Colors of specific event-types,
- Annotation styles,
- Sub-sets of devices displayed,
- Time ranges displayed,
- Styles and thickness of time-line bars,
- Graph titles.
- Communication event overlays (spider-plots)
The newly added "spider-plot" capability over-lays
communication transfers onto modified time-lines
with arrow-heads showing the transfer directions.
Individual transfers can be color-coded to indicate
data-type or message contents.
See: Time-Line GUI.
- Three new model libraries added to CSIM standard release package:
- Digital Logic - Gate logic models with inertial and propagation
delays for FPGA or Deep-Submicron design. Documented and added to model libs directories.
See: Digi-Logic.
- Analog Circuits - Model analog systems, circuits, heat-flow/transfer modeling, mechanical
mass-spring-damper systems, etc..
See: Analog Circuits.
- Vehicle-Platform-Terrain (VPT) - Supports mission-level modeling.
- New VGUI-2 - Updated the publicly available VHDL/Verilog GUI.
Many new improvements/updates. Now interchanges diagrams directly with CSIM's GUI, and vice-versa.
Digital models can be perfected in CSIM, and transferred to VHDL for synthesis.
Direct synthesis path - CSIM tool-set supports System Design and Software, down-to Physical Implementation.
- Simplified GUI Tools menu - Mode sensitive (fool-proof),
Context aware. Changes options based on graph-type.
Adds Update-Parameters-Only option. Just updates attribute
values for an existing sim.exe without re-compiling.
Saves time when just changing attribute values.
Access from GUI's Tools menu.
- New language features:
- DEFAULT_ICON() - Keyword to attach icons to model-types.
See: Default Icons.
- RESUME_WITH_PARAM() - Enables awoken WAIT threads to identify who awoke them.
See: RESUME_WITH_PARAM.
- Num-Utils - Added pre-compiled Num-Utils tools to
the CSIM distribution package. Useful for manipulating
plotted data. See: Num-Utils.
- Improved Warning Message Pop-ups
- Performance Model Library Improvements -
- Added documentation blocks to all models.
- Added XGRAPH Y coordinate name attribute to all models.
- Made inclusion of parameters.sim and subroutines.sim transparent and order
independent to monitor.sim by wrapping them with %ifndef statements.
- Enhanced the read_stimfile routine in subroutines.sim and updated
multi_task_pe.sim to allow for two stim formats: separate delay statement or
delay combined with the subgraph statement.
- In generic_pe.sim, swapped src and dst fields on READ_REQ to correspond to
data source and destination rather than master/slave.
- In racepp_nic.sim and racepp_nic_fd.sim, swapped src and dst on READ_REQ,
returned a READ_ACK to the processor and added a local_flow_control attribute.
- In racepp_xbar.sim and racepp_xbar_fd.sim, handling READ_ACK as ACK.
- Added EventHist tracing to racepp_nic.sim, racepp_nic_fd.sim, racepp_xbar.sim
and racepp_xbar_fd.sim.
- In racepp_nic_fd.sim and racepp_xbar_fd.sim, incorporate user debug mods.
- General-Block Library Improved / Exercised -
Significant testing and expansion of CSIM's General-Blocks library
occurred over the past six months. Significant documentation was added.
This library equates to the functionality of the former BONeS
(Block Oriented Network Simulation) tool of Cadence. An important validation
exercise was accomplished in October/November, 2002.
A working BONeS model consisting of 15 pages of diagrams containing 225 boxes was supplied
by a BONeS user, along with requirements for several result graphs and
statistical summaries. Two engineers
replicated the model, block-for-block, with CSIM's General-Block (GB) library,
and obtained virtually identical results and graphs.
Several additional graphs and features, beyond BONeS capabilities, were also demonstrated.
This indicates CSIM's GB library is gaining maturity and completeness.
... past news ...
- Num-Utils - (12-5-02)
Numerical Utilities have been added to the CSIM package.
These are stand-alone utilities which perform common
mathematical operations on files containing numbers.
Num-Utils allow files to be treated as variables.
Files may contain vectors or matrices. The files
may be plotted by various tools, such as XGRAPH, so
Num-Utils is a powerful means to manipulate data to be
plotted.
The Num-Utils are useful for DSP, statistics, numerical analysis, etc..
The utilities are a simple and
inexpensive alternative, or complement, to other environments
such as Octave, Matlab, Scilab, or programming libs such as LAPACK.
They exploit the familiar capabilities of the operating system
command-line and/or script files.
The Num-Util are not strictly part of CSIM and can be
used independently from CSIM. They have been useful within CSIM
project, but are valuable by themselves and are very general-purpose.
They are provided as source-code under GPL with a simple build-script.
Num-Util are consistent with the convention of other file
utilities, such as copy, diff, cat, sort, zip, grep, awk,
xgraph, latex, etc.. All data files are ASCII text files,
which are readable, printable, and convenient to produce,
edit, or read with other programs.
Because each Num-Util tool is an independent utility, they can be
called from programs by system() calls without risk of library or symbol conflicts.
They are normally called directly from the
command-line, -interactively-, without need of writing new programs.
Although many of the functions are trivial, the collection has
value by virtue of its consistency and completeness.
Num-Util presently supports four formats for data files:
(1) Real Vector, (2) Complex Vector,
(3) Real Matrix, (4) Complex Matrix.
A simple XML-like convention in the data-file's first line
indicates the file's type, and enables the tools to operate
consistently on either kind of data-file. The header also
specifies the file's dimension(s), as either vector or 2D matrix.
The utilities include extensive checking and are fully documented.
See Num-Utils for more information, documentation, examples, and downloads.
- Automatic Design Optimizer / Iterator - (4-9-02)
CSIM has gained the ability to perform multiple simulation parameter sweeps
and aggregate the data from multiple runs for plotting. The new Iterator
tool also enables Monte Carlo simulations, as well as ability to automatically
optimize your design parameters
by iterating simulations under control of adaptive optimization algorithms.
Intelligent optimization learns the performance surface
of your design and performs a series of steepest descent / genetic / and multi-grid
optimizations on selected parameters. The nature of optimization
algorithm is chosen on the observed performance surface: continuous,
differentiable / discrete, non-differentiable, noisy, or piecewise characterizable
regions. Adaptable focus of attention is exhibited through correlative
parameter sensitivity analysis. I.E. At each stage, the most relevant
parameters are identified, and more attention is paid to them.
This advanced feature enables you to quickly optimize your designs for
minimizing cost, maximizing performance, or a weighted combination there-of.
- CSIM goes XML - (9-18-00)
CSIM has adopted the universal standard XML format for capturing
file information. This includes the graphical diagram files.
The XML format is patterned directly after CSIM's original
format, and is easily recognized by anyone familiar with the old format.
The new format is easy to read and parse. It offers many advantages
for greater latitude in object parameters. For example,
arc, link, and node parameters can now be multi-term expressions.
The new format is also more extensible. New attributes can be
added without interfering with existing tools. This will facilitate
much easier extensions to the tools than ever in the past.
The XML capability enables uniform standard access of data from
other tools, aside from CSIM. Additionally, information specific to other
tools can be captured within CSIM models without interference.
For example, requirements data such as tracking, derived-from,
required-by, related-to, or critical-issues information can be attached
to graph objects. Although such attributes are not used by CSIM, other
tools, such as requirements tracking tools (eg. Doors, RTM, reliability
analysis, etc.) can access the information.
XML is consistent with-, and enables-, web-based access for distributed
collaboration on projects to product data information as it evolves.
We have only begun to realize the potentials created by this new
universal information format.
- Instance Attributes - (9-18-00)
A new feature called Instance-Attributes
has been added to the latest version of CSIM.
Instance-Attributes enable you to assign arbitrary attributes
to each object and graph in your hierarchical diagrams from the GUI.
The attributes inherit downward through the hierarchies.
The attributes can be used as graph-variables to quickly
parameterize values in arcs, links, and nodes. The attributes
can also be accessed within the user C-code of models.
The attributes can be set to distinct values for each object in
a graph. Therefore the name: Instantiation-Attributes.
- Auto-Documentation Tool for C-code and CSIM Models - (1-10-00)
There is a new tool included as part of the standard CSIM tool-set, called,
C-2-HTML.
It automatically generates hyper-text documentation of your C-programs
which you can view from any web-browser.
The generated documentation contains:
- A concise alphabetized index of your subroutines, hot-linked to their definitions,
- The calling-tree of your code, showing the hierarchy of
your subroutines, what-calls-what, etc., and,
- A hyper-text annotated version of your source code.
Calls to your subroutines are also hot-linked to their definitions.
|