/drm/trunk/debug/mm/ml/forge_gcalc/rom_inv_rtl.v
Verilog | 273 lines | 266 code | 0 blank | 7 comment | 0 complexity | bc02e03013288a48cef88d0bb9afc71f MD5 | raw file
1/* 2 sync_rom rom_label( 3 .clk(clk), 4 .address(), 5 .data_out()); 6*/ 7module sync_rom(clk, address, data_out); 8 input clk; 9 input [7:0] address; 10 output [7:0] data_out; 11 // local /// 12 reg [7:0] data_out; 13 always @ (posedge clk) begin 14 case (address) 15 8'b0: data_out <= 8'b1; 16 8'b1: data_out <= 8'b10; 17 8'b10: data_out <= 8'b100; 18 8'b11: data_out <= 8'b1000; 19 8'b100: data_out <= 8'b10000; 20 8'b101: data_out <= 8'b100000; 21 8'b110: data_out <= 8'b1000000; 22 8'b111: data_out <= 8'b10000000; 23 8'b1000: data_out <= 8'b11101; 24 8'b1001: data_out <= 8'b111010; 25 8'b1010: data_out <= 8'b1110100; 26 8'b1011: data_out <= 8'b11101000; 27 8'b1100: data_out <= 8'b11001101; 28 8'b1101: data_out <= 8'b10000111; 29 8'b1110: data_out <= 8'b10011; 30 8'b1111: data_out <= 8'b100110; 31 8'b10000: data_out <= 8'b1001100; 32 8'b10001: data_out <= 8'b10011000; 33 8'b10010: data_out <= 8'b101101; 34 8'b10011: data_out <= 8'b1011010; 35 8'b10100: data_out <= 8'b10110100; 36 8'b10101: data_out <= 8'b1110101; 37 8'b10110: data_out <= 8'b11101010; 38 8'b10111: data_out <= 8'b11001001; 39 8'b11000: data_out <= 8'b10001111; 40 8'b11001: data_out <= 8'b11; 41 8'b11010: data_out <= 8'b110; 42 8'b11011: data_out <= 8'b1100; 43 8'b11100: data_out <= 8'b11000; 44 8'b11101: data_out <= 8'b110000; 45 8'b11110: data_out <= 8'b1100000; 46 8'b11111: data_out <= 8'b11000000; 47 8'b100000: data_out <= 8'b10011101; 48 8'b100001: data_out <= 8'b100111; 49 8'b100010: data_out <= 8'b1001110; 50 8'b100011: data_out <= 8'b10011100; 51 8'b100100: data_out <= 8'b100101; 52 8'b100101: data_out <= 8'b1001010; 53 8'b100110: data_out <= 8'b10010100; 54 8'b100111: data_out <= 8'b110101; 55 8'b101000: data_out <= 8'b1101010; 56 8'b101001: data_out <= 8'b11010100; 57 8'b101010: data_out <= 8'b10110101; 58 8'b101011: data_out <= 8'b1110111; 59 8'b101100: data_out <= 8'b11101110; 60 8'b101101: data_out <= 8'b11000001; 61 8'b101110: data_out <= 8'b10011111; 62 8'b101111: data_out <= 8'b100011; 63 8'b110000: data_out <= 8'b1000110; 64 8'b110001: data_out <= 8'b10001100; 65 8'b110010: data_out <= 8'b101; 66 8'b110011: data_out <= 8'b1010; 67 8'b110100: data_out <= 8'b10100; 68 8'b110101: data_out <= 8'b101000; 69 8'b110110: data_out <= 8'b1010000; 70 8'b110111: data_out <= 8'b10100000; 71 8'b111000: data_out <= 8'b1011101; 72 8'b111001: data_out <= 8'b10111010; 73 8'b111010: data_out <= 8'b1101001; 74 8'b111011: data_out <= 8'b11010010; 75 8'b111100: data_out <= 8'b10111001; 76 8'b111101: data_out <= 8'b1101111; 77 8'b111110: data_out <= 8'b11011110; 78 8'b111111: data_out <= 8'b10100001; 79 8'b1000000: data_out <= 8'b1011111; 80 8'b1000001: data_out <= 8'b10111110; 81 8'b1000010: data_out <= 8'b1100001; 82 8'b1000011: data_out <= 8'b11000010; 83 8'b1000100: data_out <= 8'b10011001; 84 8'b1000101: data_out <= 8'b101111; 85 8'b1000110: data_out <= 8'b1011110; 86 8'b1000111: data_out <= 8'b10111100; 87 8'b1001000: data_out <= 8'b1100101; 88 8'b1001001: data_out <= 8'b11001010; 89 8'b1001010: data_out <= 8'b10001001; 90 8'b1001011: data_out <= 8'b1111; 91 8'b1001100: data_out <= 8'b11110; 92 8'b1001101: data_out <= 8'b111100; 93 8'b1001110: data_out <= 8'b1111000; 94 8'b1001111: data_out <= 8'b11110000; 95 8'b1010000: data_out <= 8'b11111101; 96 8'b1010001: data_out <= 8'b11100111; 97 8'b1010010: data_out <= 8'b11010011; 98 8'b1010011: data_out <= 8'b10111011; 99 8'b1010100: data_out <= 8'b1101011; 100 8'b1010101: data_out <= 8'b11010110; 101 8'b1010110: data_out <= 8'b10110001; 102 8'b1010111: data_out <= 8'b1111111; 103 8'b1011000: data_out <= 8'b11111110; 104 8'b1011001: data_out <= 8'b11100001; 105 8'b1011010: data_out <= 8'b11011111; 106 8'b1011011: data_out <= 8'b10100011; 107 8'b1011100: data_out <= 8'b1011011; 108 8'b1011101: data_out <= 8'b10110110; 109 8'b1011110: data_out <= 8'b1110001; 110 8'b1011111: data_out <= 8'b11100010; 111 8'b1100000: data_out <= 8'b11011001; 112 8'b1100001: data_out <= 8'b10101111; 113 8'b1100010: data_out <= 8'b1000011; 114 8'b1100011: data_out <= 8'b10000110; 115 8'b1100100: data_out <= 8'b10001; 116 8'b1100101: data_out <= 8'b100010; 117 8'b1100110: data_out <= 8'b1000100; 118 8'b1100111: data_out <= 8'b10001000; 119 8'b1101000: data_out <= 8'b1101; 120 8'b1101001: data_out <= 8'b11010; 121 8'b1101010: data_out <= 8'b110100; 122 8'b1101011: data_out <= 8'b1101000; 123 8'b1101100: data_out <= 8'b11010000; 124 8'b1101101: data_out <= 8'b10111101; 125 8'b1101110: data_out <= 8'b1100111; 126 8'b1101111: data_out <= 8'b11001110; 127 8'b1110000: data_out <= 8'b10000001; 128 8'b1110001: data_out <= 8'b11111; 129 8'b1110010: data_out <= 8'b111110; 130 8'b1110011: data_out <= 8'b1111100; 131 8'b1110100: data_out <= 8'b11111000; 132 8'b1110101: data_out <= 8'b11101101; 133 8'b1110110: data_out <= 8'b11000111; 134 8'b1110111: data_out <= 8'b10010011; 135 8'b1111000: data_out <= 8'b111011; 136 8'b1111001: data_out <= 8'b1110110; 137 8'b1111010: data_out <= 8'b11101100; 138 8'b1111011: data_out <= 8'b11000101; 139 8'b1111100: data_out <= 8'b10010111; 140 8'b1111101: data_out <= 8'b110011; 141 8'b1111110: data_out <= 8'b1100110; 142 8'b1111111: data_out <= 8'b11001100; 143 8'b10000000: data_out <= 8'b10000101; 144 8'b10000001: data_out <= 8'b10111; 145 8'b10000010: data_out <= 8'b101110; 146 8'b10000011: data_out <= 8'b1011100; 147 8'b10000100: data_out <= 8'b10111000; 148 8'b10000101: data_out <= 8'b1101101; 149 8'b10000110: data_out <= 8'b11011010; 150 8'b10000111: data_out <= 8'b10101001; 151 8'b10001000: data_out <= 8'b1001111; 152 8'b10001001: data_out <= 8'b10011110; 153 8'b10001010: data_out <= 8'b100001; 154 8'b10001011: data_out <= 8'b1000010; 155 8'b10001100: data_out <= 8'b10000100; 156 8'b10001101: data_out <= 8'b10101; 157 8'b10001110: data_out <= 8'b101010; 158 8'b10001111: data_out <= 8'b1010100; 159 8'b10010000: data_out <= 8'b10101000; 160 8'b10010001: data_out <= 8'b1001101; 161 8'b10010010: data_out <= 8'b10011010; 162 8'b10010011: data_out <= 8'b101001; 163 8'b10010100: data_out <= 8'b1010010; 164 8'b10010101: data_out <= 8'b10100100; 165 8'b10010110: data_out <= 8'b1010101; 166 8'b10010111: data_out <= 8'b10101010; 167 8'b10011000: data_out <= 8'b1001001; 168 8'b10011001: data_out <= 8'b10010010; 169 8'b10011010: data_out <= 8'b111001; 170 8'b10011011: data_out <= 8'b1110010; 171 8'b10011100: data_out <= 8'b11100100; 172 8'b10011101: data_out <= 8'b11010101; 173 8'b10011110: data_out <= 8'b10110111; 174 8'b10011111: data_out <= 8'b1110011; 175 8'b10100000: data_out <= 8'b11100110; 176 8'b10100001: data_out <= 8'b11010001; 177 8'b10100010: data_out <= 8'b10111111; 178 8'b10100011: data_out <= 8'b1100011; 179 8'b10100100: data_out <= 8'b11000110; 180 8'b10100101: data_out <= 8'b10010001; 181 8'b10100110: data_out <= 8'b111111; 182 8'b10100111: data_out <= 8'b1111110; 183 8'b10101000: data_out <= 8'b11111100; 184 8'b10101001: data_out <= 8'b11100101; 185 8'b10101010: data_out <= 8'b11010111; 186 8'b10101011: data_out <= 8'b10110011; 187 8'b10101100: data_out <= 8'b1111011; 188 8'b10101101: data_out <= 8'b11110110; 189 8'b10101110: data_out <= 8'b11110001; 190 8'b10101111: data_out <= 8'b11111111; 191 8'b10110000: data_out <= 8'b11100011; 192 8'b10110001: data_out <= 8'b11011011; 193 8'b10110010: data_out <= 8'b10101011; 194 8'b10110011: data_out <= 8'b1001011; 195 8'b10110100: data_out <= 8'b10010110; 196 8'b10110101: data_out <= 8'b110001; 197 8'b10110110: data_out <= 8'b1100010; 198 8'b10110111: data_out <= 8'b11000100; 199 8'b10111000: data_out <= 8'b10010101; 200 8'b10111001: data_out <= 8'b110111; 201 8'b10111010: data_out <= 8'b1101110; 202 8'b10111011: data_out <= 8'b11011100; 203 8'b10111100: data_out <= 8'b10100101; 204 8'b10111101: data_out <= 8'b1010111; 205 8'b10111110: data_out <= 8'b10101110; 206 8'b10111111: data_out <= 8'b1000001; 207 8'b11000000: data_out <= 8'b10000010; 208 8'b11000001: data_out <= 8'b11001; 209 8'b11000010: data_out <= 8'b110010; 210 8'b11000011: data_out <= 8'b1100100; 211 8'b11000100: data_out <= 8'b11001000; 212 8'b11000101: data_out <= 8'b10001101; 213 8'b11000110: data_out <= 8'b111; 214 8'b11000111: data_out <= 8'b1110; 215 8'b11001000: data_out <= 8'b11100; 216 8'b11001001: data_out <= 8'b111000; 217 8'b11001010: data_out <= 8'b1110000; 218 8'b11001011: data_out <= 8'b11100000; 219 8'b11001100: data_out <= 8'b11011101; 220 8'b11001101: data_out <= 8'b10100111; 221 8'b11001110: data_out <= 8'b1010011; 222 8'b11001111: data_out <= 8'b10100110; 223 8'b11010000: data_out <= 8'b1010001; 224 8'b11010001: data_out <= 8'b10100010; 225 8'b11010010: data_out <= 8'b1011001; 226 8'b11010011: data_out <= 8'b10110010; 227 8'b11010100: data_out <= 8'b1111001; 228 8'b11010101: data_out <= 8'b11110010; 229 8'b11010110: data_out <= 8'b11111001; 230 8'b11010111: data_out <= 8'b11101111; 231 8'b11011000: data_out <= 8'b11000011; 232 8'b11011001: data_out <= 8'b10011011; 233 8'b11011010: data_out <= 8'b101011; 234 8'b11011011: data_out <= 8'b1010110; 235 8'b11011100: data_out <= 8'b10101100; 236 8'b11011101: data_out <= 8'b1000101; 237 8'b11011110: data_out <= 8'b10001010; 238 8'b11011111: data_out <= 8'b1001; 239 8'b11100000: data_out <= 8'b10010; 240 8'b11100001: data_out <= 8'b100100; 241 8'b11100010: data_out <= 8'b1001000; 242 8'b11100011: data_out <= 8'b10010000; 243 8'b11100100: data_out <= 8'b111101; 244 8'b11100101: data_out <= 8'b1111010; 245 8'b11100110: data_out <= 8'b11110100; 246 8'b11100111: data_out <= 8'b11110101; 247 8'b11101000: data_out <= 8'b11110111; 248 8'b11101001: data_out <= 8'b11110011; 249 8'b11101010: data_out <= 8'b11111011; 250 8'b11101011: data_out <= 8'b11101011; 251 8'b11101100: data_out <= 8'b11001011; 252 8'b11101101: data_out <= 8'b10001011; 253 8'b11101110: data_out <= 8'b1011; 254 8'b11101111: data_out <= 8'b10110; 255 8'b11110000: data_out <= 8'b101100; 256 8'b11110001: data_out <= 8'b1011000; 257 8'b11110010: data_out <= 8'b10110000; 258 8'b11110011: data_out <= 8'b1111101; 259 8'b11110100: data_out <= 8'b11111010; 260 8'b11110101: data_out <= 8'b11101001; 261 8'b11110110: data_out <= 8'b11001111; 262 8'b11110111: data_out <= 8'b10000011; 263 8'b11111000: data_out <= 8'b11011; 264 8'b11111001: data_out <= 8'b110110; 265 8'b11111010: data_out <= 8'b1101100; 266 8'b11111011: data_out <= 8'b11011000; 267 8'b11111100: data_out <= 8'b10101101; 268 8'b11111101: data_out <= 8'b1000111; 269 8'b11111110: data_out <= 8'b10001110; 270 8'b11111111: data_out <= 8'b0; 271 endcase 272 end 273endmodule