OpenCores
URL https://opencores.org/ocsvn/cryptosorter/cryptosorter/trunk

Subversion Repositories cryptosorter

[/] [cryptosorter/] [trunk/] [memocodeDesignContest2008/] [sort/] [mkBRAMLevel2MergerInstance.sched] - Blame information for rev 6

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 3 kfleming
=== Generated schedule for mkBRAMLevel2MergerInstance ===
2
 
3
Method schedule
4
---------------
5
Method: inStream_getTokInfo
6
Ready signal: res_inFstHalf_finishInit && res_inSndHalf_finishInit
7
Conflict-free: inStream_getTokInfo,
8
               inStream_putDeqTok,
9
               inStream_putRecord,
10
               outStream_putTokInfo,
11
               outStream_getDeqTok_fst,
12
               outStream_getDeqTok_snd,
13
               outStream_getRecord_fst,
14
               outStream_getRecord_snd
15
 
16
Method: inStream_putDeqTok
17
Ready signal: res_inSndHalf_finishInit && res_inFstHalf_finishInit
18
Conflict-free: inStream_getTokInfo,
19
               inStream_putRecord,
20
               outStream_putTokInfo,
21
               outStream_getDeqTok_fst,
22
               outStream_getDeqTok_snd,
23
               outStream_getRecord_fst,
24
               outStream_getRecord_snd
25
Conflicts: inStream_putDeqTok
26
 
27
Method: inStream_putRecord
28
Ready signal: res_inSndHalf_finishInit && res_inFstHalf_finishInit
29
Conflict-free: inStream_getTokInfo,
30
               inStream_putDeqTok,
31
               outStream_putTokInfo,
32
               outStream_getDeqTok_fst,
33
               outStream_getDeqTok_snd,
34
               outStream_getRecord_fst,
35
               outStream_getRecord_snd
36
Conflicts: inStream_putRecord
37
 
38
Method: outStream_putTokInfo
39
Ready signal: True
40
Conflict-free: inStream_getTokInfo,
41
               inStream_putDeqTok,
42
               inStream_putRecord,
43
               outStream_getRecord_fst,
44
               outStream_getRecord_snd
45
Sequenced before (restricted): outStream_getDeqTok_fst,
46
                               outStream_getDeqTok_snd
47
Conflicts: outStream_putTokInfo
48
 
49
Method: outStream_getDeqTok_fst
50
Ready signal: res_getDeqTokW.whas && res_getDeqTokW.wget[1]
51
Conflict-free: inStream_getTokInfo,
52
               inStream_putDeqTok,
53
               inStream_putRecord,
54
               outStream_getDeqTok_fst,
55
               outStream_getDeqTok_snd,
56
               outStream_getRecord_fst,
57
               outStream_getRecord_snd
58
Sequenced after (restricted): outStream_putTokInfo
59
 
60
Method: outStream_getDeqTok_snd
61
Ready signal: res_getDeqTokW.whas && res_getDeqTokW.wget[1]
62
Conflict-free: inStream_getTokInfo,
63
               inStream_putDeqTok,
64
               inStream_putRecord,
65
               outStream_getDeqTok_fst,
66
               outStream_getDeqTok_snd,
67
               outStream_getRecord_fst,
68
               outStream_getRecord_snd
69
Sequenced after (restricted): outStream_putTokInfo
70
 
71
Method: outStream_getRecord_fst
72
Ready signal: res_outW.whas && res_outW.wget[130]
73
Conflict-free: inStream_getTokInfo,
74
               inStream_putDeqTok,
75
               inStream_putRecord,
76
               outStream_putTokInfo,
77
               outStream_getDeqTok_fst,
78
               outStream_getDeqTok_snd,
79
               outStream_getRecord_fst,
80
               outStream_getRecord_snd
81
 
82
Method: outStream_getRecord_snd
83
Ready signal: res_outW.whas && res_outW.wget[130]
84
Conflict-free: inStream_getTokInfo,
85
               inStream_putDeqTok,
86
               inStream_putRecord,
87
               outStream_putTokInfo,
88
               outStream_getDeqTok_fst,
89
               outStream_getDeqTok_snd,
90
               outStream_getRecord_fst,
91
               outStream_getRecord_snd
92
 
93
Rule schedule
94
-------------
95
Rule: res_compares
96
Predicate: res_inFstHalf_ugbram_bram.RDY_read_resp &&
97
           res_inSndHalf_ugbram_bram.RDY_read_resp &&
98
           res_inFstHalf_finishInit &&
99
           res_inSndHalf_finishInit && res_reqQ.i_notEmpty
100
Blocking rules: (none)
101
 
102
Rule: res_nextToProcess
103
Predicate: res_inFstHalf_finishInit &&
104
           res_inSndHalf_finishInit &&
105
           ((! res_scheduler_getNextW.whas) ||
106
            (! res_scheduler_getNextW.wget[1]) ||
107
            res_reqQ.i_notFull)
108
Blocking rules: (none)
109
 
110
Rule: res_feedScheduler
111
Predicate: (((res_nextTokW.whas
112
              ? res_nextTokW.wget[1:0]
113
              : _) ==
114
             2'd0) ||
115
            res_inFstHalf_finishInit) &&
116
           (((res_nextTokW.whas
117
              ? res_nextTokW.wget[1:0]
118
              : _) ==
119
             2'd0) ||
120
            ((res_scheduler_last[1]
121
              ? ! res_scheduler_last[0]
122
              : _)
123
             ? res_scheduler_last[1] || (res_inFstHalf_usedReg[2:0] == 3'd0)
124
             : (res_inFstHalf_usedReg[2:0] == 3'd0)) ||
125
            res_inSndHalf_finishInit) &&
126
           (((! ((res_nextTokW.whas
127
                  ? res_nextTokW.wget[1:0]
128
                  : _) ==
129
                 2'd0)) &&
130
             ((res_scheduler_last[1]
131
               ? ! res_scheduler_last[0]
132
               : _)
133
              ? (! res_scheduler_last[1]) &&
134
                (! (res_inFstHalf_usedReg[2:0] == 3'd0))
135
              : (! (res_inFstHalf_usedReg[2:0] == 3'd0))) &&
136
             (! (res_inSndHalf_usedReg[2:0] == 3'd0)))
137
            ? res_inFstHalf_finishInit && res_inSndHalf_finishInit
138
            : ((((res_nextTokW.whas
139
                  ? res_nextTokW.wget[3:2]
140
                  : _) ==
141
                 2'd0) ||
142
                res_inFstHalf_finishInit) &&
143
               (((res_nextTokW.whas
144
                  ? res_nextTokW.wget[3:2]
145
                  : _) ==
146
                 2'd0) ||
147
                ((res_scheduler_last[1]
148
                  ? res_scheduler_last[0]
149
                  : _)
150
                 ? res_scheduler_last[1] ||
151
                   ((res_scheduler_last[1]
152
                     ? ! res_scheduler_last[0]
153
                     : _)
154
                    ? res_inFstHalf_usedReg[2:0] == 3'd0
155
                    : (res_inFstHalf_usedReg[5:3] == 3'd0))
156
                 : (res_inFstHalf_usedReg[5:3] == 3'd0)) ||
157
                res_inSndHalf_finishInit)))
158
Blocking rules: (none)
159
 
160
Rule: res_inSndHalf_processDeq
161
Predicate: res_inSndHalf_finishInit &&
162
           res_inSndHalf_deqIdx.whas && res_inSndHalf_deqIdx.wget[1]
163
Blocking rules: (none)
164
 
165
Rule: res_inSndHalf_processFirstReq
166
Predicate: res_inSndHalf_finishInit &&
167
           res_inSndHalf_firstIdx.whas && res_inSndHalf_firstIdx.wget[1]
168
Blocking rules: (none)
169
 
170
Rule: res_inSndHalf_processEnq
171
Predicate: res_inSndHalf_finishInit &&
172
           res_inSndHalf_enqIdx.whas && res_inSndHalf_enqIdx.wget[1]
173
Blocking rules: (none)
174
 
175
Rule: res_inSndHalf_updateFreeReg
176
Predicate: res_inSndHalf_finishInit &&
177
           ((res_inSndHalf_decrFreeIdx.whas &&
178
             res_inSndHalf_decrFreeIdx.wget[1]) ||
179
            (res_inSndHalf_deqIdx.whas && res_inSndHalf_deqIdx.wget[1]))
180
Blocking rules: (none)
181
 
182
Rule: res_inSndHalf_updateUsedReg
183
Predicate: res_inSndHalf_finishInit &&
184
           ((res_inSndHalf_enqIdx.whas && res_inSndHalf_enqIdx.wget[1]) ||
185
            (res_inSndHalf_deqIdx.whas && res_inSndHalf_deqIdx.wget[1]))
186
Blocking rules: (none)
187
 
188
Rule: res_inSndHalf_initialization
189
Predicate: ! res_inSndHalf_finishInit
190
Blocking rules: (none)
191
 
192
Rule: res_inFstHalf_processDeq
193
Predicate: res_inFstHalf_finishInit &&
194
           res_inFstHalf_deqIdx.whas && res_inFstHalf_deqIdx.wget[1]
195
Blocking rules: (none)
196
 
197
Rule: res_inFstHalf_processFirstReq
198
Predicate: res_inFstHalf_finishInit &&
199
           res_inFstHalf_firstIdx.whas && res_inFstHalf_firstIdx.wget[1]
200
Blocking rules: (none)
201
 
202
Rule: res_inFstHalf_processEnq
203
Predicate: res_inFstHalf_finishInit &&
204
           res_inFstHalf_enqIdx.whas && res_inFstHalf_enqIdx.wget[1]
205
Blocking rules: (none)
206
 
207
Rule: res_inFstHalf_updateFreeReg
208
Predicate: res_inFstHalf_finishInit &&
209
           ((res_inFstHalf_decrFreeIdx.whas &&
210
             res_inFstHalf_decrFreeIdx.wget[1]) ||
211
            (res_inFstHalf_deqIdx.whas && res_inFstHalf_deqIdx.wget[1]))
212
Blocking rules: (none)
213
 
214
Rule: res_inFstHalf_updateUsedReg
215
Predicate: res_inFstHalf_finishInit &&
216
           ((res_inFstHalf_enqIdx.whas && res_inFstHalf_enqIdx.wget[1]) ||
217
            (res_inFstHalf_deqIdx.whas && res_inFstHalf_deqIdx.wget[1]))
218
Blocking rules: (none)
219
 
220
Rule: res_inFstHalf_initialization
221
Predicate: ! res_inFstHalf_finishInit
222
Blocking rules: (none)
223
 
224
Logical execution order: outStream_putTokInfo,
225
                         inStream_putRecord,
226
                         inStream_putDeqTok,
227
                         inStream_getTokInfo,
228
                         res_feedScheduler,
229
                         res_nextToProcess,
230
                         outStream_getDeqTok_snd,
231
                         outStream_getDeqTok_fst,
232
                         res_compares,
233
                         outStream_getRecord_snd,
234
                         outStream_getRecord_fst,
235
                         res_inSndHalf_processFirstReq,
236
                         res_inSndHalf_processDeq,
237
                         res_inSndHalf_updateFreeReg,
238
                         res_inSndHalf_updateUsedReg,
239
                         res_inSndHalf_processEnq,
240
                         res_inFstHalf_processFirstReq,
241
                         res_inSndHalf_initialization,
242
                         res_inFstHalf_processDeq,
243
                         res_inFstHalf_updateFreeReg,
244
                         res_inFstHalf_updateUsedReg,
245
                         res_inFstHalf_processEnq,
246
                         res_inFstHalf_initialization
247
 
248
==========================================================

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.