Skip to content

OpenCompact v0.1.0

Choose a tag to compare

@rustyqt rustyqt released this 18 Oct 11:14
· 105 commits to main since this release
072a5a8

First release of OpenCompact. It implements lossless and near-lossless compression of multispectral and hyperspectral images according to CCSDS 123.0-B-2.

Technology readiness level 3: the core is verified by simulation; no hardware test yet.

Verification

  • GHDL: full regression in the CI of this commit (GitHub Actions run 39100071941).
  • QuestaSim: the full regression of 499 tests passed on 2026-10-18 on commit 039a86e with and without code coverage; the design sources of this commit are identical to it. The run of the CCSDS test data set (1275 tests) passed as well.
  • Code coverage and the justification of every remaining miss: docs/coverage.md.

Known issue

  • The AMD Vivado simulator (xsim 2025.2) stops at time 0 in ocp_predictor with "Index 2 out of bound 1 downto 0" (seen for the configuration c26 and in the reference system spfi_compress_encrypt). The cause is a defect of that simulator: through an alias of an element of an array of records, it gives the elements of a record field that is an index-constrained unconstrained array the constraint of another field. GHDL, QuestaSim and synthesis are not affected. A behaviour-neutral workaround (fully constrained array types) is in preparation for the next release.

Dependencies

Documentation

The user guide (docs/user_guide.md) describes the interfaces, the programming sequence, the integration constraints and the conformance to the standard, including the clauses that are not or only partly implemented.