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

Subversion Repositories tiny_tate_bilinear_pairing

[/] [tiny_tate_bilinear_pairing/] [trunk/] [group_size_is_697_bits/] [rtl/] [rom.v] - Blame information for rev 18

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 18 homer.hsin
/*
2
 * Copyright 2012, Homer Hsing <homer.hsing@gmail.com>
3
 *
4
 * Licensed under the Apache License, Version 2.0 (the "License");
5
 * you may not use this file except in compliance with the License.
6
 * You may obtain a copy of the License at
7
 *
8
 * http://www.apache.org/licenses/LICENSE-2.0
9
 *
10
 * Unless required by applicable law or agreed to in writing, software
11
 * distributed under the License is distributed on an "AS IS" BASIS,
12
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
 * See the License for the specific language governing permissions and
14
 * limitations under the License.
15
 */
16
 
17
module rom (clk, addr, out);
18
   input clk;
19
   input [8:0] addr;
20
   output reg [27:0] out;
21
 
22
   always @(posedge clk)
23
      case (addr)
24
         0: out <= 28'hc30042;
25
         1: out <= 28'h1450045;
26
         2: out <= 28'h1868041;
27
         3: out <= 28'h1c78041;
28
         4: out <= 28'h30046;
29
         5: out <= 28'h580ea00;
30
         6: out <= 28'h5c08041;
31
         7: out <= 28'h5c5ea17;
32
         8: out <= 28'h605ea07;
33
         9: out <= 28'h658ea07;
34
         10: out <= 28'h3d74059;
35
         11: out <= 28'h3c5404f;
36
         12: out <= 28'h5d8ea05;
37
         13: out <= 28'h617ea00;
38
         14: out <= 28'h587ea16;
39
         15: out <= 28'h4580056;
40
         16: out <= 28'h4850041;
41
         17: out <= 28'h4c7ea00;
42
         18: out <= 28'h4d34057;
43
         19: out <= 28'h5014041;
44
         20: out <= 28'h5474041;
45
         21: out <= 28'hf8041;
46
         22: out <= 28'h5918041;
47
         23: out <= 28'h5d28041;
48
         24: out <= 28'h6138041;
49
         25: out <= 28'h6548041;
50
         26: out <= 28'h6958041;
51
         27: out <= 28'h3c00057;
52
         28: out <= 28'h3cf0059;
53
         29: out <= 28'h4560058;
54
         30: out <= 28'h451005a;
55
         31: out <= 28'h4510051;
56
         32: out <= 28'h4974059;
57
         33: out <= 28'h4da4058;
58
         34: out <= 28'h5190041;
59
         35: out <= 28'h55a005a;
60
         36: out <= 28'h1868081;
61
         37: out <= 28'h1864042;
62
         38: out <= 28'h1c78081;
63
         39: out <= 28'h1c70047;
64
         40: out <= 28'h30046;
65
         41: out <= 28'h5800040;
66
         42: out <= 28'h5c5ea07;
67
         43: out <= 28'h16ea00;
68
         44: out <= 28'h6000056;
69
         45: out <= 28'h6404056;
70
         46: out <= 28'h68f0054;
71
         47: out <= 28'h6da0052;
72
         48: out <= 28'h71a4052;
73
         49: out <= 28'h74f4054;
74
         50: out <= 28'h79d4053;
75
         51: out <= 28'h75d0053;
76
         52: out <= 28'h7d10055;
77
         53: out <= 28'h81f0053;
78
         54: out <= 28'h85f4053;
79
         55: out <= 28'h8970056;
80
         56: out <= 28'h5974056;
81
         57: out <= 28'h8d14055;
82
         58: out <= 28'h9230052;
83
         59: out <= 28'h8e34052;
84
         60: out <= 28'h9580057;
85
         61: out <= 28'h99b0060;
86
         62: out <= 28'h9c00062;
87
         63: out <= 28'ha1e0064;
88
         64: out <= 28'ha590057;
89
         65: out <= 28'ha9c0061;
90
         66: out <= 28'hac00056;
91
         67: out <= 28'hb1d0063;
92
         68: out <= 28'h618ea1b;
93
         69: out <= 28'h6e5ea26;
94
         70: out <= 28'h817ea20;
95
         71: out <= 28'h780ea1e;
96
         72: out <= 28'h967ea28;
97
         73: out <= 28'h8a2ea24;
98
         74: out <= 28'h659ea1c;
99
         75: out <= 28'h729ea2a;
100
         76: out <= 28'h5d7ea21;
101
         77: out <= 28'hea1d;
102
         78: out <= 28'h76bea2c;
103
         79: out <= 28'h596ea23;
104
         80: out <= 28'h8580065;
105
         81: out <= 28'h8e0005d;
106
         82: out <= 28'h9204057;
107
         83: out <= 28'h9994058;
108
         84: out <= 28'h5d70060;
109
         85: out <= 28'h5e24057;
110
         86: out <= 28'h5d70056;
111
         87: out <= 28'h6190058;
112
         88: out <= 28'h618405e;
113
         89: out <= 28'h6184040;
114
         90: out <= 28'h6634061;
115
         91: out <= 28'h659405e;
116
         92: out <= 28'h5990056;
117
         93: out <= 28'h6610063;
118
         94: out <= 28'h659405b;
119
         95: out <= 28'h6590062;
120
         96: out <= 28'h190040;
121
         97: out <= 28'h6640066;
122
         98: out <= 28'h7a44066;
123
         99: out <= 28'h79e005c;
124
         100: out <= 28'h79e405b;
125
         101: out <= 28'h8170058;
126
         102: out <= 28'h5d74058;
127
         103: out <= 28'h5d7005c;
128
         104: out <= 28'h5d7005b;
129
         105: out <= 28'h5d74065;
130
         106: out <= 28'h5d7405d;
131
         107: out <= 28'h3d64052;
132
         108: out <= 28'h4404053;
133
         109: out <= 28'h194052;
134
         110: out <= 28'h4054;
135
         111: out <= 28'h59e4053;
136
         112: out <= 28'h5964055;
137
         113: out <= 28'h520405a;
138
         114: out <= 28'h557405f;
139
         115: out <= 28'h4804041;
140
         116: out <= 28'h4d64041;
141
         117: out <= 28'h24f8041;
142
         118: out <= 28'hf0052;
143
         119: out <= 28'h54;
144
         120: out <= 28'h58fea0f;
145
         121: out <= 28'h5cfea12;
146
         122: out <= 28'h612ea14;
147
         123: out <= 28'h654ea14;
148
         124: out <= 28'hea00;
149
         125: out <= 28'h5d70058;
150
         126: out <= 28'h6164058;
151
         127: out <= 28'h6594057;
152
         128: out <= 28'h57;
153
         129: out <= 28'h4056;
154
         130: out <= 28'h5910053;
155
         131: out <= 28'h5960055;
156
         132: out <= 28'h5d1ea11;
157
         133: out <= 28'h691ea13;
158
         134: out <= 28'h6d3ea15;
159
         135: out <= 28'h715ea15;
160
         136: out <= 28'h596ea16;
161
         137: out <= 28'h69a005b;
162
         138: out <= 28'h6d7405b;
163
         139: out <= 28'h71c405a;
164
         140: out <= 28'h596005a;
165
         141: out <= 28'h5964057;
166
         142: out <= 28'h5cf0052;
167
         143: out <= 28'h68f0054;
168
         144: out <= 28'h7520054;
169
         145: out <= 28'h7910053;
170
         146: out <= 28'h7d10055;
171
         147: out <= 28'h8130055;
172
         148: out <= 28'h84fea11;
173
         149: out <= 28'h892ea13;
174
         150: out <= 28'h8d4ea15;
175
         151: out <= 28'h5d7ea1e;
176
         152: out <= 28'h69aea1f;
177
         153: out <= 28'h75dea20;
178
         154: out <= 28'h7a14062;
179
         155: out <= 28'h7de4063;
180
         156: out <= 28'h7df005d;
181
         157: out <= 28'h5d7405e;
182
         158: out <= 28'h5d7005d;
183
         159: out <= 28'h69a405e;
184
         160: out <= 28'h758405b;
185
         161: out <= 28'h799405c;
186
         162: out <= 28'h8004056;
187
         163: out <= 28'h618005b;
188
         164: out <= 28'h659005c;
189
         165: out <= 28'h56;
190
         166: out <= 28'h5980059;
191
         167: out <= 28'h6d84040;
192
         168: out <= 28'h7194058;
193
         169: out <= 28'h840405c;
194
         170: out <= 28'h898ea18;
195
         171: out <= 28'h8d9ea19;
196
         172: out <= 28'h900ea00;
197
         173: out <= 28'h658ea19;
198
         174: out <= 28'h618ea00;
199
         175: out <= 28'hea16;
200
         176: out <= 28'h5a2ea1b;
201
         177: out <= 28'h6e3ea1c;
202
         178: out <= 28'h724ea21;
203
         179: out <= 28'h596005b;
204
         180: out <= 28'h596005c;
205
         181: out <= 28'h6d60041;
206
         182: out <= 28'h71b8041;
207
         183: out <= 28'h71bea1c;
208
         184: out <= 28'h71c8041;
209
         185: out <= 28'h71bea1c;
210
         186: out <= 28'h85c8041;
211
         187: out <= 28'h6dbea21;
212
         188: out <= 28'h85b80c1;
213
         189: out <= 28'h71cea21;
214
         190: out <= 28'h71c8101;
215
         191: out <= 28'h71bea1c;
216
         192: out <= 28'h85c8101;
217
         193: out <= 28'h6dbea21;
218
         194: out <= 28'h85b83c1;
219
         195: out <= 28'h6dbea21;
220
         196: out <= 28'h85b8781;
221
         197: out <= 28'h6dbea21;
222
         198: out <= 28'h85b8f01;
223
         199: out <= 28'h6dbea21;
224
         200: out <= 28'h85b82c1;
225
         201: out <= 28'h71cea21;
226
         202: out <= 28'h71c9e01;
227
         203: out <= 28'h6dbea1c;
228
         204: out <= 28'h71bbec1;
229
         205: out <= 28'h6dbea1c;
230
         206: out <= 28'h6db8041;
231
         207: out <= 28'h59bea16;
232
         208: out <= 28'h59bea16;
233
         209: out <= 28'h6e34064;
234
         210: out <= 28'h722405b;
235
         211: out <= 28'h1c4040;
236
         212: out <= 28'h6644059;
237
         213: out <= 28'h61b4058;
238
         214: out <= 28'h16ea00;
239
         215: out <= 28'h656ea19;
240
         216: out <= 28'h596ea18;
241
         217: out <= 28'h61d005e;
242
         218: out <= 28'h6dd0060;
243
         219: out <= 28'h71e0060;
244
         220: out <= 28'h8400059;
245
         221: out <= 28'h8800056;
246
         222: out <= 28'h8d90056;
247
         223: out <= 28'h75dea00;
248
         224: out <= 28'h79eea19;
249
         225: out <= 28'h820ea16;
250
         226: out <= 28'h618ea21;
251
         227: out <= 28'h6dbea22;
252
         228: out <= 28'h71cea23;
253
         229: out <= 28'h75d405e;
254
         230: out <= 28'h79d4060;
255
         231: out <= 28'h79e005c;
256
         232: out <= 28'h618405d;
257
         233: out <= 28'h618005c;
258
         234: out <= 28'h6db405d;
259
         235: out <= 28'h71f0057;
260
         236: out <= 28'h75f005a;
261
         237: out <= 28'h817005a;
262
         238: out <= 28'h8400059;
263
         239: out <= 28'h8800056;
264
         240: out <= 28'h8d90056;
265
         241: out <= 28'h1fea00;
266
         242: out <= 28'h5d7ea19;
267
         243: out <= 28'h59aea16;
268
         244: out <= 28'h65cea21;
269
         245: out <= 28'h69dea22;
270
         246: out <= 28'h720ea23;
271
         247: out <= 28'h4057;
272
         248: out <= 28'h5804056;
273
         249: out <= 28'h596005c;
274
         250: out <= 28'h5d94040;
275
         251: out <= 28'h5d7005c;
276
         252: out <= 28'h1a4040;
277
         253: out <= 28'h65e0056;
278
         254: out <= 28'h6980057;
279
         255: out <= 28'h71b4040;
280
         256: out <= 28'h75eea1b;
281
         257: out <= 28'h7d6ea00;
282
         258: out <= 28'h6d8ea1b;
283
         259: out <= 28'h17ea00;
284
         260: out <= 28'h819ea1c;
285
         261: out <= 28'h596ea18;
286
         262: out <= 28'h5deea17;
287
         263: out <= 28'h619ea1a;
288
         264: out <= 28'h65aea1c;
289
         265: out <= 28'h6960057;
290
         266: out <= 28'h61a4058;
291
         267: out <= 28'h69b0040;
292
         268: out <= 28'h69a005a;
293
         269: out <= 28'h405b;
294
         270: out <= 28'h6df405d;
295
         271: out <= 28'h6db0060;
296
         272: out <= 28'h702005d;
297
         273: out <= 28'h71c005f;
298
         274: out <= 28'h71c405a;
299
         275: out <= 28'h5974056;
300
         276: out <= 28'h59b0056;
301
         277: out <= 28'h5d80041;
302
         278: out <= 28'h7590040;
303
         279: out <= 28'h6dd005b;
304
         280: out <= 28'h618005a;
305
         281: out <= 28'h6180058;
306
         282: out <= 28'h190040;
307
         283: out <= 28'h40;
308
         284: out <= 28'h65c8041;
309
         285: out <= 28'h6968041;
310
         286: out <= 28'h7578041;
311
         287: out <= 28'h79b8041;
312
         288: out <= 28'h7d88041;
313
         289: out <= 28'h8008041;
314
         290: out <= 28'h659005d;
315
         291: out <= 28'h659005f;
316
         292: out <= 28'h69a005a;
317
         293: out <= 28'h69a405e;
318
         294: out <= 28'h69a4060;
319
         295: out <= 28'h75d405f;
320
         296: out <= 28'h7a0405e;
321
         297: out <= 28'h8200060;
322
         298: out <= 28'h6598041;
323
         299: out <= 28'h69a8041;
324
         300: out <= 28'h75d8041;
325
         301: out <= 28'h79e8041;
326
         302: out <= 28'h7df8041;
327
         303: out <= 28'h8208041;
328
         304: out <= 28'h659005d;
329
         305: out <= 28'h659005f;
330
         306: out <= 28'h69a005a;
331
         307: out <= 28'h69a405e;
332
         308: out <= 28'h69a4060;
333
         309: out <= 28'h75d405f;
334
         310: out <= 28'h7a0405e;
335
         311: out <= 28'h8200060;
336
         312: out <= 28'h85c0056;
337
         313: out <= 28'h897005b;
338
         314: out <= 28'h8d84040;
339
         315: out <= 28'h91cea18;
340
         316: out <= 28'h956ea00;
341
         317: out <= 28'h617ea18;
342
         318: out <= 28'h1bea00;
343
         319: out <= 28'h9a1ea23;
344
         320: out <= 28'h596ea17;
345
         321: out <= 28'h5dcea1b;
346
         322: out <= 28'h6e1ea22;
347
         323: out <= 28'h722ea23;
348
         324: out <= 28'h8560057;
349
         325: out <= 28'h6e1405b;
350
         326: out <= 28'h8580040;
351
         327: out <= 28'h8610061;
352
         328: out <= 28'h4058;
353
         329: out <= 28'h6254064;
354
         330: out <= 28'h6180066;
355
         331: out <= 28'h8820064;
356
         332: out <= 28'h8a20065;
357
         333: out <= 28'h8a24061;
358
         334: out <= 28'h5974056;
359
         335: out <= 28'h5980056;
360
         336: out <= 28'h5db0041;
361
         337: out <= 28'h8dc0040;
362
         338: out <= 28'h6230058;
363
         339: out <= 28'h6db0061;
364
         340: out <= 28'h6db005b;
365
         341: out <= 28'h1c0040;
366
         342: out <= 28'h40;
367
         343: out <= 28'h69a005a;
368
         344: out <= 28'h71e005e;
369
         345: out <= 28'h7a00060;
370
         346: out <= 28'h819005f;
371
         347: out <= 28'h860005d;
372
         348: out <= 28'h820405d;
373
         349: out <= 28'h8e2005b;
374
         350: out <= 28'h9230057;
375
         351: out <= 28'h8e34057;
376
         352: out <= 28'h659405f;
377
         353: out <= 28'h959405c;
378
         354: out <= 28'h659005c;
379
         355: out <= 28'h8a2405b;
380
         356: out <= 28'h9a24058;
381
         357: out <= 28'h8a20058;
382
         358: out <= 28'h9da005e;
383
         359: out <= 28'ha27005c;
384
         360: out <= 28'h727405c;
385
         361: out <= 28'h9d60040;
386
         362: out <= 28'ha670058;
387
         363: out <= 28'h6274058;
388
         364: out <= 28'h69a405e;
389
         365: out <= 28'h9da005d;
390
         366: out <= 28'h69a405d;
391
         367: out <= 28'h5964040;
392
         368: out <= 28'h7560057;
393
         369: out <= 28'h5964057;
394
         370: out <= 28'h5e10068;
395
         371: out <= 28'haa40069;
396
         372: out <= 28'hae50067;
397
         373: out <= 28'hb26005d;
398
         374: out <= 28'hb60005c;
399
         375: out <= 28'hba30058;
400
         376: out <= 28'hbd9005a;
401
         377: out <= 28'hc220056;
402
         378: out <= 28'hc5f005e;
403
         379: out <= 28'hc9b0040;
404
         380: out <= 28'h861ea24;
405
         381: out <= 28'h5d7ea2a;
406
         382: out <= 28'h928ea29;
407
         383: out <= 28'h965ea26;
408
         384: out <= 28'h9abea2c;
409
         385: out <= 28'h767ea1d;
410
         386: out <= 28'h820ea23;
411
         387: out <= 28'h8edea2e;
412
         388: out <= 28'h61cea18;
413
         389: out <= 28'h659ea22;
414
         390: out <= 28'h72fea30;
415
         391: out <= 28'h59aea16;
416
         392: out <= 28'h69fea1b;
417
         393: out <= 28'h6f1ea32;
418
         394: out <= 28'h1eea00;
419
         395: out <= 28'h7a10066;
420
         396: out <= 28'h79e005a;
421
         397: out <= 28'h7e4005c;
422
         398: out <= 28'h7df0040;
423
         399: out <= 28'h6a0005a;
424
         400: out <= 28'h180040;
425
         401: out <= 28'h40;
426
         402: out <= 28'h623005b;
427
         403: out <= 28'h8000064;
428
         404: out <= 28'h89a4061;
429
         405: out <= 28'h4064;
430
         406: out <= 28'h5d;
431
         407: out <= 28'h56;
432
         408: out <= 28'h69a0061;
433
         409: out <= 28'h69a4065;
434
         410: out <= 28'h69a4059;
435
         411: out <= 28'h25f405e;
436
         412: out <= 28'h2494065;
437
         413: out <= 28'h2490056;
438
         414: out <= 28'h29e005f;
439
         415: out <= 28'h28a4057;
440
         416: out <= 28'h28a005d;
441
         417: out <= 28'h28a0059;
442
         418: out <= 28'h28a405b;
443
         419: out <= 28'h2e00062;
444
         420: out <= 28'h3204062;
445
         421: out <= 28'h30c0058;
446
         422: out <= 28'h30c4057;
447
         423: out <= 28'h340005a;
448
         424: out <= 28'h380405a;
449
         425: out <= 28'h38e0058;
450
         426: out <= 28'h38e0057;
451
         427: out <= 28'h38e4066;
452
         428: out <= 28'h38e405c;
453
         default: out <= 0;
454
      endcase
455
endmodule

powered by: WebSVN 2.1.0

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