intel / rohd

The Rapid Open Hardware Development (ROHD) framework is a framework for describing and verifying hardware in the Dart programming language.
https://intel.github.io/rohd-website
BSD 3-Clause "New" or "Revised" License
374 stars 67 forks source link

Support generation of latches #317

Open mkorbel1 opened 1 year ago

mkorbel1 commented 1 year ago

Motivation

There are some scenarios where creating latches is valuable (always_latch).

Desired solution

Add a way to generate latches to ROHD. Perhaps as a sibling or configuration of Sequential.

Alternatives considered

Ban latches. This is effectively the current answer, but may be overly restrictive.

Additional details

Detection of latch hardware may be a part of this (see https://github.com/intel/rohd/issues/285).

Thought should be put in to how to make latches as safe as possible to deal with.