Generating and parsing Value Change Dump (VCD) files.
- data VCDHandle
- data Timescale
- class Variable a where
- variable :: Eq a => String -> Int -> (a -> String) -> VCDHandle -> [String] -> a -> IO (a -> IO ())
- newVCD :: Handle -> Timescale -> IO VCDHandle
- step :: VCDHandle -> Int -> IO ()
- step' :: VCDHandle -> Int -> IO ()
- data VCD = VCD Timescale [Definition] [(Int, [(String, Value)])]
- data Definition
- data Value
- parseVCD :: String -> VCD
VCD Generation
VCD Timescale.
Types that can be recorded as VCD variables.
variable :: Eq a => String -> Int -> (a -> String) -> VCDHandle -> [String] -> a -> IO (a -> IO ())Source
Helper to create new Variable
instances.
newVCD :: Handle -> Timescale -> IO VCDHandleSource
Create a new handle for generating a VCD file with a given timescale.
step :: VCDHandle -> Int -> IO ()Source
Set a time step. step
will also transition a VCDHandle from the definition to the recording phase.
step' :: VCDHandle -> Int -> IO ()Source
Save as step
, but forces a step recording even if variables have not changed. Useful for realtime simulation.
VCD Parsing
data Definition Source
Variable definition.