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_151_bits/] [rtl/] [rom.v] - Rev 15

Compare with Previous | Blame | View Log

/*
 * Copyright 2012, Homer Hsing <homer.hsing@gmail.com>
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
 
module rom (clk, addr, out);
   input clk;
   input [8:0] addr;
   output reg [25:0] out;
 
   always @(posedge clk)
      case (addr)
         0: out <= 26'h30c042;
         1: out <= 26'h514045;
         2: out <= 26'h61a041;
         3: out <= 26'h71e041;
         4: out <= 26'hc046;
         5: out <= 26'h1603840;
         6: out <= 26'h1702041;
         7: out <= 26'h1717857;
         8: out <= 26'h1817847;
         9: out <= 26'h1963847;
         10: out <= 26'hf5d059;
         11: out <= 26'hf3d045;
         12: out <= 26'h1763845;
         13: out <= 26'h185f840;
         14: out <= 26'h161f856;
         15: out <= 26'h1160056;
         16: out <= 26'h1144051;
         17: out <= 26'h1214045;
         18: out <= 26'h131f840;
         19: out <= 26'h135d053;
         20: out <= 26'h1404041;
         21: out <= 26'h151c047;
         22: out <= 26'h3e041;
         23: out <= 26'h1646041;
         24: out <= 26'h174a041;
         25: out <= 26'h184e041;
         26: out <= 26'h1952041;
         27: out <= 26'h1a56041;
         28: out <= 26'hf00057;
         29: out <= 26'hf3c059;
         30: out <= 26'h1158058;
         31: out <= 26'h114405a;
         32: out <= 26'h1144051;
         33: out <= 26'h125d059;
         34: out <= 26'h1369058;
         35: out <= 26'h1464041;
         36: out <= 26'h156805a;
         37: out <= 26'h61a081;
         38: out <= 26'h619042;
         39: out <= 26'h71e081;
         40: out <= 26'h71c047;
         41: out <= 26'hc046;
         42: out <= 26'h1600040;
         43: out <= 26'h1717847;
         44: out <= 26'h5b840;
         45: out <= 26'h1800056;
         46: out <= 26'h1901056;
         47: out <= 26'h1a3c054;
         48: out <= 26'h1b68052;
         49: out <= 26'h1c69052;
         50: out <= 26'h1d3d054;
         51: out <= 26'h1e75053;
         52: out <= 26'h1d74053;
         53: out <= 26'h1f44055;
         54: out <= 26'h207c053;
         55: out <= 26'h217d053;
         56: out <= 26'h225c056;
         57: out <= 26'h165d056;
         58: out <= 26'h2345055;
         59: out <= 26'h248c052;
         60: out <= 26'h238d052;
         61: out <= 26'h2560057;
         62: out <= 26'h266c060;
         63: out <= 26'h2700062;
         64: out <= 26'h2878064;
         65: out <= 26'h2964057;
         66: out <= 26'h2a70061;
         67: out <= 26'h2b00056;
         68: out <= 26'h2c74063;
         69: out <= 26'h186385b;
         70: out <= 26'h1b97866;
         71: out <= 26'h205f860;
         72: out <= 26'h1e0385e;
         73: out <= 26'h259f868;
         74: out <= 26'h228b864;
         75: out <= 26'h196785c;
         76: out <= 26'h1ca786a;
         77: out <= 26'h175f861;
         78: out <= 26'h385d;
         79: out <= 26'h1daf86c;
         80: out <= 26'h165b863;
         81: out <= 26'h2160065;
         82: out <= 26'h238005d;
         83: out <= 26'h2481057;
         84: out <= 26'h2665058;
         85: out <= 26'h175c060;
         86: out <= 26'h1789057;
         87: out <= 26'h175c056;
         88: out <= 26'h1864058;
         89: out <= 26'h186105e;
         90: out <= 26'h1861040;
         91: out <= 26'h198d061;
         92: out <= 26'h196505e;
         93: out <= 26'h1664056;
         94: out <= 26'h1984063;
         95: out <= 26'h196505b;
         96: out <= 26'h1964062;
         97: out <= 26'h64040;
         98: out <= 26'h1990066;
         99: out <= 26'h1e91066;
         100: out <= 26'h1e7805c;
         101: out <= 26'h1e7905b;
         102: out <= 26'h205c058;
         103: out <= 26'h175d058;
         104: out <= 26'h175c05c;
         105: out <= 26'h175c05b;
         106: out <= 26'h175d065;
         107: out <= 26'h175d05d;
         108: out <= 26'hf59052;
         109: out <= 26'h1101053;
         110: out <= 26'h65052;
         111: out <= 26'h1054;
         112: out <= 26'h1679053;
         113: out <= 26'h1659055;
         114: out <= 26'h148105a;
         115: out <= 26'h155d05f;
         116: out <= 26'h1201041;
         117: out <= 26'h1359041;
         118: out <= 26'h93e041;
         119: out <= 26'h3c052;
         120: out <= 26'h54;
         121: out <= 26'h163f84f;
         122: out <= 26'h173f852;
         123: out <= 26'h184b854;
         124: out <= 26'h1953854;
         125: out <= 26'h3840;
         126: out <= 26'h175c058;
         127: out <= 26'h1859058;
         128: out <= 26'h1965057;
         129: out <= 26'h57;
         130: out <= 26'h1056;
         131: out <= 26'h1644053;
         132: out <= 26'h1658055;
         133: out <= 26'h1747851;
         134: out <= 26'h1a47853;
         135: out <= 26'h1b4f855;
         136: out <= 26'h1c57855;
         137: out <= 26'h165b856;
         138: out <= 26'h1a6805b;
         139: out <= 26'h1b5d05b;
         140: out <= 26'h1c7105a;
         141: out <= 26'h165805a;
         142: out <= 26'h1659057;
         143: out <= 26'h173c052;
         144: out <= 26'h1a3c054;
         145: out <= 26'h1d48054;
         146: out <= 26'h1e44053;
         147: out <= 26'h1f44055;
         148: out <= 26'h204c055;
         149: out <= 26'h213f851;
         150: out <= 26'h224b853;
         151: out <= 26'h2353855;
         152: out <= 26'h175f85e;
         153: out <= 26'h1a6b85f;
         154: out <= 26'h1d77860;
         155: out <= 26'h1e85062;
         156: out <= 26'h1f79063;
         157: out <= 26'h1f7c05d;
         158: out <= 26'h175d05e;
         159: out <= 26'h175c05d;
         160: out <= 26'h1a6905e;
         161: out <= 26'h1d6105b;
         162: out <= 26'h1e6505c;
         163: out <= 26'h2001056;
         164: out <= 26'h186005b;
         165: out <= 26'h196405c;
         166: out <= 26'h56;
         167: out <= 26'h1660059;
         168: out <= 26'h1b61040;
         169: out <= 26'h1c65058;
         170: out <= 26'h210105c;
         171: out <= 26'h2263858;
         172: out <= 26'h2367859;
         173: out <= 26'h2403840;
         174: out <= 26'h1963859;
         175: out <= 26'h1863840;
         176: out <= 26'h3856;
         177: out <= 26'h168b85b;
         178: out <= 26'h1b8f85c;
         179: out <= 26'h1c93861;
         180: out <= 26'h165805b;
         181: out <= 26'h165805c;
         182: out <= 26'h1b58041;
         183: out <= 26'h1c6e041;
         184: out <= 26'h1b6f85c;
         185: out <= 26'h1c6e081;
         186: out <= 26'h1b6f85c;
         187: out <= 26'h1c6e101;
         188: out <= 26'h1b6f85c;
         189: out <= 26'h1c6e201;
         190: out <= 26'h1b6f85c;
         191: out <= 26'h1c6e401;
         192: out <= 26'h1b6f85c;
         193: out <= 26'h1c6e801;
         194: out <= 26'h1c6f85c;
         195: out <= 26'h1c72801;
         196: out <= 26'h1b6f85c;
         197: out <= 26'h1b6e041;
         198: out <= 26'h166f856;
         199: out <= 26'h166f856;
         200: out <= 26'h1b8d064;
         201: out <= 26'h1c8905b;
         202: out <= 26'h71040;
         203: out <= 26'h1991059;
         204: out <= 26'h186d058;
         205: out <= 26'h5b840;
         206: out <= 26'h195b859;
         207: out <= 26'h165b858;
         208: out <= 26'h187405e;
         209: out <= 26'h1b74060;
         210: out <= 26'h1c78060;
         211: out <= 26'h2100059;
         212: out <= 26'h2200056;
         213: out <= 26'h2364056;
         214: out <= 26'h1d77840;
         215: out <= 26'h1e7b859;
         216: out <= 26'h2083856;
         217: out <= 26'h1863861;
         218: out <= 26'h1b6f862;
         219: out <= 26'h1c73863;
         220: out <= 26'h1d7505e;
         221: out <= 26'h1e75060;
         222: out <= 26'h1e7805c;
         223: out <= 26'h186105d;
         224: out <= 26'h186005c;
         225: out <= 26'h1b6d05d;
         226: out <= 26'h1c7c057;
         227: out <= 26'h1d7c05a;
         228: out <= 26'h205c05a;
         229: out <= 26'h2100059;
         230: out <= 26'h2200056;
         231: out <= 26'h2364056;
         232: out <= 26'h7f840;
         233: out <= 26'h175f859;
         234: out <= 26'h166b856;
         235: out <= 26'h1973861;
         236: out <= 26'h1a77862;
         237: out <= 26'h1c83863;
         238: out <= 26'h1057;
         239: out <= 26'h1601056;
         240: out <= 26'h165805c;
         241: out <= 26'h1765040;
         242: out <= 26'h175c05c;
         243: out <= 26'h69040;
         244: out <= 26'h1978056;
         245: out <= 26'h1a60057;
         246: out <= 26'h1c6d040;
         247: out <= 26'h1d7b85b;
         248: out <= 26'h1f5b840;
         249: out <= 26'h1b6385b;
         250: out <= 26'h5f840;
         251: out <= 26'h206785c;
         252: out <= 26'h165b858;
         253: out <= 26'h177b857;
         254: out <= 26'h186785a;
         255: out <= 26'h196b85c;
         256: out <= 26'h1a58057;
         257: out <= 26'h1869058;
         258: out <= 26'h1a6c040;
         259: out <= 26'h1a6805a;
         260: out <= 26'h105b;
         261: out <= 26'h1b7d05d;
         262: out <= 26'h1b6c060;
         263: out <= 26'h1c0805d;
         264: out <= 26'h1c7005f;
         265: out <= 26'h1c7005a;
         266: out <= 26'h1659057;
         267: out <= 26'h165805b;
         268: out <= 26'h1769058;
         269: out <= 26'h1d64040;
         270: out <= 26'h1b7505b;
         271: out <= 26'h1860058;
         272: out <= 26'h186105a;
         273: out <= 26'h64040;
         274: out <= 26'h1972041;
         275: out <= 26'h1a5a041;
         276: out <= 26'h1d5e041;
         277: out <= 26'h1e6e041;
         278: out <= 26'h1f62041;
         279: out <= 26'h2002041;
         280: out <= 26'h196405d;
         281: out <= 26'h196405f;
         282: out <= 26'h1a6805a;
         283: out <= 26'h1a6905e;
         284: out <= 26'h1a69060;
         285: out <= 26'h1d7505f;
         286: out <= 26'h1e8105e;
         287: out <= 26'h2080060;
         288: out <= 26'h1966041;
         289: out <= 26'h1a6a041;
         290: out <= 26'h1d76041;
         291: out <= 26'h1e7a041;
         292: out <= 26'h1f7e041;
         293: out <= 26'h2082041;
         294: out <= 26'h196405d;
         295: out <= 26'h196405f;
         296: out <= 26'h1a6805a;
         297: out <= 26'h1a6905e;
         298: out <= 26'h1a69060;
         299: out <= 26'h1d7505f;
         300: out <= 26'h1e8105e;
         301: out <= 26'h2080060;
         302: out <= 26'h2170056;
         303: out <= 26'h225c05b;
         304: out <= 26'h2361040;
         305: out <= 26'h2473858;
         306: out <= 26'h255b840;
         307: out <= 26'h185f858;
         308: out <= 26'h6f840;
         309: out <= 26'h2687863;
         310: out <= 26'h165b857;
         311: out <= 26'h177385b;
         312: out <= 26'h1b87862;
         313: out <= 26'h1c8b863;
         314: out <= 26'h2158057;
         315: out <= 26'h1b8505b;
         316: out <= 26'h2160040;
         317: out <= 26'h2184061;
         318: out <= 26'h1058;
         319: out <= 26'h1895064;
         320: out <= 26'h1860066;
         321: out <= 26'h2208064;
         322: out <= 26'h2288065;
         323: out <= 26'h2288061;
         324: out <= 26'h1659057;
         325: out <= 26'h1658058;
         326: out <= 26'h178505b;
         327: out <= 26'h2370040;
         328: out <= 26'h188d058;
         329: out <= 26'h1b6c05b;
         330: out <= 26'h1b6d061;
         331: out <= 26'h70040;
         332: out <= 26'h1a6805a;
         333: out <= 26'h1c7805e;
         334: out <= 26'h1e80060;
         335: out <= 26'h206405f;
         336: out <= 26'h218005d;
         337: out <= 26'h208105d;
         338: out <= 26'h238805b;
         339: out <= 26'h248c057;
         340: out <= 26'h238d057;
         341: out <= 26'h196505f;
         342: out <= 26'h256505c;
         343: out <= 26'h196405c;
         344: out <= 26'h228905b;
         345: out <= 26'h2689058;
         346: out <= 26'h2288058;
         347: out <= 26'h276805e;
         348: out <= 26'h289c05c;
         349: out <= 26'h1c9d05c;
         350: out <= 26'h2758040;
         351: out <= 26'h299c058;
         352: out <= 26'h189d058;
         353: out <= 26'h1a6905e;
         354: out <= 26'h276805d;
         355: out <= 26'h1a6905d;
         356: out <= 26'h1659040;
         357: out <= 26'h1d58057;
         358: out <= 26'h1659057;
         359: out <= 26'h1784068;
         360: out <= 26'h2a90069;
         361: out <= 26'h2b94067;
         362: out <= 26'h2c9805d;
         363: out <= 26'h2d8005c;
         364: out <= 26'h2e8c058;
         365: out <= 26'h2f6405a;
         366: out <= 26'h3088056;
         367: out <= 26'h317c05e;
         368: out <= 26'h326c040;
         369: out <= 26'h2187864;
         370: out <= 26'h175f86a;
         371: out <= 26'h24a3869;
         372: out <= 26'h2597866;
         373: out <= 26'h26af86c;
         374: out <= 26'h1d9f85d;
         375: out <= 26'h2083863;
         376: out <= 26'h23b786e;
         377: out <= 26'h1873858;
         378: out <= 26'h1967862;
         379: out <= 26'h1cbf870;
         380: out <= 26'h166b856;
         381: out <= 26'h1a7f85b;
         382: out <= 26'h1bc7872;
         383: out <= 26'h7b840;
         384: out <= 26'h1e84066;
         385: out <= 26'h1e7805a;
         386: out <= 26'h1f9005c;
         387: out <= 26'h1f7c040;
         388: out <= 26'h1a8005a;
         389: out <= 26'h60040;
         390: out <= 26'h40;
         391: out <= 26'h188c05b;
         392: out <= 26'h2000064;
         393: out <= 26'h2269061;
         394: out <= 26'h1064;
         395: out <= 26'h5d;
         396: out <= 26'h56;
         397: out <= 26'h1a68061;
         398: out <= 26'h1a69065;
         399: out <= 26'h1a69059;
         400: out <= 26'h97d05e;
         401: out <= 26'h925065;
         402: out <= 26'h924056;
         403: out <= 26'ha7805f;
         404: out <= 26'ha29057;
         405: out <= 26'ha2805d;
         406: out <= 26'ha28059;
         407: out <= 26'ha2905b;
         408: out <= 26'hb80062;
         409: out <= 26'hc81062;
         410: out <= 26'hc30058;
         411: out <= 26'hc31057;
         412: out <= 26'hd0005a;
         413: out <= 26'he0105a;
         414: out <= 26'he38058;
         415: out <= 26'he38057;
         416: out <= 26'he39066;
         417: out <= 26'he3905c;
         default: out <= 0;
      endcase
endmodule
 

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

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