A05 File formats overview

This chapter gives an overview of all implemented formats.

 

Core file formats

  • recML/recMZ

    Compressed/Uncompressed Record Format(recML/recMZ)

    The name recML sounds like an XML format and in fact it is. The structure of the record (record/ scopes/signals) is encoded as XML. The real signal data are attributes in form of packed binaries. These binaries include both the samples of the signal, as well as the timing information. So its possible to edit the xml and put together different fragments of the xml file. There is no global time table ! This is a slight disadvantage fpr packing, but makes it easier to combine and edit.

    recMZ includes a similar format (xml structure information and additional packed binary section) , but the content is compressed.

    Both recML and recMZ support all signal and processtypes.

    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • None
    Known limitations
    • File size limited by virtual memory and temporary storage
    Status
    • Stable
    Operations
    • Load
    • Save

    Compression ratio and typical load time

    File Format Size Load 1024M Heap
    4.vcd (large VCD file with > 50k Signals) vcd 1.024.393.215 29s (same as GtkWave: 30s)
    4.recML (same file saved as recML) recML 482.216.601 5s
    4.recMZ (same file saved as recMZ) recMZ 9.854.040 2,5s
  • VCD

    Value Change Dump (VCD)

    The Verilog Value Change Dump can be seen as a standard format and is supported. Load time for this format is quite huge and comparable to othe rtools (GtkWave).

    • Vector signals are getting combined (v[0], v[1] -> v[0,1])
    • 9 state logic supported (not just 4)
    • TIMEZERO command supported
    • String signal support (need to be defined as string (not real) in the vcd header)

    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • None
    Known limitations
    • File size limited by virtual memory and temporary storage
    Status
    • Stable
    Operations
    • Load
    • Stream
  • Analog Tabular Format

    Analog Tabular Format (TAB)

    This format is used in SystemC AMS systems. The default file ending in Impulse is ".tab". If your file have different naming conventions, goto Eclipse Preferences -> Content Types, and edit your files preferences for the Record element.
    Please remind that the reader has to find a proper time base (or frequency base) for the file. This is done by getting the time (frequency) difference of the first 2 entries. Impulse first selects the base that is smaller than this differences, finally it takes a base 10 times smaller than the calculated.
    Example:
    Time Clk a1 a2 b1 b2 out 
    0 3 3 3 3 3 3.0092e-06
    2.5e-11 3 3 3 3 3 3.0092e-06
    Difference is 2.5e-11 -> 25 ps . Time unit ps10 (10 ps) is smaller than the difference, It chooses ps (1 ps) as time base.

    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • None
    Known limitations
    • File size limited by virtual memory and temporary storage
    • Domain base may not match perfectly (see text above)
    Status
    • Stable
    Operations
    • Load
    • Stream
  • Trace Record Format (recTr)

    Trace Record Format (recTr)

    recTr is an open trace format. Emitters can be dowbloaded in source form from toem git hub. See A03 recTr Trace Record Format for more information.

    • Java and C emitters available
    • Supports multiple domains
    • Usable as for online data and trace files
    • Supports multi cores

    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • None
    Known limitations
    Status
    • Stable
    Operations
    • Load
    • Stream
  • recJs Script Record Format

    Script Record Format (recJs)

    RecJs files are wave files build on scripts. You might prepare signal references, define test vectors for your design or script a custom reader. Everything is based on the same simple api that is used in signal scripts and serializer. See A04 recJs Script Record Format for more information.


    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • None
    Known limitations
    Status
    • Stable
    Operations
    • Load

File formats supported by the HDL extension

The HDL feature is not part of the core features of impulse and must be installed separately with the installation dialog.

  • Content

    Feature: Impulse HDL Reader (HDL)

    There are a number of HDL related file formats supported now. Unfortunately so far there is no support for fsdb and wlf (but this might change soon). FST is supported based on an jni library from gtkwave, the other formats uses external converters like evcd2vcd.

  • License / Sources

    License
    • EPL
    Sources
    • Available in the plugin package
  • FST

    Fast Signal Trace(FST)

    This format was created by Tony Bybell from gtkWave. The reader uses the FST JNI packages provided by the gtkwave source package.


    Platforms
    32/64bit
    Requirements
    • None
    Known limitations
    • The reader uses external libs that are not in charge and not completely understood by toem
    • Bugs in external JNI libs may resolve into JVM crashes
    Status
    • Beta
    Operations
    • Load
  • eVCD

    Extended Value Change Dump(eVCD)

    The eVCD format is supported by using an external tool to convert eVCD to vcd format (evcd2vcd). This tool is not part of impulse and must be installed separately (gtkwave package in debian/ubuntu).

    In case of different tool naming, path and parameters, the user can configure the tool parameters on the serializer preferences page.


    Platforms
    Depending on the availability of external tool
    Requirements
    • evcd2vcd tool
    Known limitations
    • The reader uses external applications that are not in charge and not understood by toem
    Status
    • Beta
    Operations
    • Load
  • LXT2

    InterLaced eXtensible Trace (LXT2)

    The LXT2 format is supported by using an external tool to convert LXT2 to vcd format (lxt2vcd). This tool is not part of impulse and must be installed separately (gtkwave package in debian/ubuntu).

    In case of different tool naming, path and parameters, the user can configure the tool parameters on the serializer preferences page.


    Platforms
    Depending on the availability of external tool
    Requirements
    • lxt2vcd tool
    Known limitations
    • The reader uses external applications that are not in charge and not understood by toem
    Status
    • Beta
    Operations
    • Load
  • VZT

    VZT

    The VZT format is supported by using an external tool to convert VZT to vcd format (vzt2vcd). This tool is not part of impulse and must be installed separately (gtkwave package in debian/ubuntu).

    In case of different tool naming, path and parameters, the user can configure the tool parameters on the serializer preferences page.


    Platforms
    Depending on the availability of external tool
    Requirements
    • vzt2vcd tool
    Known limitations
    • The reader uses external applications that are not in charge and not understood by toem
    Status
    • Beta
    Operations
    • Load
  • SCV

    SystemC Transaction DB (SCV)

    The SCV format is used by the default transaction db writer of the SystemC Verification Library.

    The Status of the reader is experimental.


    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • None
    Known limitations
    • File size limited by virtual memory and temporary storage
    Status
    • Beta
    Operations
    • Load

File formats supported by the Spice extension

The Spice feature is not part of the core features of impulse and must be installed separately with the installation dialog.

  • impulse Spice Extension

    There are a number of Spice related file formats supported with this extension. HSpice and Spice3 are supported natively, wheras NanoSim needs an external conversion tool.

  • License
    • Impulse license
    Sources
    • Not available
  • HSpice tr0

    HSpice tr0 format (TR0)

    For this format no open specification is available. Instead the reader is based on non-official format informations from the internet. It just supports the format versions 9007 and 9601.


    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • None
    Known limitations
    • File size limited by virtual memory and temporary storage
    • Implementation not based on official specification
    • It just supports the format versions 9007 and 9601
    Status
    • Stable
    Operations
    • Load
  • NanoSim

    NanoSim (OUT)

    The NanoSim format is supported by using an external tool to convert NanoSim to tabular format (sp2sp). This tool is not part of impulse and must be installed separately (gwave package in debian/ubuntu).

    In case of different tool naming, path and parameters, the user can configure the tool parameters on the serializer preferences page.


    Platforms
    Depending on the availability of external tool
    Requirements
    • sp2sp tool
    Known limitations
    • The reader uses external applications that are not in charge and not understood by toem
    Status
    • Beta
    Operations
    • Load
  • Spice3

    Spice3 (RAW)

    Spice3 format is used by open source spice implementations.


    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • None
    Known limitations
    • File size limited by virtual memory and temporary storage
    Status
    • Stable
    Operations
    • Load

File formats supported by the Log extension

The LOG feature is not part of the core features of impulse and must be installed separately with the installation dialog.

  • impulse Log Extension

    This feature combines a set of readers for logging formats. You find readers for the standardised Log4j xml 1.2 format, a pattern reader were users can define their own pattern definitions using regular expressions, a configurable CSV reader (Excel,..), and a binary log format reader from the ukos project.

    You may read and analyse single log files or combine them with other trace outputs of the device under test.

  • License
    • EPL
    Sources
    • Available in the plugin package
  • Log4j xm

    Log4j xml 1.2 (XML)

    The Apache xml log format (Version 1.2)


    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • None
    Known limitations
    • File size limited by virtual memory and temporary storage
    Status
    • Stable
    Operations
    • Load
  • Pattern Log

    Pattern Log (LOG)

    The free pattern log reader allows the user to define his own format using regular experssions.


    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • User need to define a format configuration (Serializer Preferences)
    Known limitations
    • File size limited by virtual memory and temporary storage
    Status
    • Stable
    Operations
    • Load
    • Stream
  • ukos kernel log

    ukos kernel log (IMP)

    This format is used to trace the uKos kernel (ukos.org).


    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • None
    Known limitations
    • File size limited by virtual memory and temporary storage
    Status
    • Stable
    Operations
    • Load
    • Stream
  • CSV

    CSV

    The CSV reader allows the user to define csv configuration (separator, first line, labels,..) to to parse all typical csv files.


    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • User need to define a format configuration (Serializer Preferences)
    Known limitations
    • File size limited by virtual memory and temporary storage
    Status
    • Stable
    Operations
    • Load
    • Stream

File formats supported by the Sigrok extension

The Sigrok feature is not part of the core features of impulse and must be installed separately with the installation dialog.

  • impulse Scope Extension

    The sigrok project provides a software set that enables various aquisition device types, such as logic analyzers, MSOs, oscilloscopes, multimeters, LCR meters, sound level meters, thermometers, hygrometers, anemometers, light meters, Energy meters, DAQs, dataloggers, function generators, RF receivers, spectrum analyzers, power supplies and GPIB interfaces. The sigrok adapter uses an external sigrok installation (sigrok-cli) to read the signal data of a connected device.

    Native adapters for scopes are in preparation.

  • License
    • EPL
    Sources
    • Available in the plugin package
  • Sigrok SR

    Sigrok sr format (SR)

    The Sigrok sr is supported by using an external tool to convert SR to vcd format (sigrok-cli). This tool is not part of impulse and must be installed separately (sigrok).

    In case of different tool naming, path and parameters, the user can configure the tool parameters on the serializer preferences page.


    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • sigrok-cli tool
    Known limitations
    • The reader uses external applications that are not in charge and not fully understood by toem
    Status
    • Beta
    Operations
    • Load

File formats supported by the Embedded/IoT extension

The Embedded/IoT feature is not part of the core features of impulse and must be installed separately with the installation dialog.

  • Content

    Feature: impulse ports and reader for embedded systems

    This extension contains a serial line (RS232) adapter and Serial Wire Viewer (SWV) and the SystemView reader.

  • License / Sources

    License
    • impulse license
    Sources
    • Not available
  • SystemView

    Seggers SystemView

    SEGGER's SystemView environment is a real-time recording and visualization tool that visualizes the runtime behavior of embedded applications. With the SystemView reader, you can use impulse to read and analyze SystemView recording data from files or directly from running targets.


    Platforms
    32/64bit 32/64bit 32/64bit
    Requirements
    • None
    Known limitations
    • File size limited by virtual memory and temporary storage
    Status
    • Beta
    Operations
    • Load
    • Stream