This repository has been archived on 2025-06-25. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
riscv-bluespec-classic/bs/BusTypes.bs

33 lines
640 B
Haskell

package BusTypes(BusVal, TransactionSize) where
import Types
data BusError
= UnMapped
| UnAligned
deriving (Bits, Eq, FShow)
data TransactionSize
= SizeByte
| SizeHalfWord
| SizeFullWord
| SizeDoubleWord
| SizeQuadWord
deriving (Bits, Eq, FShow)
data BusVal
= BusByte Byte
| BusHalfWord HalfWord
| BusFullWord FullWord
| BusDoubleWord DoubleWord
| BusQuadWord QuadWord
deriving (Bits, Eq, FShow)
data ReadRequest = ReadRequest Addr TransactionSize
deriving (Bits, Eq, FShow)
data WriteRequest = WriteRequest Addr BusVal
deriving (Bits, Eq, FShow)
a :: UInt 5
a = 3