Difference between revisions of "File format:Chronovu la8"
Jump to navigation
Jump to search
Uwe Hermann (talk | contribs) m |
(discuss the file format, its limitations and implementation details) |
||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
{{Infobox file format | {{Infobox file format | ||
| id = chronovu_la8 | | id = chronovu_la8 | ||
| name = ChronoVu LA8 | | name = ChronoVu LA8 | ||
| status = supported | | status = supported | ||
| extensions = '''.kdt''' | | extensions = '''.kdt''', '''.kd1''' | ||
| source_code_in = chronovu_la8.c | | source_code_in = chronovu_la8.c | ||
| source_code_out = chronovu_la8.c | | source_code_out = chronovu_la8.c | ||
Line 13: | Line 12: | ||
}} | }} | ||
'''chronovu_la8''' is a binary file format used to store data from the [[ChronoVu LA8]] logic analyzer. | '''chronovu_la8''' is a binary file format used to store data from the [[ChronoVu LA8]] logic analyzer. [[ChronoVu LA16]] logic analyzer software uses a very similar format that is handled by the same input module support code. | ||
== Format == | == Format == | ||
Line 23: | Line 22: | ||
* The file size must be exactly 8388613 bytes (8 MB samples + 5 bytes metadata). | * The file size must be exactly 8388613 bytes (8 MB samples + 5 bytes metadata). | ||
* There is no unique identifier or "magic" value in the file, thus autodetection for this file format is almost impossible. | * There is no unique identifier or "magic" value in the file, thus autodetection for this file format is almost impossible. | ||
* The file content encodes a clock divider, but the devices' base clock differs between models, and the file content does not hint towards which model saved the file. | |||
* The file may either contain LA8 data, stored in one byte each per sample. Or LA16 data, stored in two bytes per sample (in little endian format). There is no way to tell from file content which variant a file corresponds to. | |||
* Filenames might hint towards the model, and thus the number of channels and the samplerate. LA8 uses the .kdt file extension, LA16 uses the .kd1 extension. | |||
== Implementation == | == Implementation == | ||
* Automatic detection of the input file format is weak, and can result in false positives. | |||
* An implementation detail results in the filename not being available to the input module. That's why LA8 files can be used with default parameters, but LA16 files require users to specify the number of channels. | |||
* In either case the samplerate needs to get specified by the user (defaults to 100MHz, the LA16 variant cannot get detected in the absence of a filename). An implementation detail of the input module in combination with the file format results in the clock divider only becoming available after the sample data got processed, and forwarded to other software components. | |||
== Examples == | == Examples == | ||
See the '''misc/chronovu_la8_la16''' subdirectory in the '''sigrok-dumps''' repository for example files. | |||
== Resources == | == Resources == |
Latest revision as of 17:35, 24 May 2018
Name | ChronoVu LA8 |
---|---|
Status | supported |
Source code (in) | chronovu_la8.c |
Source code (out) | chronovu_la8.c |
Common extension(s) | .kdt, .kd1 |
MIME type | — |
ASCII format | no |
Compression | none |
Website | chronovu.com |
chronovu_la8 is a binary file format used to store data from the ChronoVu LA8 logic analyzer. ChronoVu LA16 logic analyzer software uses a very similar format that is handled by the same input module support code.
Format
Every chronovu_la8 file is exactly 8388613 bytes in size. The file starts with 8MBytes of logic analyzer samples, followed by 5 trailing bytes which contain some metadata.
Properties
- The file size must be exactly 8388613 bytes (8 MB samples + 5 bytes metadata).
- There is no unique identifier or "magic" value in the file, thus autodetection for this file format is almost impossible.
- The file content encodes a clock divider, but the devices' base clock differs between models, and the file content does not hint towards which model saved the file.
- The file may either contain LA8 data, stored in one byte each per sample. Or LA16 data, stored in two bytes per sample (in little endian format). There is no way to tell from file content which variant a file corresponds to.
- Filenames might hint towards the model, and thus the number of channels and the samplerate. LA8 uses the .kdt file extension, LA16 uses the .kd1 extension.
Implementation
- Automatic detection of the input file format is weak, and can result in false positives.
- An implementation detail results in the filename not being available to the input module. That's why LA8 files can be used with default parameters, but LA16 files require users to specify the number of channels.
- In either case the samplerate needs to get specified by the user (defaults to 100MHz, the LA16 variant cannot get detected in the absence of a filename). An implementation detail of the input module in combination with the file format results in the clock divider only becoming available after the sample data got processed, and forwarded to other software components.
Examples
See the misc/chronovu_la8_la16 subdirectory in the sigrok-dumps repository for example files.