initial support for Bus types
This commit is contained in:
parent
66464daf0c
commit
21a3ee7f7a
4 changed files with 59 additions and 3 deletions
33
bs/BusTypes.bs
Normal file
33
bs/BusTypes.bs
Normal file
|
@ -0,0 +1,33 @@
|
|||
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
|
Reference in a new issue