Crate tydi

Source
Expand description

Tydi is an open specification for complex data structures over hardware streams.

This crate implements a library that helps to work with the constructs defined within the Tydi specification.

It also contains features that enable users to generate hardware component declarations based on the specification.

§Tydi crate

§Modules

The tydi crate provides the following modules.

  • physical: for physical stream types as described in the Tydi specification.
  • logical: for logical stream types as described in the Tydi specification.
  • design: for constructs that are not (yet) described in the Tydi specification, such as streamlets.

§Features

The tydi crate supports the following (non-default) features:

  • cli command-line-interface generator tool.
  • generator module for generation of HDL templates.
  • parser module with parser for Streamlet Definition Files.

§Tools

§tydi command-line-interface

The tydi command-line-interface provides easy access to the available tools in this crate. It can be easily installed from source using cargo.

§Install

cargo install tydi

§Usage

To show CLI help, use:

tydi --help

To generate VHDL sources in the current directory from all *.sdf files in the current directory, use:

tydi generate vhdl <project name>

§Examples

§Specification

The Tydi specification is available in the Tydi book.

Modules§

design
Constructs that are used to generate hardware designs, that are not part of the specification (yet).
generator
Generator methods and implementations for Tydi types.
logical
Logical streams.
parser
Parser methods and implementations for Tydi types.
physical
Physical streams.

Macros§

cat
Concatenate stuff using format with an underscore in between. Useful if the separator ever changes.

Structs§

Logger
Name
Type-safe wrapper for valid names.
NonZeroReal
PathName
Type-safe path for names.
UniquelyNamedBuilder

Enums§

Error
Error variants used in this crate.

Traits§

Reverse
In-place reverse.
Reversed
Construct reversed items.

Type Aliases§

NonNegative
Non-negative integer.
Positive
Positive integer.
PositiveReal
Positive real.
Result
Result type with Error variants.