Domain
chisel3.domain.Domain
A Domain represents a kind information, and the schema of that information, that can be associated with certain hardware in a Chisel design.
A domain is intended to represent a specific kind of hardware-related concern that is not captured with the digital, synchronous logic that core Chisel represents. Examples of domains are clock, reset, and power domains. And while some domains are provided as part of Chisel, domain kinds are intentionall user-extensible.
To create a new user-defined domain kind, define an object that extends the Domain class. Add fields to define the domain's schema by overridding the fields method:
import chisel3.domain.{Domain, Field}
object FooDomain extends Domain {
override def fields: Seq[(String, Field.Type)] = Seq(
"bar" -> Field.Boolean,
"baz" -> Field.Integer,
"qux" -> Field.String
)
}
Attributes
- See also
- Source
- Domain.scala
- Graph
-
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
object ClockDomain
- Self type
-
Singleton
Members list
In this article