32 lines
1.2 KiB
Haskell
32 lines
1.2 KiB
Haskell
|
module Notofnot where
|
||
|
import Clash.Explicit.Testbench
|
||
|
import Clash.Prelude
|
||
|
import ProcessingElement(processingElement)
|
||
|
import Queue(queue,queuetest)
|
||
|
|
||
|
f (x,y) = x
|
||
|
g (x,y) = y
|
||
|
|
||
|
queue_mealy1 inp = mealy queue (0:>Nil) inp
|
||
|
--size=5
|
||
|
--queue_mealy2 :: HiddenClockResetEnable dom => Signal dom (Unsigned 5,Unsigned 5,Unsigned 5,Unsigned 5,Unsigned 5,Unsigned 5,Unsigned 5,Unsigned 5,Unsigned 5,Unsigned 5) -> Signal dom Bool
|
||
|
queue_mealy2 inp = mealy queue (0:>0:>0:>0:>0:>0:>Nil) inp
|
||
|
processingElement_mealy_not1 inp = mealy processingElement (0,(31,31,0,0,31,31,31,31,31,31),(0,0,31,31,31,31,31,31,31,31)) inp
|
||
|
processingElement_mealy_not2 inp = mealy processingElement (0,(31,31,0,0,31,31,31,31,31,31),(0,0,31,31,31,31,31,31,31,31)) inp
|
||
|
|
||
|
--out1 inp = processingElement_mealy_not2 (queue_mealy2 inp)
|
||
|
|
||
|
--out inp = queue_mealy1 (processingElement_mealy_not1 inp)
|
||
|
|
||
|
--out1 inp = processingElement_mealy_not2 (queue_mealy1 (processingElement_mealy_not1 inp))
|
||
|
|
||
|
not_of_not inp = queue_mealy2 (processingElement_mealy_not2 (queue_mealy1 (processingElement_mealy_not1 inp)))
|
||
|
|
||
|
topEntity
|
||
|
:: Clock System
|
||
|
-> Reset System
|
||
|
-> Enable System
|
||
|
-> Signal System Bool
|
||
|
-> Signal System Bool
|
||
|
topEntity = exposeClockResetEnable not_of_not
|