Skip to content

Releases: chipsalliance/firrtl-spec

v4.1.0

02 Jan 19:46
v4.1.0
4a754df
Compare
Choose a tag to compare
FIRRTL Version 4.1.0

This adds the inline layer convention.

v4.0.0

15 Nov 19:46
v4.0.0
89bf725
Compare
Choose a tag to compare
FIRRTL 4.0.0 Release

v3.3.0

13 Nov 17:17
cfdde77
Compare
Choose a tag to compare
[nfc] Fix formatting

Signed-off-by: Schuyler Eldridge <schuyler.eldridge@sifive.com>

v3.2.0

27 Sep 17:50
v3.2.0
05b333f
Compare
Choose a tag to compare
v3.2.0 Release

- Add Optional Groups

v3.1.0

28 Jul 22:48
29fbc96
Compare
Choose a tag to compare
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

30 Jun 18:01
v3.0.0
046c3fc
Compare
Choose a tag to compare
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

13 Jun 14:42
v2.4.0
b25fcb5
Compare
Choose a tag to compare
v2.4.0 Release

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

v2.3.0

02 May 02:09
v2.3.0
9e01366
Compare
Choose a tag to compare
v2.3.0 Release

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

v2.2.0

29 Apr 03:26
v2.2.0
760f9fe
Compare
Choose a tag to compare
v2.2.0 Release

- Add module conventions
- Minor EBNF/grammar cleanup

v2.1.0

15 Apr 05:45
v2.1.0
40e64dc
Compare
Choose a tag to compare
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