Releases
Downloads
Release Notes

 
Release Notes Version 3.4.1

The release notes give users instructions on dealing with many issues not covered in other documentation. The solutions to many common problems are found in the release notes.

1 New Features

Autodocumentation
The autodocumentation feature is new to version 3.4.1. The feature captures information stored in a Gedae flow graph and presents it as a report. The report is stored as a webpage and can be viewed in any web browser. The dialog used for creating these reports is shown in the figure below.


The dialog for automatically generating documentation

Autodocumentation captures the following information:

  • Comments of flow graphs and primitives
  • Source code of primitives
  • Screen captures of flow graphs
  • Screen captures of displays (scope, const, custom GUIs, etc.)
  • Screen captures of Parameter Tables
  • Screen captures of Trace Tables
  • Screen captures of schedules
  • Screen captures of Group Control dialogs (Partition Tables, Mapping Tables, Transfer Method Tables, Granularity Tables, Schedule Parameter Tables, Queue Size Tables, and Memory Partition Tables)

The screen captures are created via a third party software package that must be installed separately from Gedae and placed in the user’s PATH variable. The package, Image Magick, is free to use and distribute. Image Magick can be downloaded from http://www.imagemagick.org, and it is available for all Gedae host platforms.

The dialog allows the user to select the types of tables and figures that will be included in the report. For most types of figures, there are three options in the dialog: Print always, Print if open, and Do not print. Do not print will not print the figure, even if the corresponding window exists in the Gedae session. Print if open will only print the figure if the corresponding window exists. Print always will try to generate the window, if it is not open, and then capture that window. Some figures cannot always be generated and do not have the Print always option.

Custom GUIs can be added to a report through the use of the RegisterShell box, located in the directory FGlibraries/boxes/widget. When a shell is created in a custom GUI, it can be passed to the RegisterShell box to be added to the list of displays Gedae uses when creating a report. The use of this box in one of Gedae’s provided GUIs is shown in the figure below.


Use of RegisterShell box in v_disp

Solaris 8/SkyVec 5.6 BSP
A new Gedae Board Support Package (BSP), Solaris 8/SkyVec 5.6, is now being delivered to run with a Solaris 5.8 host and the Sky Computer SkyVec 5.6 operating system.
Debug Dialog
A new debug dialog has been developed. From the dialog the user can:

  • Launch a symbolic debugger (when available). Currently, symbolic debuggers are only available for the embedded NT, embedded Solaris and embedded Redhat BSPs
  • Bring up a Memory Map Display of the partition. (See below)
  • Stop execution on a partition
  • Step execution – where a step is an execution of a single primitive box
  • Observe which box is about to execute
  • Observe if the box just executed successfully fired or blocked


Debug Dialog

Memory Map
A Memory Map Dialog has been developed that shows the memory layout of a partition. The dialog can be brought up by pushing in the Map toggle on the Debug Dialog, thereby, displaying all the data and control structures in the memory. An option to View->Changes allows the user to see memory location changes. Changed areas are highlighted in red and are updated either on demand, periodically, or each time the user steps the partition in single step mode.


Memory Map Dialog showing areas where data is changing

A user can get detailed information about a structure on the map by clicking on it with the right mouse button.


Memory Info Dialog

Structure Display
A user can bring up a Data Structure Display by clicking on the memory map areas with the left mouse button. The data structure display allows a user to examine the state vectors of primitive boxes, which contain information about the boxes execution granularity, parameter values, and input and output values. The display is updated on demand and can be set to be updated periodically.

Data Structure Dialog

Symbolic Debugging on NT Using msdev
The Microsoft Visual C++ Development Studio can be used to debug embedded NT executables while the Gedae graph is running. Msdev can be launched from the Debug Dialog for any partition mapped to run using the Embedded NT BSP.

Symbolic Debugging on Unix Using gdb
The gdb debugger can be used to debug Embedded Solaris or Redhat executables while the Gedae graph is running. The gdb debugger can be launched from the Debug Dialog for any partition mapped to run using the Embedded Solaris or Embedded Redhat BSP.

View Execution Now Works on Distributed Graph
The View->Execution toggle now works on both the normal graph and the flattened graph, when the graphs are distributed.

Trace Table Statistics
The ability to view processor and primitive statistics on the Trace Table was improved. To view statistics in a tabular fashion turn on the Trace Table View->Statistics menu toggle. The following three figures show the normal Trace Table view followed by the improved statistics views.


Normal Trace Table View


Statistics View - Processor Statistics


Statistics View - Primitive Box Statistics

Trace Table Communication Statistics
A new ability to display summary statistics has been developed. An architecture file (documented in the GSIM Users manual) allows the user to describe busses by giving their bandwidth and the processor pairs that use them. Using the Trace Table View->Communication Stats menu item, the user enters the architecture file name. A summary of the communication is then displayed as:


Communication Bus Utilization Statistics

GSIM Enhancements
GSIM has been enhanced to do the following:

  • Allow users to register delay calculation routines for different primitives and function calls
  • Create a different registry for different processor types
  • Set a processor’s clock frequency
  • Set the processor type to be used on the Mapping Table
  • Set the communication bandwidth of individual communication channels on the Transfer Table

These enhancements have been documented in the GSIM User’s Manual.

2 Bugs Fixed

The following bugs and problems have been fixed.

SCR1022 and SCR1221.2
Boxes cannot have inputs or outputs with data types unsigned, long or short but can use types unsigned int, long int or short int.

SCR1175
The File->Dump Trace Events to File menu option currently doesn’t work correctly. A segfault occurs when a filename is entered that begins with a “/”.

SCR1208
If a queue does not have a destination, then increasing or decreasing the queue size from the queue table causes Gedae to segfault.

SCR1211.2
GSIM graph hangs if more than 5 data ports are simultaneously waiting to receive data.

SCR1212.2
When connecting to a family of p route boxes with an input equation having a term of the form [p]mpp, where mpp is a range variable dependent on an array Mp, the Gedae editor locks up.

SCR1218.2
Primitive box input/output family size is not always set correctly in the Apply method. For example, box embeddable/stream/sum produces incorrect results.

SCR1222.5
On Unix systems, double clicking on an item found from a search in the Search Dialog does not add the item to the canvas.

3 Known Bugs

The following known bugs are listed by their Software Change Request (SCR) number. Please include the SCR number if you wish to report additional information about this bug.
SCR1016
Unterminated comment causes the Gedae parser to segfault.

SCR1038
On NT Gedae uses 100% of the CPU when idle.

SCR1097
The Gedae parser doesn’t handle an odd number of quotes (“) well.

SCR1168
If a dynamic variable vector input is preceded by a vv_delay, then the graph segfaults during scheduling.

SCR1182
Some graphs that worked with primitive boxes having dynamic inputs no longer work. The recommended work around is to use nondet inputs as described in the document “Migrating to Gedae 3.2”. Examples of boxes that use nondet inputs correctly are:

  • embeddable/var_vector/s_vv
  • embeddable/stream/logic/merge

SCR1183
The Firing Granularity Table has trouble handling large graphs when View->Show All Boxes is selected.

SCR1207>
Gedae currently allows string array graph parameters to be declared as:

const string X[] = {“hello”,”world”}

or

string X[i] = [i]Y

where Y is a family of strings.

In either case, the values so declared are not set correctly, and therefore, should be considered illegal.

SCR1214.2
Gedae aborts when the same stream type is multiply defined. For example, suppose two primitives define data types with the same name but different definitions. If the primitives use those types in their Input, Local or Output sections, then Gedae aborts.

SCR1223.2
A command program running on VxWorks does not free all the resources allocated (memory, sockets, etc). The appFree function must release everything allocated. Gedae should automatically generate a call to appFree for the standard exec-host command program.

Blue Horizon Development Software, 18000 Horizon Way, Suite 200, Mount Laurel, NJ 08054
gedae@gedae.com, voice: (856) 231-4458, fax: (856) 231-1403
Copyright Blue Horizon Development Software, Inc. 2001
Gedae is a trademark of Blue Horizon Development Software