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