#****************************************************************************
#*                               LIMITATIONS
#*
#* Author: Matthew Ballance
#* Desc:   List of known problems, bugs, and limitations of IVI
#****************************************************************************

- Run-length always expressed in simulation units. This means that if the
  simulation resolution is ps and the user runs for 1, the simulation will 
  be advanced by 1 ps. 

- Wave scrollbars do not allow paging or stepping. Moving through the 
  waveform is done by dragging the scrollbar.

- Time is a 32-bit quantity. This has implications on the maximum simulation
  length.

- VCD import/export is not currently supported

- Wave data may not be saved to a file for later viewing

- Design restart is not currently supported

- No documentation of IVI internal-structure currently exists

- The filter API is currently incomplete. The API must be completed before
  filters for importing/exporting VCD files may be written

- The simulation transcript is not saved to a file.

- Signals in tasks and functions are not accessible.

- Integer and Real types are not supported or are not supported efficiently

- Wave format-save file doesn't support signals added from multiple Signal
  Databases (SDBs).

- The timescale for a design without a specified timescale is 'seconds' (or 0).
  This leads to an error. Some safe default should be used (ns?)

  A design without a specified timescale WILL NOT load.

- DFIO traces do not support enumerated types. Enumerations should be 
  configurable through user-level commands. Enums should be saved to the wave
  config-file.

- SDB loader doesn't auto-detect file types.


-----------------------------------------
-- Resolved Limitations
-----------------------------------------

- Only one wave window is supported. It is not possible to open two wave
  windows at the same time.
  - Resolved in the 0.1-20021110 release. Multiple independent wave windows 
    may be opened.

- Signals added to the waveform after simulation has begun will be displayed
  incorrectly.
  - Resolved in the 0.1-20021110 release. 

- Get/Put value TCL commands are not implemented. These commands will allow 
  the user to inspect current simulation values and to affect simulation by
  changing signal values.
  - Resolved in the 0.1-20030108 release. Basic get-value supported. Put-value
    supported for sequences as well as basic put's.

- Integers within a simulation lead to spurious errors.
    The following message will be seen when a design containing integers is
    loaded:
    
    ERROR :: type is NOT Reg

    Simulation of the design proceeds normally.

  - Integers are marked as 'vpiIntegerVar'. However, this show up on the vpiReg
    interator. 

- Wave format-save file doesn't support multiple wave windows
    - This is fixed with the 0.1-30040202 release. Saving wave data from
    "Window1" will cause "Window1" to be brought up when the setup is restored.

- Wave data may not be printed. 

