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

Subversion Repositories idea

[/] [idea/] [trunk/] [behavioral/] [idea_machine/] [heart_ctrl.vbe] - Blame information for rev 9

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 6 marta
-- VHDL data flow description generated from `heart_ctrl`
2
--              date : Mon Sep 10 23:10:01 2001
3
 
4
 
5
-- Entity Declaration
6
 
7
ENTITY heart_ctrl IS
8
  PORT (
9
  ck : in BIT;  -- ck
10
  reset : in BIT;       -- reset
11
  start : in BIT;       -- start
12
  key_ready : in BIT;   -- key_ready
13
  round : out bit_vector(2 DOWNTO 0) ;  -- round
14
  en1 : out BIT;        -- en1
15
  en2 : out BIT;        -- en2
16
  en3 : out BIT;        -- en3
17
  en4 : out BIT;        -- en4
18
  en5 : out BIT;        -- en5
19
  en6 : out BIT;        -- en6
20
  en7 : out BIT;        -- en7
21
  en_out : out BIT;     -- en_out
22
  en_key_out : out BIT; -- en_key_out
23
  sel_in : out BIT;     -- sel_in
24
  finish : out BIT;     -- finish
25
  vdd : in BIT; -- vdd
26
  vss : in BIT  -- vss
27
  );
28
END heart_ctrl;
29
 
30
 
31
-- Architecture Declaration
32
 
33
ARCHITECTURE VBE OF heart_ctrl IS
34
  SIGNAL current_state : REG_VECTOR(6 DOWNTO 0) REGISTER;       -- current_state
35
  SIGNAL current_state_s67 : BIT;               -- current_state_s67
36
  SIGNAL next_state_s67 : BIT;          -- next_state_s67
37
  SIGNAL current_state_s66 : BIT;               -- current_state_s66
38
  SIGNAL next_state_s66 : BIT;          -- next_state_s66
39
  SIGNAL current_state_s65 : BIT;               -- current_state_s65
40
  SIGNAL next_state_s65 : BIT;          -- next_state_s65
41
  SIGNAL current_state_s64 : BIT;               -- current_state_s64
42
  SIGNAL next_state_s64 : BIT;          -- next_state_s64
43
  SIGNAL current_state_s63 : BIT;               -- current_state_s63
44
  SIGNAL next_state_s63 : BIT;          -- next_state_s63
45
  SIGNAL current_state_s62 : BIT;               -- current_state_s62
46
  SIGNAL next_state_s62 : BIT;          -- next_state_s62
47
  SIGNAL current_state_s61 : BIT;               -- current_state_s61
48
  SIGNAL next_state_s61 : BIT;          -- next_state_s61
49
  SIGNAL current_state_s60 : BIT;               -- current_state_s60
50
  SIGNAL next_state_s60 : BIT;          -- next_state_s60
51
  SIGNAL current_state_s59 : BIT;               -- current_state_s59
52
  SIGNAL next_state_s59 : BIT;          -- next_state_s59
53
  SIGNAL current_state_s58 : BIT;               -- current_state_s58
54
  SIGNAL next_state_s58 : BIT;          -- next_state_s58
55
  SIGNAL current_state_s57 : BIT;               -- current_state_s57
56
  SIGNAL next_state_s57 : BIT;          -- next_state_s57
57
  SIGNAL current_state_s56 : BIT;               -- current_state_s56
58
  SIGNAL next_state_s56 : BIT;          -- next_state_s56
59
  SIGNAL current_state_s55 : BIT;               -- current_state_s55
60
  SIGNAL next_state_s55 : BIT;          -- next_state_s55
61
  SIGNAL current_state_s54 : BIT;               -- current_state_s54
62
  SIGNAL next_state_s54 : BIT;          -- next_state_s54
63
  SIGNAL current_state_s53 : BIT;               -- current_state_s53
64
  SIGNAL next_state_s53 : BIT;          -- next_state_s53
65
  SIGNAL current_state_s52 : BIT;               -- current_state_s52
66
  SIGNAL next_state_s52 : BIT;          -- next_state_s52
67
  SIGNAL current_state_s51 : BIT;               -- current_state_s51
68
  SIGNAL next_state_s51 : BIT;          -- next_state_s51
69
  SIGNAL current_state_s50 : BIT;               -- current_state_s50
70
  SIGNAL next_state_s50 : BIT;          -- next_state_s50
71
  SIGNAL current_state_s49 : BIT;               -- current_state_s49
72
  SIGNAL next_state_s49 : BIT;          -- next_state_s49
73
  SIGNAL current_state_s48 : BIT;               -- current_state_s48
74
  SIGNAL next_state_s48 : BIT;          -- next_state_s48
75
  SIGNAL current_state_s47 : BIT;               -- current_state_s47
76
  SIGNAL next_state_s47 : BIT;          -- next_state_s47
77
  SIGNAL current_state_s46 : BIT;               -- current_state_s46
78
  SIGNAL next_state_s46 : BIT;          -- next_state_s46
79
  SIGNAL current_state_s45 : BIT;               -- current_state_s45
80
  SIGNAL next_state_s45 : BIT;          -- next_state_s45
81
  SIGNAL current_state_s44 : BIT;               -- current_state_s44
82
  SIGNAL next_state_s44 : BIT;          -- next_state_s44
83
  SIGNAL current_state_s43 : BIT;               -- current_state_s43
84
  SIGNAL next_state_s43 : BIT;          -- next_state_s43
85
  SIGNAL current_state_s42 : BIT;               -- current_state_s42
86
  SIGNAL next_state_s42 : BIT;          -- next_state_s42
87
  SIGNAL current_state_s41 : BIT;               -- current_state_s41
88
  SIGNAL next_state_s41 : BIT;          -- next_state_s41
89
  SIGNAL current_state_s40 : BIT;               -- current_state_s40
90
  SIGNAL next_state_s40 : BIT;          -- next_state_s40
91
  SIGNAL current_state_s39 : BIT;               -- current_state_s39
92
  SIGNAL next_state_s39 : BIT;          -- next_state_s39
93
  SIGNAL current_state_s38 : BIT;               -- current_state_s38
94
  SIGNAL next_state_s38 : BIT;          -- next_state_s38
95
  SIGNAL current_state_s37 : BIT;               -- current_state_s37
96
  SIGNAL next_state_s37 : BIT;          -- next_state_s37
97
  SIGNAL current_state_s36 : BIT;               -- current_state_s36
98
  SIGNAL next_state_s36 : BIT;          -- next_state_s36
99
  SIGNAL current_state_s35 : BIT;               -- current_state_s35
100
  SIGNAL next_state_s35 : BIT;          -- next_state_s35
101
  SIGNAL current_state_s34 : BIT;               -- current_state_s34
102
  SIGNAL next_state_s34 : BIT;          -- next_state_s34
103
  SIGNAL current_state_s33 : BIT;               -- current_state_s33
104
  SIGNAL next_state_s33 : BIT;          -- next_state_s33
105
  SIGNAL current_state_s32 : BIT;               -- current_state_s32
106
  SIGNAL next_state_s32 : BIT;          -- next_state_s32
107
  SIGNAL current_state_s31 : BIT;               -- current_state_s31
108
  SIGNAL next_state_s31 : BIT;          -- next_state_s31
109
  SIGNAL current_state_s30 : BIT;               -- current_state_s30
110
  SIGNAL next_state_s30 : BIT;          -- next_state_s30
111
  SIGNAL current_state_s29 : BIT;               -- current_state_s29
112
  SIGNAL next_state_s29 : BIT;          -- next_state_s29
113
  SIGNAL current_state_s28 : BIT;               -- current_state_s28
114
  SIGNAL next_state_s28 : BIT;          -- next_state_s28
115
  SIGNAL current_state_s27 : BIT;               -- current_state_s27
116
  SIGNAL next_state_s27 : BIT;          -- next_state_s27
117
  SIGNAL current_state_s26 : BIT;               -- current_state_s26
118
  SIGNAL next_state_s26 : BIT;          -- next_state_s26
119
  SIGNAL current_state_s25 : BIT;               -- current_state_s25
120
  SIGNAL next_state_s25 : BIT;          -- next_state_s25
121
  SIGNAL current_state_s24 : BIT;               -- current_state_s24
122
  SIGNAL next_state_s24 : BIT;          -- next_state_s24
123
  SIGNAL current_state_s23 : BIT;               -- current_state_s23
124
  SIGNAL next_state_s23 : BIT;          -- next_state_s23
125
  SIGNAL current_state_s22 : BIT;               -- current_state_s22
126
  SIGNAL next_state_s22 : BIT;          -- next_state_s22
127
  SIGNAL current_state_s21 : BIT;               -- current_state_s21
128
  SIGNAL next_state_s21 : BIT;          -- next_state_s21
129
  SIGNAL current_state_s20 : BIT;               -- current_state_s20
130
  SIGNAL next_state_s20 : BIT;          -- next_state_s20
131
  SIGNAL current_state_s19 : BIT;               -- current_state_s19
132
  SIGNAL next_state_s19 : BIT;          -- next_state_s19
133
  SIGNAL current_state_s18 : BIT;               -- current_state_s18
134
  SIGNAL next_state_s18 : BIT;          -- next_state_s18
135
  SIGNAL current_state_s17 : BIT;               -- current_state_s17
136
  SIGNAL next_state_s17 : BIT;          -- next_state_s17
137
  SIGNAL current_state_s16 : BIT;               -- current_state_s16
138
  SIGNAL next_state_s16 : BIT;          -- next_state_s16
139
  SIGNAL current_state_s15 : BIT;               -- current_state_s15
140
  SIGNAL next_state_s15 : BIT;          -- next_state_s15
141
  SIGNAL current_state_s14 : BIT;               -- current_state_s14
142
  SIGNAL next_state_s14 : BIT;          -- next_state_s14
143
  SIGNAL current_state_s13 : BIT;               -- current_state_s13
144
  SIGNAL next_state_s13 : BIT;          -- next_state_s13
145
  SIGNAL current_state_s12 : BIT;               -- current_state_s12
146
  SIGNAL next_state_s12 : BIT;          -- next_state_s12
147
  SIGNAL current_state_s11 : BIT;               -- current_state_s11
148
  SIGNAL next_state_s11 : BIT;          -- next_state_s11
149
  SIGNAL current_state_s10 : BIT;               -- current_state_s10
150
  SIGNAL next_state_s10 : BIT;          -- next_state_s10
151
  SIGNAL current_state_s9 : BIT;                -- current_state_s9
152
  SIGNAL next_state_s9 : BIT;           -- next_state_s9
153
  SIGNAL current_state_s8 : BIT;                -- current_state_s8
154
  SIGNAL next_state_s8 : BIT;           -- next_state_s8
155
  SIGNAL current_state_s7 : BIT;                -- current_state_s7
156
  SIGNAL next_state_s7 : BIT;           -- next_state_s7
157
  SIGNAL current_state_s6 : BIT;                -- current_state_s6
158
  SIGNAL next_state_s6 : BIT;           -- next_state_s6
159
  SIGNAL current_state_s5 : BIT;                -- current_state_s5
160
  SIGNAL next_state_s5 : BIT;           -- next_state_s5
161
  SIGNAL current_state_s4 : BIT;                -- current_state_s4
162
  SIGNAL next_state_s4 : BIT;           -- next_state_s4
163
  SIGNAL current_state_s3 : BIT;                -- current_state_s3
164
  SIGNAL next_state_s3 : BIT;           -- next_state_s3
165
  SIGNAL current_state_s2 : BIT;                -- current_state_s2
166
  SIGNAL next_state_s2 : BIT;           -- next_state_s2
167
  SIGNAL current_state_s1 : BIT;                -- current_state_s1
168
  SIGNAL next_state_s1 : BIT;           -- next_state_s1
169
  SIGNAL next_state : BIT_VECTOR(6 DOWNTO 0);   -- next_state
170
 
171
BEGIN
172
  next_state(0) <= (next_state_s2 OR next_state_s3 OR next_state_s8
173
OR next_state_s10 OR next_state_s11 OR
174
next_state_s12 OR next_state_s13 OR next_state_s16 OR
175
next_state_s18 OR next_state_s19 OR next_state_s23 OR
176
next_state_s26 OR next_state_s27 OR next_state_s28 OR
177
next_state_s31 OR next_state_s32 OR next_state_s34 OR
178
next_state_s35 OR next_state_s39 OR next_state_s42 OR
179
next_state_s43 OR next_state_s48 OR next_state_s50 OR
180
next_state_s51 OR next_state_s52 OR next_state_s53 OR
181
next_state_s56 OR next_state_s58 OR next_state_s59 OR
182
next_state_s60 OR next_state_s61 OR next_state_s64);
183
  next_state(1) <= (next_state_s3 OR next_state_s6 OR next_state_s8
184
OR next_state_s9 OR next_state_s11 OR
185
next_state_s14 OR next_state_s15 OR next_state_s18 OR
186
next_state_s22 OR next_state_s25 OR next_state_s30 OR
187
next_state_s31 OR next_state_s35 OR next_state_s36 OR
188
next_state_s37 OR next_state_s42 OR next_state_s43 OR
189
next_state_s44 OR next_state_s45 OR next_state_s47 OR
190
next_state_s49 OR next_state_s50 OR next_state_s52 OR
191
next_state_s53 OR next_state_s54 OR next_state_s57 OR
192
next_state_s58 OR next_state_s60 OR next_state_s62 OR
193
next_state_s64 OR next_state_s65 OR next_state_s66 OR
194
next_state_s67);
195
  next_state(2) <= (next_state_s3 OR next_state_s6 OR next_state_s8
196
OR next_state_s10 OR next_state_s11 OR
197
next_state_s16 OR next_state_s17 OR next_state_s19 OR
198
next_state_s20 OR next_state_s21 OR next_state_s22 OR
199
next_state_s25 OR next_state_s26 OR next_state_s27 OR
200
next_state_s29 OR next_state_s32 OR next_state_s38 OR
201
next_state_s41 OR next_state_s42 OR next_state_s43 OR
202
next_state_s44 OR next_state_s46 OR next_state_s51 OR
203
next_state_s54 OR next_state_s56 OR next_state_s57 OR
204
next_state_s58 OR next_state_s59 OR next_state_s60 OR
205
next_state_s62 OR next_state_s66);
206
  next_state(3) <= (next_state_s6 OR next_state_s8 OR next_state_s14
207
 OR next_state_s16 OR next_state_s24 OR
208
next_state_s26 OR next_state_s30 OR next_state_s32 OR
209
next_state_s33 OR next_state_s34 OR next_state_s38 OR
210
next_state_s40 OR next_state_s41 OR next_state_s48 OR
211
next_state_s49 OR next_state_s50 OR next_state_s57 OR
212
next_state_s58 OR next_state_s64 OR next_state_s65 OR
213
next_state_s66 OR next_state_s67);
214
  next_state(4) <= (next_state_s3 OR next_state_s6 OR next_state_s7
215
OR next_state_s8 OR next_state_s14 OR
216
next_state_s15 OR next_state_s16 OR next_state_s19 OR
217
next_state_s22 OR next_state_s23 OR next_state_s27 OR
218
next_state_s30 OR next_state_s31 OR next_state_s32 OR
219
next_state_s35 OR next_state_s38 OR next_state_s39 OR
220
next_state_s43 OR next_state_s46 OR next_state_s47 OR
221
next_state_s55 OR next_state_s59 OR next_state_s61 OR
222
next_state_s63);
223
  next_state(5) <= (next_state_s3 OR next_state_s4 OR next_state_s6
224
OR next_state_s8 OR next_state_s11 OR
225
next_state_s12 OR next_state_s14 OR next_state_s16 OR
226
next_state_s19 OR next_state_s20 OR next_state_s22 OR
227
next_state_s24 OR next_state_s27 OR next_state_s28 OR
228
next_state_s29 OR next_state_s35 OR next_state_s36 OR
229
next_state_s38 OR next_state_s39 OR next_state_s43 OR
230
next_state_s44 OR next_state_s45 OR next_state_s46 OR
231
next_state_s51 OR next_state_s52 OR next_state_s54 OR
232
next_state_s55 OR next_state_s56 OR next_state_s60 OR
233
next_state_s67);
234
  next_state(6) <= (next_state_s3 OR next_state_s5 OR next_state_s6
235
OR next_state_s8 OR next_state_s11 OR
236
next_state_s13 OR next_state_s14 OR next_state_s16 OR
237
next_state_s19 OR next_state_s21 OR next_state_s22 OR
238
next_state_s24 OR next_state_s28 OR next_state_s29 OR
239
next_state_s30 OR next_state_s32 OR next_state_s35 OR
240
next_state_s37 OR next_state_s38 OR next_state_s39 OR
241
next_state_s40 OR next_state_s45 OR next_state_s46 OR
242
next_state_s47 OR next_state_s48 OR next_state_s51 OR
243
next_state_s53 OR next_state_s54 OR next_state_s55 OR
244
next_state_s61 OR next_state_s62 OR next_state_s63 OR
245
next_state_s64 OR next_state_s65 OR next_state_s66 OR
246
next_state_s67);
247
  next_state_s1 <= ((current_state_s1 AND (NOT(key_ready) OR NOT(
248
start))) OR current_state_s67);
249
  current_state_s1 <= (NOT(current_state(6)) AND NOT(current_state(5))
250
AND NOT(current_state(4)) AND NOT(current_state(3))
251
AND NOT(current_state(2)) AND NOT(current_state(1))
252
AND NOT(current_state(0)));
253
  next_state_s2 <= (current_state_s1 AND key_ready AND start);
254
  current_state_s2 <= (NOT(current_state(6)) AND NOT(current_state(5))
255
AND NOT(current_state(4)) AND NOT(current_state(3))
256
AND NOT(current_state(2)) AND NOT(current_state(1))
257
AND current_state(0));
258
  next_state_s3 <= current_state_s2;
259
  current_state_s3 <= (current_state(6) AND current_state(4) AND NOT(
260
current_state(3)) AND current_state(2) AND current_state(1) AND
261
current_state(0));
262
  next_state_s4 <= current_state_s3;
263
  current_state_s4 <= (NOT(current_state(6)) AND current_state(5) AND
264
NOT(current_state(4)) AND NOT(current_state(2)) AND
265
NOT(current_state(1)) AND NOT(current_state(0)));
266
  next_state_s5 <= current_state_s4;
267
  current_state_s5 <= (current_state(6) AND NOT(current_state(4)) AND
268
NOT(current_state(3)) AND NOT(current_state(2)) AND
269
NOT(current_state(1)) AND NOT(current_state(0)));
270
  next_state_s6 <= current_state_s5;
271
  current_state_s6 <= (current_state(6) AND current_state(5) AND
272
current_state(3) AND current_state(2) AND current_state(1) AND
273
NOT(current_state(0)));
274
  next_state_s7 <= current_state_s6;
275
  current_state_s7 <= (NOT(current_state(6)) AND NOT(current_state(5))
276
AND current_state(4) AND NOT(current_state(3)) AND
277
NOT(current_state(1)) AND NOT(current_state(0)));
278
  next_state_s8 <= current_state_s7;
279
  current_state_s8 <= (current_state(6) AND current_state(5) AND
280
current_state(4) AND current_state(3) AND current_state(1) AND
281
current_state(0));
282
  next_state_s9 <= current_state_s8;
283
  current_state_s9 <= (NOT(current_state(6)) AND NOT(current_state(5))
284
AND NOT(current_state(4)) AND NOT(current_state(3))
285
AND NOT(current_state(2)) AND current_state(1) AND
286
NOT(current_state(0)));
287
  next_state_s10 <= current_state_s9;
288
  current_state_s10 <= (NOT(current_state(5)) AND NOT(current_state(4))
289
AND NOT(current_state(3)) AND current_state(2) AND
290
NOT(current_state(1)) AND current_state(0));
291
  next_state_s11 <= current_state_s10;
292
  current_state_s11 <= (current_state(6) AND current_state(5) AND NOT(
293
current_state(4)) AND NOT(current_state(3)) AND current_state(1)
294
AND current_state(0));
295
  next_state_s12 <= current_state_s11;
296
  current_state_s12 <= (NOT(current_state(6)) AND current_state(5) AND
297
NOT(current_state(4)) AND NOT(current_state(2)) AND
298
NOT(current_state(1)) AND current_state(0));
299
  next_state_s13 <= current_state_s12;
300
  current_state_s13 <= (current_state(6) AND NOT(current_state(5)) AND
301
NOT(current_state(4)) AND NOT(current_state(3)) AND
302
NOT(current_state(1)) AND current_state(0));
303
  next_state_s14 <= current_state_s13;
304
  current_state_s14 <= (current_state(6) AND current_state(5) AND
305
current_state(4) AND current_state(3) AND NOT(current_state(2))
306
AND current_state(1));
307
  next_state_s15 <= current_state_s14;
308
  current_state_s15 <= (NOT(current_state(6)) AND NOT(current_state(5))
309
AND current_state(4) AND NOT(current_state(3)) AND
310
current_state(1) AND NOT(current_state(0)));
311
  next_state_s16 <= current_state_s15;
312
  current_state_s16 <= (current_state(6) AND current_state(5) AND
313
current_state(4) AND current_state(3) AND NOT(current_state(1))
314
AND current_state(0));
315
  next_state_s17 <= current_state_s16;
316
  current_state_s17 <= (NOT(current_state(6)) AND NOT(current_state(5))
317
AND NOT(current_state(3)) AND current_state(2) AND
318
NOT(current_state(1)) AND NOT(current_state(0)));
319
  next_state_s18 <= current_state_s17;
320
  current_state_s18 <= (NOT(current_state(6)) AND NOT(current_state(5))
321
AND NOT(current_state(4)) AND NOT(current_state(3))
322
AND NOT(current_state(2)) AND current_state(1) AND
323
current_state(0));
324
  next_state_s19 <= current_state_s18;
325
  current_state_s19 <= (current_state(6) AND current_state(4) AND NOT(
326
current_state(3)) AND current_state(2) AND NOT(current_state(1))
327
AND current_state(0));
328
  next_state_s20 <= current_state_s19;
329
  current_state_s20 <= (NOT(current_state(6)) AND current_state(5) AND
330
NOT(current_state(4)) AND current_state(2) AND NOT(
331
current_state(1)) AND NOT(current_state(0)));
332
  next_state_s21 <= current_state_s20;
333
  current_state_s21 <= (current_state(6) AND NOT(current_state(5)) AND
334
NOT(current_state(4)) AND NOT(current_state(3)) AND
335
current_state(2) AND NOT(current_state(1)));
336
  next_state_s22 <= current_state_s21;
337
  current_state_s22 <= (current_state(6) AND current_state(5) AND
338
current_state(4) AND NOT(current_state(3)) AND current_state(1)
339
AND NOT(current_state(0)));
340
  next_state_s23 <= current_state_s22;
341
  current_state_s23 <= (NOT(current_state(6)) AND NOT(current_state(5))
342
AND current_state(4) AND NOT(current_state(2)) AND
343
NOT(current_state(1)) AND current_state(0));
344
  next_state_s24 <= current_state_s23;
345
  current_state_s24 <= (current_state(6) AND current_state(5) AND NOT(
346
current_state(4)) AND current_state(3) AND NOT(current_state(2))
347
AND NOT(current_state(1)));
348
  next_state_s25 <= current_state_s24;
349
  current_state_s25 <= (NOT(current_state(6)) AND NOT(current_state(5))
350
AND NOT(current_state(3)) AND current_state(2) AND
351
current_state(1) AND NOT(current_state(0)));
352
  next_state_s26 <= current_state_s25;
353
  current_state_s26 <= (NOT(current_state(6)) AND NOT(current_state(5))
354
AND current_state(3) AND current_state(2) AND NOT(
355
current_state(1)) AND current_state(0));
356
  next_state_s27 <= current_state_s26;
357
  current_state_s27 <= (NOT(current_state(6)) AND current_state(5) AND
358
current_state(4) AND NOT(current_state(3)) AND current_state(2)
359
AND NOT(current_state(1)));
360
  next_state_s28 <= current_state_s27;
361
  current_state_s28 <= (current_state(6) AND current_state(5) AND NOT(
362
current_state(4)) AND NOT(current_state(3)) AND NOT(
363
current_state(2)) AND NOT(current_state(1)));
364
  next_state_s29 <= current_state_s28;
365
  current_state_s29 <= (current_state(6) AND current_state(5) AND NOT(
366
current_state(4)) AND NOT(current_state(3)) AND NOT(
367
current_state(1)) AND NOT(current_state(0)));
368
  next_state_s30 <= current_state_s29;
369
  current_state_s30 <= (current_state(6) AND NOT(current_state(5)) AND
370
current_state(4) AND current_state(3) AND NOT(current_state(2))
371
AND current_state(1));
372
  next_state_s31 <= current_state_s30;
373
  current_state_s31 <= (NOT(current_state(6)) AND NOT(current_state(5))
374
AND current_state(4) AND NOT(current_state(3)) AND
375
current_state(1) AND current_state(0));
376
  next_state_s32 <= current_state_s31;
377
  current_state_s32 <= (current_state(6) AND NOT(current_state(5)) AND
378
current_state(4) AND current_state(3) AND current_state(2) AND
379
NOT(current_state(1)));
380
  next_state_s33 <= current_state_s32;
381
  current_state_s33 <= (NOT(current_state(6)) AND current_state(3) AND
382
NOT(current_state(2)) AND NOT(current_state(1)) AND
383
NOT(current_state(0)));
384
  next_state_s34 <= current_state_s33;
385
  current_state_s34 <= (NOT(current_state(6)) AND current_state(3) AND
386
NOT(current_state(2)) AND NOT(current_state(1)) AND
387
current_state(0));
388
  next_state_s35 <= current_state_s34;
389
  current_state_s35 <= (current_state(6) AND current_state(5) AND
390
current_state(4) AND NOT(current_state(3)) AND NOT(
391
current_state(2)) AND current_state(1));
392
  next_state_s36 <= current_state_s35;
393
  current_state_s36 <= (NOT(current_state(6)) AND current_state(5) AND
394
NOT(current_state(4)) AND NOT(current_state(2)) AND
395
current_state(1) AND NOT(current_state(0)));
396
  next_state_s37 <= current_state_s36;
397
  current_state_s37 <= (current_state(6) AND NOT(current_state(5)) AND
398
NOT(current_state(4)) AND NOT(current_state(3)) AND
399
NOT(current_state(2)) AND current_state(1) AND NOT(
400
current_state(0)));
401
  next_state_s38 <= current_state_s37;
402
  current_state_s38 <= (current_state(6) AND current_state(5) AND
403
current_state(4) AND current_state(3) AND NOT(current_state(1))
404
AND NOT(current_state(0)));
405
  next_state_s39 <= current_state_s38;
406
  current_state_s39 <= (current_state(6) AND current_state(5) AND
407
current_state(4) AND NOT(current_state(2)) AND NOT(
408
current_state(1)) AND current_state(0));
409
  next_state_s40 <= current_state_s39;
410
  current_state_s40 <= (current_state(6) AND NOT(current_state(5)) AND
411
NOT(current_state(4)) AND current_state(3) AND NOT(
412
current_state(1)) AND NOT(current_state(0)));
413
  next_state_s41 <= current_state_s40;
414
  current_state_s41 <= (NOT(current_state(6)) AND NOT(current_state(5))
415
AND current_state(3) AND current_state(2) AND NOT(
416
current_state(1)) AND NOT(current_state(0)));
417
  next_state_s42 <= current_state_s41;
418
  current_state_s42 <= (NOT(current_state(6)) AND NOT(current_state(5))
419
AND NOT(current_state(3)) AND current_state(2) AND
420
current_state(1) AND current_state(0));
421
  next_state_s43 <= current_state_s42;
422
  current_state_s43 <= (NOT(current_state(6)) AND current_state(5) AND
423
current_state(4) AND NOT(current_state(3)) AND current_state(2)
424
AND current_state(1));
425
  next_state_s44 <= current_state_s43;
426
  current_state_s44 <= (NOT(current_state(6)) AND current_state(5) AND
427
NOT(current_state(4)) AND current_state(2) AND
428
current_state(1) AND NOT(current_state(0)));
429
  next_state_s45 <= current_state_s44;
430
  current_state_s45 <= (current_state(6) AND current_state(5) AND NOT(
431
current_state(4)) AND NOT(current_state(3)) AND NOT(
432
current_state(2)) AND current_state(1));
433
  next_state_s46 <= current_state_s45;
434
  current_state_s46 <= (current_state(4) AND NOT(current_state(3)) AND
435
current_state(2) AND NOT(current_state(1)) AND NOT(
436
current_state(0)));
437
  next_state_s47 <= current_state_s46;
438
  current_state_s47 <= (current_state(6) AND NOT(current_state(5)) AND
439
current_state(4) AND NOT(current_state(3)) AND NOT(
440
current_state(2)) AND current_state(1));
441
  next_state_s48 <= current_state_s47;
442
  current_state_s48 <= (current_state(6) AND NOT(current_state(5)) AND
443
NOT(current_state(4)) AND current_state(3) AND NOT(
444
current_state(1)) AND current_state(0));
445
  next_state_s49 <= current_state_s48;
446
  current_state_s49 <= (NOT(current_state(6)) AND NOT(current_state(5))
447
AND current_state(3) AND NOT(current_state(2)) AND
448
current_state(1) AND NOT(current_state(0)));
449
  next_state_s50 <= current_state_s49;
450
  current_state_s50 <= (NOT(current_state(6)) AND current_state(3) AND
451
NOT(current_state(2)) AND current_state(1) AND
452
current_state(0));
453
  next_state_s51 <= current_state_s50;
454
  current_state_s51 <= (current_state(6) AND current_state(5) AND NOT(
455
current_state(4)) AND current_state(2) AND NOT(current_state(1))
456
AND current_state(0));
457
  next_state_s52 <= current_state_s51;
458
  current_state_s52 <= (NOT(current_state(6)) AND current_state(5) AND
459
NOT(current_state(4)) AND NOT(current_state(2)) AND
460
current_state(1) AND current_state(0));
461
  next_state_s53 <= current_state_s52;
462
  current_state_s53 <= (current_state(6) AND NOT(current_state(5)) AND
463
NOT(current_state(4)) AND NOT(current_state(3)) AND
464
current_state(1) AND current_state(0));
465
  next_state_s54 <= current_state_s53;
466
  current_state_s54 <= (current_state(6) AND current_state(5) AND NOT(
467
current_state(4)) AND current_state(2) AND current_state(1) AND
468
NOT(current_state(0)));
469
  next_state_s55 <= current_state_s54;
470
  current_state_s55 <= (current_state(6) AND current_state(5) AND
471
current_state(4) AND NOT(current_state(3)) AND NOT(
472
current_state(2)) AND NOT(current_state(0)));
473
  next_state_s56 <= current_state_s55;
474
  current_state_s56 <= (NOT(current_state(6)) AND current_state(5) AND
475
NOT(current_state(4)) AND current_state(2) AND NOT(
476
current_state(1)) AND current_state(0));
477
  next_state_s57 <= current_state_s56;
478
  current_state_s57 <= (NOT(current_state(6)) AND NOT(current_state(5))
479
AND current_state(3) AND current_state(2) AND
480
current_state(1) AND NOT(current_state(0)));
481
  next_state_s58 <= current_state_s57;
482
  current_state_s58 <= (NOT(current_state(6)) AND NOT(current_state(5))
483
AND current_state(3) AND current_state(2) AND
484
current_state(1) AND current_state(0));
485
  next_state_s59 <= current_state_s58;
486
  current_state_s59 <= (NOT(current_state(6)) AND NOT(current_state(5))
487
AND current_state(4) AND NOT(current_state(3)) AND
488
current_state(2) AND NOT(current_state(1)));
489
  next_state_s60 <= current_state_s59;
490
  current_state_s60 <= (NOT(current_state(6)) AND current_state(5) AND
491
NOT(current_state(4)) AND current_state(2) AND
492
current_state(1) AND current_state(0));
493
  next_state_s61 <= current_state_s60;
494
  current_state_s61 <= (current_state(6) AND NOT(current_state(5)) AND
495
current_state(4) AND NOT(current_state(3)) AND NOT(
496
current_state(2)) AND current_state(0));
497
  next_state_s62 <= current_state_s61;
498
  current_state_s62 <= (current_state(6) AND NOT(current_state(5)) AND
499
NOT(current_state(4)) AND NOT(current_state(3)) AND
500
current_state(2) AND current_state(1));
501
  next_state_s63 <= current_state_s62;
502
  current_state_s63 <= (current_state(6) AND NOT(current_state(5)) AND
503
current_state(4) AND NOT(current_state(3)) AND NOT(
504
current_state(1)) AND NOT(current_state(0)));
505
  next_state_s64 <= current_state_s63;
506
  current_state_s64 <= (current_state(6) AND NOT(current_state(5)) AND
507
NOT(current_state(4)) AND current_state(3) AND
508
current_state(1) AND current_state(0));
509
  next_state_s65 <= current_state_s64;
510
  current_state_s65 <= (current_state(6) AND NOT(current_state(5)) AND
511
NOT(current_state(4)) AND current_state(3) AND NOT(
512
current_state(2)) AND current_state(1) AND NOT(current_state(0)));
513
  next_state_s66 <= current_state_s65;
514
  current_state_s66 <= (current_state(6) AND NOT(current_state(5)) AND
515
NOT(current_state(4)) AND current_state(3) AND
516
current_state(2) AND current_state(1));
517
  next_state_s67 <= current_state_s66;
518
  current_state_s67 <= (current_state(6) AND current_state(5) AND NOT(
519
current_state(4)) AND current_state(3) AND NOT(current_state(2))
520
AND current_state(1));
521
  label0 : BLOCK ((NOT((ck'STABLE)) AND ck) = '1')
522
  BEGIN
523
    current_state(0) <= GUARDED (next_state(0) AND NOT(reset));
524
  END BLOCK label0;
525
  label1 : BLOCK ((NOT((ck'STABLE)) AND ck) = '1')
526
  BEGIN
527
    current_state(1) <= GUARDED (next_state(1) AND NOT(reset));
528
  END BLOCK label1;
529
  label2 : BLOCK ((NOT((ck'STABLE)) AND ck) = '1')
530
  BEGIN
531
    current_state(2) <= GUARDED (next_state(2) AND NOT(reset));
532
  END BLOCK label2;
533
  label3 : BLOCK ((NOT((ck'STABLE)) AND ck) = '1')
534
  BEGIN
535
    current_state(3) <= GUARDED (next_state(3) AND NOT(reset));
536
  END BLOCK label3;
537
  label4 : BLOCK ((NOT((ck'STABLE)) AND ck) = '1')
538
  BEGIN
539
    current_state(4) <= GUARDED (next_state(4) AND NOT(reset));
540
  END BLOCK label4;
541
  label5 : BLOCK ((NOT((ck'STABLE)) AND ck) = '1')
542
  BEGIN
543
    current_state(5) <= GUARDED (next_state(5) AND NOT(reset));
544
  END BLOCK label5;
545
  label6 : BLOCK ((NOT((ck'STABLE)) AND ck) = '1')
546
  BEGIN
547
    current_state(6) <= GUARDED (next_state(6) AND NOT(reset));
548
  END BLOCK label6;
549
 
550
finish <= (current_state_s67 AND NOT(reset));
551
 
552
sel_in <= NOT((current_state_s1 AND NOT(reset)) OR (
553
current_state_s2 AND NOT(reset)) OR (current_state_s3 AND NOT(
554
reset)) OR (current_state_s4 AND NOT(reset)) OR (
555
current_state_s5 AND NOT(reset)) OR (current_state_s6 AND NOT(
556
reset)) OR (current_state_s7 AND NOT(reset)) OR (
557
current_state_s8 AND NOT(reset)) OR (current_state_s65 AND NOT(
558
reset)) OR (current_state_s66 AND NOT(reset)) OR (
559
current_state_s67 AND NOT(reset)));
560
 
561
en_key_out <= ((current_state_s1 AND key_ready AND start AND
562
NOT(reset)) OR (current_state_s9 AND NOT(reset)) OR
563
(current_state_s17 AND NOT(reset)) OR (
564
current_state_s25 AND NOT(reset)) OR (current_state_s33 AND NOT(
565
reset)) OR (current_state_s41 AND NOT(reset)) OR (
566
current_state_s49 AND NOT(reset)) OR (current_state_s57 AND NOT(
567
reset)) OR (current_state_s65 AND NOT(reset)));
568
 
569
en_out <= (current_state_s66 AND NOT(reset));
570
 
571
en7 <= ((current_state_s8 AND NOT(reset)) OR (
572
current_state_s16 AND NOT(reset)) OR (current_state_s24 AND NOT(
573
reset)) OR (current_state_s32 AND NOT(reset)) OR (
574
current_state_s40 AND NOT(reset)) OR (current_state_s48 AND NOT(
575
reset)) OR (current_state_s56 AND NOT(reset)) OR (
576
current_state_s64 AND NOT(reset)));
577
 
578
en6 <= ((current_state_s7 AND NOT(reset)) OR (
579
current_state_s15 AND NOT(reset)) OR (current_state_s23 AND NOT(
580
reset)) OR (current_state_s31 AND NOT(reset)) OR (
581
current_state_s39 AND NOT(reset)) OR (current_state_s47 AND NOT(
582
reset)) OR (current_state_s55 AND NOT(reset)) OR (
583
current_state_s63 AND NOT(reset)));
584
 
585
en5 <= ((current_state_s6 AND NOT(reset)) OR (
586
current_state_s14 AND NOT(reset)) OR (current_state_s22 AND NOT(
587
reset)) OR (current_state_s30 AND NOT(reset)) OR (
588
current_state_s38 AND NOT(reset)) OR (current_state_s46 AND NOT(
589
reset)) OR (current_state_s54 AND NOT(reset)) OR (
590
current_state_s62 AND NOT(reset)));
591
 
592
en4 <= ((current_state_s5 AND NOT(reset)) OR (
593
current_state_s13 AND NOT(reset)) OR (current_state_s21 AND NOT(
594
reset)) OR (current_state_s29 AND NOT(reset)) OR (
595
current_state_s37 AND NOT(reset)) OR (current_state_s45 AND NOT(
596
reset)) OR (current_state_s53 AND NOT(reset)) OR (
597
current_state_s61 AND NOT(reset)));
598
 
599
en3 <= ((current_state_s4 AND NOT(reset)) OR (
600
current_state_s12 AND NOT(reset)) OR (current_state_s20 AND NOT(
601
reset)) OR (current_state_s28 AND NOT(reset)) OR (
602
current_state_s36 AND NOT(reset)) OR (current_state_s44 AND NOT(
603
reset)) OR (current_state_s52 AND NOT(reset)) OR (
604
current_state_s60 AND NOT(reset)));
605
 
606
en2 <= ((current_state_s3 AND NOT(reset)) OR (
607
current_state_s11 AND NOT(reset)) OR (current_state_s19 AND NOT(
608
reset)) OR (current_state_s27 AND NOT(reset)) OR (
609
current_state_s35 AND NOT(reset)) OR (current_state_s43 AND NOT(
610
reset)) OR (current_state_s51 AND NOT(reset)) OR (
611
current_state_s59 AND NOT(reset)));
612
 
613
en1 <= ((current_state_s2 AND NOT(reset)) OR (
614
current_state_s10 AND NOT(reset)) OR (current_state_s18 AND NOT(
615
reset)) OR (current_state_s26 AND NOT(reset)) OR (
616
current_state_s34 AND NOT(reset)) OR (current_state_s42 AND NOT(
617
reset)) OR (current_state_s50 AND NOT(reset)) OR (
618
current_state_s58 AND NOT(reset)));
619
 
620
round(0) <= NOT((current_state_s1 AND NOT(reset)) OR (
621
current_state_s2 AND NOT(reset)) OR (current_state_s3 AND NOT(
622
reset)) OR (current_state_s4 AND NOT(reset)) OR (
623
current_state_s5 AND NOT(reset)) OR (current_state_s6 AND NOT(
624
reset)) OR (current_state_s7 AND NOT(reset)) OR (
625
current_state_s8 AND NOT(reset)) OR (current_state_s17 AND NOT(
626
reset)) OR (current_state_s18 AND NOT(reset)) OR (
627
current_state_s19 AND NOT(reset)) OR (current_state_s20 AND NOT(
628
reset)) OR (current_state_s21 AND NOT(reset)) OR (
629
current_state_s22 AND NOT(reset)) OR (current_state_s23 AND NOT(
630
reset)) OR (current_state_s24 AND NOT(reset)) OR (
631
current_state_s33 AND NOT(reset)) OR (current_state_s34 AND NOT(
632
reset)) OR (current_state_s35 AND NOT(reset)) OR (
633
current_state_s36 AND NOT(reset)) OR (current_state_s37 AND NOT(
634
reset)) OR (current_state_s38 AND NOT(reset)) OR (
635
current_state_s39 AND NOT(reset)) OR (current_state_s40 AND NOT(
636
reset)) OR (current_state_s49 AND NOT(reset)) OR (
637
current_state_s50 AND NOT(reset)) OR (current_state_s51 AND NOT(
638
reset)) OR (current_state_s52 AND NOT(reset)) OR (
639
current_state_s53 AND NOT(reset)) OR (current_state_s54 AND NOT(
640
reset)) OR (current_state_s55 AND NOT(reset)) OR (
641
current_state_s56 AND NOT(reset)));
642
 
643
round(1) <= NOT((current_state_s1 AND NOT(reset)) OR (
644
current_state_s2 AND NOT(reset)) OR (current_state_s3 AND NOT(
645
reset)) OR (current_state_s4 AND NOT(reset)) OR (
646
current_state_s5 AND NOT(reset)) OR (current_state_s6 AND NOT(
647
reset)) OR (current_state_s7 AND NOT(reset)) OR (
648
current_state_s8 AND NOT(reset)) OR (current_state_s9 AND NOT(
649
reset)) OR (current_state_s10 AND NOT(reset)) OR (
650
current_state_s11 AND NOT(reset)) OR (current_state_s12 AND NOT(
651
reset)) OR (current_state_s13 AND NOT(reset)) OR (
652
current_state_s14 AND NOT(reset)) OR (current_state_s15 AND NOT(
653
reset)) OR (current_state_s16 AND NOT(reset)) OR (
654
current_state_s33 AND NOT(reset)) OR (current_state_s34 AND NOT(
655
reset)) OR (current_state_s35 AND NOT(reset)) OR (
656
current_state_s36 AND NOT(reset)) OR (current_state_s37 AND NOT(
657
reset)) OR (current_state_s38 AND NOT(reset)) OR (
658
current_state_s39 AND NOT(reset)) OR (current_state_s40 AND NOT(
659
reset)) OR (current_state_s41 AND NOT(reset)) OR (
660
current_state_s42 AND NOT(reset)) OR (current_state_s43 AND NOT(
661
reset)) OR (current_state_s44 AND NOT(reset)) OR (
662
current_state_s45 AND NOT(reset)) OR (current_state_s46 AND NOT(
663
reset)) OR (current_state_s47 AND NOT(reset)) OR (
664
current_state_s48 AND NOT(reset)));
665
 
666
round(2) <= NOT((current_state_s1 AND NOT(reset)) OR (
667
current_state_s2 AND NOT(reset)) OR (current_state_s3 AND NOT(
668
reset)) OR (current_state_s4 AND NOT(reset)) OR (
669
current_state_s5 AND NOT(reset)) OR (current_state_s6 AND NOT(
670
reset)) OR (current_state_s7 AND NOT(reset)) OR (
671
current_state_s8 AND NOT(reset)) OR (current_state_s9 AND NOT(
672
reset)) OR (current_state_s10 AND NOT(reset)) OR (
673
current_state_s11 AND NOT(reset)) OR (current_state_s12 AND NOT(
674
reset)) OR (current_state_s13 AND NOT(reset)) OR (
675
current_state_s14 AND NOT(reset)) OR (current_state_s15 AND NOT(
676
reset)) OR (current_state_s16 AND NOT(reset)) OR (
677
current_state_s17 AND NOT(reset)) OR (current_state_s18 AND NOT(
678
reset)) OR (current_state_s19 AND NOT(reset)) OR (
679
current_state_s20 AND NOT(reset)) OR (current_state_s21 AND NOT(
680
reset)) OR (current_state_s22 AND NOT(reset)) OR (
681
current_state_s23 AND NOT(reset)) OR (current_state_s24 AND NOT(
682
reset)) OR (current_state_s25 AND NOT(reset)) OR (
683
current_state_s26 AND NOT(reset)) OR (current_state_s27 AND NOT(
684
reset)) OR (current_state_s28 AND NOT(reset)) OR (
685
current_state_s29 AND NOT(reset)) OR (current_state_s30 AND NOT(
686
reset)) OR (current_state_s31 AND NOT(reset)) OR (
687
current_state_s32 AND NOT(reset)));
688
END;

powered by: WebSVN 2.1.0

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