RiscV-Formal/hs/Types.hs

20 lines
429 B
Haskell

{-# LANGUAGE DataKinds #-}
{-# LANGUAGE NumericUnderscores #-}
module Types(Pc, Mem, Insn, Addr,
Byte, HalfWord, FullWord, DoubleWord, QuadWord)
where
import Clash.Prelude
type Byte = Unsigned 8
type HalfWord = Unsigned 16
type FullWord = Unsigned 32
type DoubleWord = Unsigned 64
type QuadWord = Unsigned 128
type Insn = FullWord
type Pc = DoubleWord
type Addr = DoubleWord
type Mem n = Vec n FullWord