MTL_Monitor/src/MTL2Clash_tool/Prop.hs

26 lines
1.1 KiB
Haskell

module Prop where
import Clash.Prelude
import ProcessingElement(processingElement)
import Queue(queue,queuetest)
import Queue30(queue30,queuetest30)
queue_mealy_1 inp = mealy queue (0:>0:>0:>0:>0:>0:>Nil) inp
processingElement_mealy_A inp = mealy processingElement (1,(0,0,31,31,31,31,31,31,31,31),(31,31,0,0,31,31,31,31,31,31)) inp
queue_mealy_2 inp = mealy queue (0:>0:>0:>0:>0:>0:>Nil) inp
processingElement_mealy_box2 inp = mealy processingElement (1,(31,31,31,31,0,0,5,5,31,31),(31,31,2,5,0,0,31,31,31,31)) inp
queue_mealy_3 inp = mealy queue (0:>Nil) inp
processingElement_mealy_or3 inp = mealy processingElement (0,(0,0,31,31,31,31,31,31,31,31),(31,31,0,0,31,31,31,31,31,31)) inp
prop (inpA,inpB) = queue_mealy_3 ( processingElement_mealy_or3 ( bundle ( (( queue_mealy_1 ( processingElement_mealy_A ( bundle ( inpA , inpA )) ) )) , (queue_mealy_2 ( processingElement_mealy_box2 ( bundle ( (inpB) , (inpB) ) ) )) ) ) )
topEntity
:: Clock System
-> Reset System
-> Enable System
-> (Signal System (Bool) , Signal System (Bool))
-> Signal System ( Bool)
topEntity = exposeClockResetEnable prop