punk@1: signature MemArb where { punk@1: import ¶Assert®¶; punk@1: punk@1: import ¶Counter®¶; punk@1: punk@1: import ¶FIFOF_®¶; punk@1: punk@1: import ¶FIFOF®¶; punk@1: punk@1: import ¶FIFO®¶; punk@1: punk@1: import ¶Inout®¶; punk@1: punk@1: import ¶List®¶; punk@1: punk@1: import BFIFO; punk@1: punk@1: import ¶Clocks®¶; punk@1: punk@1: import ¶ListN®¶; punk@1: punk@1: import ¶PrimArray®¶; punk@1: punk@1: import ¶Vector®¶; punk@1: punk@1: import ¶Connectable®¶; punk@1: punk@1: import ¶GetPut®¶; punk@1: punk@1: import ¶ClientServer®¶; punk@1: punk@1: import Trace; punk@1: punk@1: import MemTypes; punk@1: punk@1: interface (MemArb.MemArb :: *) = { punk@1: MemArb.cache0_server :: ¶ClientServer®¶.¶Server®¶ MemTypes.MainMemReq MemTypes.MainMemResp; punk@1: MemArb.cache1_server :: ¶ClientServer®¶.¶Server®¶ MemTypes.MainMemReq MemTypes.MainMemResp; punk@1: MemArb.mmem_client :: ¶ClientServer®¶.¶Client®¶ MemTypes.MainMemReq MemTypes.MainMemResp punk@1: }; punk@1: punk@1: instance MemArb ¶Prelude®¶.¶PrimMakeUndefined®¶ MemArb.MemArb; punk@1: punk@1: instance MemArb ¶Prelude®¶.¶PrimDeepSeqCond®¶ MemArb.MemArb; punk@1: punk@1: instance MemArb ¶Prelude®¶.¶PrimMakeUninitialized®¶ MemArb.MemArb; punk@1: punk@1: data (MemArb.ReqPtr :: *) = MemArb.REQ0 () | MemArb.REQ1 (); punk@1: punk@1: instance MemArb ¶Prelude®¶.¶PrimMakeUndefined®¶ MemArb.ReqPtr; punk@1: punk@1: instance MemArb ¶Prelude®¶.¶PrimDeepSeqCond®¶ MemArb.ReqPtr; punk@1: punk@1: instance MemArb ¶Prelude®¶.¶PrimMakeUninitialized®¶ MemArb.ReqPtr; punk@1: punk@1: instance MemArb ¶Prelude®¶.¶Eq®¶ MemArb.ReqPtr; punk@1: punk@1: instance MemArb ¶Prelude®¶.¶Bits®¶ MemArb.ReqPtr 1; punk@1: punk@1: MemArb.mkMemArb :: (¶Prelude®¶.¶IsModule®¶ _m__ _c__) => _m__ MemArb.MemArb punk@1: }