Skip to content

Releases: chipsalliance/chisel

Chisel v7.9.0

12 Feb 23:13
9fe0722

Choose a tag to compare

Features

  • Add parameter to ExtModule for requirements (by @trmckay in #5174)
  • svsim: add Verilator coverage settings and reporting (by @MrAMS in #5200)

Fixes

Dependency Updates

  • [cd] Bump CIRCT from firtool-1.139.0 to firtool-1.140.0 (by @chiselbot in #5195)

Build and Internal Changes

Full Changelog: v7.8.0...v7.9.0

Chisel v7.8.0

03 Feb 01:35
8efa15c

Choose a tag to compare

Features

  • Add noModulePrefix (by @trmckay in #5147)
  • Add chisel3.SimulationTestHarnessInterface and chisel3.SimulationTestHarness (by @trmckay in #5155)
  • Add FlattenInstanceAllowDedup (by @jackkoenig in #5162)
  • layer: add requireNotElideBlocksContext. (by @dtzSiFive in #5164)
  • Add RunUntilFinished and RunUntilSuccess stimulus for SimulationTestHarnessInterface (by @trmckay in #5175)
  • Add ChiselSim.simulateTest and SimulationTestStimulus (by @trmckay in #5176)
  • Allow ChiselSim to link in prebuilt software libraries (by @fabianschuiki in #5189)
  • Add ChiselSim Settings.defaultTest for SimulationTestHarnessInterface modules (by @trmckay in #5192)

Fixes

Build and Internal Changes

Full Changelog: v7.7.0...v7.8.0

Chisel v7.7.0

12 Jan 21:21
5b33b05

Choose a tag to compare

Features

  • Expose read-latency and write-latency parameters of FIRRTL memories (by @trmckay in #5133)

Fixes

  • Use DedupGroup Phase in ChiselStage$ (by @seldridge in #4728)
  • Add a workaround to verification directory path problem on Windows and firtool 1.138.0 (by @Siudya in #5134)
  • [svsim] Fix deadlock in long simulations by flushing expectation queue (by @Emin017 in #5132)

Documentation

Dependency Updates

  • [cd] Bump CIRCT from firtool-1.138.0 to firtool-1.139.0 (by @chiselbot in #5140)

Build and Internal Changes

Full Changelog: v7.6.0...v7.7.0

Chisel v7.6.0

20 Dec 22:11

Choose a tag to compare

Features

Backend Code Generation

  • Fix name prefixing from views on rhs of connection (by @jackkoenig in #5117)
    Previously views when used on the LHS of a connection operator, views would provide the prefix view_. Now, at least for 1-1 views, the prefix is derived from the name of the target of the view. This is a common issue when using FlatIO.

Fixes

Dependency Updates

Build and Internal Changes

Full Changelog: v7.5.0...v7.6.0

Chisel v7.5.0

09 Dec 19:27
25d2f7b

Choose a tag to compare

API Deprecation

Fixes

  • Support simple views in domain association (by @jackkoenig in #5106)
    Also give a useful error message for non-simple views.
  • Fix boring taps of views of ExtModule ports (by @jackkoenig in #5110)
    This is a common issue when using FlatIO with ExtModules.
  • Support absolute path source locators (by @jackkoenig in #5111)
    The default behavior of Scala-cli is to use a Bloop server running in the root directory for compilation. This results in absolute paths in for source locators at compile time, but our logic had assumed we always had relative paths and was manually stripping the leading forward slash in source locator paths. Instead, we strip the leading forward slash for relative paths by including it in the path prefix we remove, and then in error reporting we add support for paths that are already absolute.

Documentation

Dependency Updates

Build and Internal Changes

  • [main] Enable MiMa for v7.4.0 (by @chiselbot in #5091)
  • Remove all panama related stuff (by @jackkoenig in #5104)
    Remove all Panama-related code. Refresh lit-based tests and put them in CI.
  • Simplify cross build (by @jackkoenig in #5098)
    You now run mill cross builds with just major version, e.g. mill chisel[2.13].compile and mill chisel[3].compile rather than mill chisel[2.13.18].compile and mill chisel[3.3.4].compile.

Full Changelog: v7.4.0...v7.5.0

Chisel v7.4.0

26 Nov 17:05
40942a3

Choose a tag to compare

API Modification

Fixes

Documentation

  • [chisel3.simulator.scalatest.Cli] fixing EmitVpd option description (by @nibrunieAtSi5 in #5072)

Dependency Updates

Build and Internal Changes

  • [main] Enable MiMa for v7.3.0 (by @chiselbot in #5068)
  • Add missing implies for BitsIntf (by @adkian-sifive in #5055)
    Add implies support to Scala 3 Bits
  • Bump to mill 1.0.6 (by @jackkoenig in #5079)
  • [Scala3] Add missing PrintfIntf implementation (by @adkian-sifive in #5086)
    Add missing Scala3 PrintfIntf implementation
  • [Scala3] Support multiple parameter lists for Bundles (by @adkian-sifive in #5085)
    Support multiple parameter lists in Bundles
  • [Scala3] Add support for Selectable Modules (by @adkian-sifive in #5087)
    Make Modules Selectable in Scala 3

Full Changelog: v7.3.0...v7.4.0

Chisel v7.3.0

29 Oct 22:14
42f1a1e

Choose a tag to compare

Features

Backend Code Generation

  • Empty prefixes should be ignored in emission (by @jackkoenig in #5057)
    Previously they would result in an extra '_' in the same of the signal.

Fixes

Documentation

  • [website] Update all website dependencies (by @jackkoenig in #5064)
  • [ci] Update all github actions (by @jackkoenig in #5066)
    Caching has been broken for ages, this should fix that. It also updates all actions to Node 24 released versions if they exist yet. Everything must be moved to Node 25 by April [1].
  • [website] Fix Snapshot API docs by hosting locally (by @jackkoenig in #5067)
    Previously, we linked to s01.sonatype which allowed rendering doc jars in the browser. As Sonatype has been sunset and Maven Central does not appear to support this, we will have to host the latest snapshot ourselves.

Dependency Updates

  • [cd] Bump CIRCT from firtool-1.133.0 to firtool-1.134.0 (by @chiselbot in #5058)
  • [cd] Bump CIRCT from firtool-1.134.0 to firtool-1.135.0 (by @chiselbot in #5063)

Build and Internal Changes

Full Changelog: v7.2.0...v7.3.0

Chisel v7.2.0

17 Oct 17:52
767b9eb

Choose a tag to compare

Features

  • [svsim] Add -j, --build-jobs, and --verilate-jobs (by @seldridge in #5051)
  • ChiselEnum convenience functions; support string interaction (by @maartenboersma in #5036)
    Convenience functions to interact between ChiselEnum and String. Allows RTL readability improvements, especially if Enum values are not yet known at compile time (e.g. decode tables in separate files)
  • Make BitPat accept ChiselEnum (by @maartenboersma in #5046)
    BitPat now accept ChiselEnum as an input.
  • Add option to suppress emission of source locators (by @jackkoenig in #5053)
    Users can now pass --no-source-info to suppress emission of source locators in emitted .fir.

API Deprecation

  • Add HasSerializationOverrides (by @jackkoenig in #5044)
    This is a deprecated API in firrtl.annotations that is similar to HasSerializationHints but allows for overriding the serialization class like OverrideSerializationClass does for Annotations themselves.
    Also remove the Annotation self typing on OverrideSerializationClass because it is pointless.

Fixes

  • [svsim] Fix bugs in generated simulation code for Verilator backend. (by @xiaoh105 in #5054)
    Fix the run_simulation API in resource file simulation-driver.cpp for verilator backend to allow delayed events from BlackBox be scheduled by Verilator properly.

Dependency Updates

  • [cd] Bump CIRCT from firtool-1.131.0 to firtool-1.132.0 (by @chiselbot in #5034)
  • Bump to Scala 2.13.17 (by @jackkoenig in #5039)
    Note: Scala 2.13.17 has a new warning for inferred structural types as a Scala 3 compatibility issue. This warning applies to the common val io = IO(new Bundle { ... }) pattern in Chisel. It is not actually a problem because Chisel uses Programmatic Structural Types in Scala 3. You can suppress this warning in your build by adding-Wconf:msg=will no longer have a structural type:s to your scalacOptions. See configurable warnings for more details on -Wconf.
  • [cd] Bump CIRCT from firtool-1.132.0 to firtool-1.133.0 (by @chiselbot in #5045)

Build and Internal Changes

  • [main] Enable MiMa for v7.1.1 (by @chiselbot in #5035)
  • [Scala3] Move CIRCT LTL from src/main/scala-2 to src/main/scala/ (by @adkian-sifive in #5047)
  • [Scala3] BundlePhase updates (by @adkian-sifive in #5043)
    BundlePhase now runs after PickleQuotes to sidestep Scala 3 compiler bug scala/scala3#23793
  • [Scala3] Rewrite svsim Verilator backend argument stringification (by @adkian-sifive in #5042)
    Svsim Verilator Backend argument generation was refactored to work with Scala 3
  • [Scala3] Add apply methods to assert, assume, cover (by @adkian-sifive in #5048)
    Added Scala 3 assert, assume, cover apply methods for Scala 3
  • [Scala3] Add BundleSpec and enable Scala3 CI testing (by @adkian-sifive in #5050)
    Enable CI testing in Scala 3 starting with BundleSpec

Full Changelog: v7.1.1...v7.2.0

Chisel v7.1.1

27 Sep 23:50
5cb6aa7

Choose a tag to compare

Fixes

  • Rename private[chisel3] SourceInfo$Intf to SourceInfoIntf (by @jackkoenig in #5033)
    This works around an issue in IntelliJ around using the macro to materialize SourceInfo.

Documentation

Build and Internal Changes

Full Changelog: v7.1.0...v7.1.1

Chisel v7.1.0

22 Sep 22:18
40c1f46

Choose a tag to compare

Features

Fixes

  • Fix construction of PseudoModules to have correct parent (by @jackkoenig in #5012)
    This fixes subtle bugs where accessing children of an Instance (whether directly or by using Select APIs) could change the result of future Select to be incorrect. For example, a call to Select.unsafe.allCurrentInstancesIn could cause Select.unsafe.currentInstancesIn to also incorrectly include grandchildren and all other transitive children.
  • [svsim] Update c++ CFLAGS for verilator from c++14 to c++17 (by @Gallagator in #5017)
    Verilator CFLAGS bumped from c++14 to c++17
  • Overload Stage methods to use Seq[Annotation] (by @jackkoenig in #5030)
    Also deprecate the older forms using AnnotationSeq.

Documentation

  • [docs] Update layer docs for temporal layer, NFC (by @seldridge in #5020)
  • [docs] Fix duplicate versions in Firrtl Version table (by @jackkoenig in #5025)
    Also refactor some build util code to be Tasks so they can be cached on disk.
  • [doc] Document temporal layers and ChiselSim (by @seldridge in #5027)

Dependency Updates

  • [cd] Bump CIRCT from firtool-1.128.0 to firtool-1.129.0 (by @chiselbot in #5010)
  • [cd] Bump CIRCT from firtool-1.129.0 to firtool-1.130.0 (by @chiselbot in #5015)
  • [cd] Bump CIRCT from firtool-1.130.0 to firtool-1.131.0 (by @chiselbot in #5021)

Build and Internal Changes

Full Changelog: v7.0.0...v7.1.0