Skip to content

Tags: chipsalliance/firrtl-spec

Tags

v4.1.0

Verified

This tag was signed with the committer’s verified signature.
seldridge Schuyler Eldridge
FIRRTL Version 4.1.0

This adds the inline layer convention.

v4.0.0

Verified

This tag was signed with the committer’s verified signature.
seldridge Schuyler Eldridge
FIRRTL 4.0.0 Release

v3.3.0

Verified

This commit was signed with the committer’s verified signature.
seldridge Schuyler Eldridge
[nfc] Fix formatting

Signed-off-by: Schuyler Eldridge <[email protected]>

v3.2.0

Verified

This tag was signed with the committer’s verified signature.
seldridge Schuyler Eldridge
v3.2.0 Release

- Add Optional Groups

v3.1.0

v3.1.0 Release

This release includes the addition of Property types, assignment, and
literals.

There are also patch level updates included in this release:

  - Tweak mux selector width-inference behavior
  - Fixup printf grammar to reflect need for commas between exprs
  - Fix string-encoded lits usage in examples
  - Fix bug in grammar spec of integer

v3.0.0

Verified

This tag was signed with the committer’s verified signature.
seldridge Schuyler Eldridge
v3.0.0 Release

This release makes a number of breaking syntax changes to make FIRRTL
syntax simpler, easier to parse, or changed to clawback some syntax that
will be used for something else in the future.

Connect and invalidation are changed to make them easier to parse as they
now start with a keyword as opposed to an identifier or keyword:

  - `a <= b` is now `connect a, b`
  - `a is invalid` is now `invalidate a`

A register with a reset is simplified to be less verbose:

  - `reg a: UInt<1>, clock with: (reset => (b, c))` is now
    `regreset, a:UInt<1>, b, c`

String-encoded integer literals are changed to radix-encoded integer
literals.  This enables repurposing quoted strings to be actual strings as
opposed to integer literals.

  - `UInt("h42")` is now `UInt(0h42)`

Identifiers which include a leading number must now be escaped with
backticks.  This simplifies parsing as most parsers treat integers and
identifiers differently.

  - `{ 0: UInt<1> }` is now `` { `0`: UInt<1> } ``
  - `` circuit `42` : `` is now legal syntax

A number of features are added to the spec in this version:

  - Enumerations and matches on enumerations
  - Type alias

v2.4.0

Verified

This tag was signed with the committer’s verified signature.
seldridge Schuyler Eldridge
v2.4.0 Release

Add radix-specified integer literals as alternative syntax for
string-encoded integer literals.

v2.3.0

Verified

This tag was signed with the committer’s verified signature.
seldridge Schuyler Eldridge
v2.3.0 Release

- Add intrinsic, connect, invalidate syntax highlighting
- Add alternative "regreset" syntax

v2.2.0

Verified

This tag was signed with the committer’s verified signature.
seldridge Schuyler Eldridge
v2.2.0 Release

- Add module conventions
- Minor EBNF/grammar cleanup

v2.1.0

Verified

This tag was signed with the committer’s verified signature.
seldridge Schuyler Eldridge
v2.1.1 Release

- Clarifications to reference types and operations involving them
- Clarify strings in the grammar
- Add alternative connect/is invalid syntax
- Deprecate old connect/is invalid syntax