punk@1
|
1 signature Core where {
|
punk@1
|
2 import ¶Assert®¶;
|
punk@1
|
3
|
punk@1
|
4 import ¶ConfigReg®¶;
|
punk@1
|
5
|
punk@1
|
6 import ¶Counter®¶;
|
punk@1
|
7
|
punk@1
|
8 import ¶FIFOF_®¶;
|
punk@1
|
9
|
punk@1
|
10 import ¶FIFOF®¶;
|
punk@1
|
11
|
punk@1
|
12 import ¶FIFO®¶;
|
punk@1
|
13
|
punk@1
|
14 import ¶Inout®¶;
|
punk@1
|
15
|
punk@1
|
16 import ¶List®¶;
|
punk@1
|
17
|
punk@1
|
18 import BFIFO;
|
punk@1
|
19
|
punk@1
|
20 import ¶Clocks®¶;
|
punk@1
|
21
|
punk@1
|
22 import ¶ListN®¶;
|
punk@1
|
23
|
punk@1
|
24 import ¶Monad®¶;
|
punk@1
|
25
|
punk@1
|
26 import ¶PrimArray®¶;
|
punk@1
|
27
|
punk@1
|
28 import ¶RWire®¶;
|
punk@1
|
29
|
punk@1
|
30 import ¶RegFile®¶;
|
punk@1
|
31
|
punk@1
|
32 import SFIFO;
|
punk@1
|
33
|
punk@1
|
34 import ¶Vector®¶;
|
punk@1
|
35
|
punk@1
|
36 import ¶Connectable®¶;
|
punk@1
|
37
|
punk@1
|
38 import ¶GetPut®¶;
|
punk@1
|
39
|
punk@1
|
40 import ¶ClientServer®¶;
|
punk@1
|
41
|
punk@1
|
42 import Trace;
|
punk@1
|
43
|
punk@1
|
44 import MemTypes;
|
punk@1
|
45
|
punk@1
|
46 import MemArb;
|
punk@1
|
47
|
punk@1
|
48 import ProcTypes;
|
punk@1
|
49
|
punk@1
|
50 import BRegFile;
|
punk@1
|
51
|
punk@1
|
52 import BranchPred;
|
punk@1
|
53
|
punk@1
|
54 import DataCacheBlocking;
|
punk@1
|
55
|
punk@1
|
56 import InstCacheBlocking;
|
punk@1
|
57
|
punk@1
|
58 import Processor;
|
punk@1
|
59
|
punk@1
|
60 interface (Core.CoreStats :: *) = {
|
punk@1
|
61 Core.dcache :: DataCacheBlocking.DCacheStats;
|
punk@1
|
62 Core.icache :: InstCacheBlocking.ICacheStats;
|
punk@1
|
63 Core.proc :: Processor.ProcStats
|
punk@1
|
64 };
|
punk@1
|
65
|
punk@1
|
66 instance Core ¶Prelude®¶.¶PrimMakeUndefined®¶ Core.CoreStats;
|
punk@1
|
67
|
punk@1
|
68 instance Core ¶Prelude®¶.¶PrimDeepSeqCond®¶ Core.CoreStats;
|
punk@1
|
69
|
punk@1
|
70 instance Core ¶Prelude®¶.¶PrimMakeUninitialized®¶ Core.CoreStats;
|
punk@1
|
71
|
punk@1
|
72 interface (Core.Core :: *) = {
|
punk@1
|
73 Core.mmem_client :: ¶ClientServer®¶.¶Client®¶ MemTypes.MainMemReq MemTypes.MainMemResp;
|
punk@1
|
74 Core.stats :: Core.CoreStats;
|
punk@1
|
75 Core.tohost :: Processor.CPUToHost
|
punk@1
|
76 };
|
punk@1
|
77
|
punk@1
|
78 instance Core ¶Prelude®¶.¶PrimMakeUndefined®¶ Core.Core;
|
punk@1
|
79
|
punk@1
|
80 instance Core ¶Prelude®¶.¶PrimDeepSeqCond®¶ Core.Core;
|
punk@1
|
81
|
punk@1
|
82 instance Core ¶Prelude®¶.¶PrimMakeUninitialized®¶ Core.Core;
|
punk@1
|
83
|
punk@1
|
84 Core.mkCore :: (¶Prelude®¶.¶IsModule®¶ _m__ _c__) => _m__ Core.Core
|
punk@1
|
85 }
|