227 lines
14 KiB
Verilog
227 lines
14 KiB
Verilog
`timescale 1ns / 1ps
|
|
//////////////////////////////////////////////////////////////////////////////////
|
|
// Company:
|
|
// Engineer:
|
|
//
|
|
// Create Date: 20:18:41 09/13/2020
|
|
// Design Name:
|
|
// Module Name: char_map
|
|
// Project Name:
|
|
// Target Devices:
|
|
// Tool versions:
|
|
// Description:
|
|
//
|
|
// Dependencies:
|
|
//
|
|
// Revision:
|
|
// Revision 0.01 - File Created
|
|
// Additional Comments:
|
|
//
|
|
//////////////////////////////////////////////////////////////////////////////////
|
|
module char_map(
|
|
input clk,
|
|
input [7:0] index,
|
|
output reg [255:0] char
|
|
);
|
|
|
|
wire [255:0] char_data [94:0];
|
|
|
|
always @(posedge clk) begin
|
|
char <= char_data[index];
|
|
end
|
|
|
|
assign char_data[ 0] = 256'h0000000000000000000000000000000000000000000000000000000000000000; //
|
|
assign char_data[ 1] = 256'h0000000007000f800f800f800f800f8007000700000000000700070007000000; // !
|
|
assign char_data[ 2] = 256'h00000e380e380e380e3806300000000000000000000000000000000000000000; // "
|
|
assign char_data[ 3] = 256'h00000c300c300c307ffe7ffe0c300c300c300c307ffe7ffe0c300c300c300000; // #
|
|
assign char_data[ 4] = 256'h0000024002400ff81ff81a401a401ff00ff8025802581ff81ff0024002400000; // $
|
|
assign char_data[ 5] = 256'h0000000000000e100e300e7000e001c0038007000e700c700870000000000000; // %
|
|
assign char_data[ 6] = 256'h000000000f001980198019800f000f080f9819f818f018e019f00f9800000000; // &
|
|
assign char_data[ 7] = 256'h000000000700070007000e000000000000000000000000000000000000000000; // '
|
|
assign char_data[ 8] = 256'h0000000000f001c0038007000e000e000e000e000700038001c000f000000000; // (
|
|
assign char_data[ 9] = 256'h000000000f00038001c000e0007000700070007000e001c003800f0000000000; // )
|
|
assign char_data[10] = 256'h0000000001801188099007e007e03ffc3ffc07e007e009901188018000000000; // *
|
|
assign char_data[11] = 256'h00000000000001800180018001801ff81ff80180018001800180000000000000; // +
|
|
assign char_data[12] = 256'h000000000000000000000000000000000000000000000700070007000e000000; // ,
|
|
assign char_data[13] = 256'h00000000000000000000000000001ff81ff80000000000000000000000000000; // -
|
|
assign char_data[14] = 256'h0000000000000000000000000000000000000000000007000700070000000000; // .
|
|
assign char_data[15] = 256'h0000000000020006000e001c0038007000e001c0038007000e001c0000000000; // /
|
|
assign char_data[16] = 256'h000000000ff01c381c781cf81cf81db81db81f381f381e381c380ff000000000; // 0
|
|
assign char_data[17] = 256'h000000000180018003801f801f800380038003800380038003801ff000000000; // 1
|
|
assign char_data[18] = 256'h000000000fe01c701c380038007000e001c0038007000e381c381ff800000000; // 2
|
|
assign char_data[19] = 256'h000000000fe01c701c380038007003e003e0007000381c381c700fe000000000; // 3
|
|
assign char_data[20] = 256'h0000000000e001e003e006e00ce018e01ff81ff800e000e000e003f800000000; // 4
|
|
assign char_data[21] = 256'h000000001ff81c001c001c001c001fe01ff0007800381c381c700fe000000000; // 5
|
|
assign char_data[22] = 256'h0000000003e007000e001c001c001ff01ff81c381c381c381c380ff000000000; // 6
|
|
assign char_data[23] = 256'h000000001ffc1c1c1c1c1c1c001c0038007000e001c003800380038000000000; // 7
|
|
assign char_data[24] = 256'h000000000ff01c381c381c381f3807e007e01cf81c381c381c380ff000000000; // 8
|
|
assign char_data[25] = 256'h000000000ff01c381c381c381c381ff80ff800380038007000e007c000000000; // 9
|
|
assign char_data[26] = 256'h0000000000000000038003800380000000000380038003800000000000000000; // :
|
|
assign char_data[27] = 256'h0000000000000000070007000700000000000700070007000e00000000000000; // ;
|
|
assign char_data[28] = 256'h0000007000e001c0038007000e001c001c000e000700038001c000e000700000; // <
|
|
assign char_data[29] = 256'h000000000000000000003ffc3ffc000000003ffc3ffc00000000000000000000; // =
|
|
assign char_data[30] = 256'h00001c000e000700038001c000e00070007000e001c0038007000e001c000000; // >
|
|
assign char_data[31] = 256'h000003c00ff01e7818380038007000e001c001c00000000001c001c001c00000; // ?
|
|
assign char_data[32] = 256'h000007f81c1c1c1c1c1c1c1c1cfc1cfc1cfc1cfc1c001c001c001c0007f80000; // @
|
|
assign char_data[33] = 256'h0000000003c007e00e701c381c381c381c381ff81c381c381c381c3800000000; // A
|
|
assign char_data[34] = 256'h000000001ff00e380e380e380e380ff00ff00e380e380e380e381ff000000000; // B
|
|
assign char_data[35] = 256'h0000000007f00e381c381c001c001c001c001c001c001c380e3807f000000000; // C
|
|
assign char_data[36] = 256'h000000001fe00e700e380e380e380e380e380e380e380e380e701fe000000000; // D
|
|
assign char_data[37] = 256'h000000001ff80e180e080e000e300ff00ff00e300e000e080e181ff800000000; // E
|
|
assign char_data[38] = 256'h000000001ff80e180e080e000e300ff00ff00e300e000e000e001f0000000000; // F
|
|
assign char_data[39] = 256'h0000000007f00e381c381c381c001c001c001cf81c381c380e3807f800000000; // G
|
|
assign char_data[40] = 256'h000000001c701c701c701c701c701ff01ff01c701c701c701c701c7000000000; // H
|
|
assign char_data[41] = 256'h000000001fc007000700070007000700070007000700070007001fc000000000; // I
|
|
assign char_data[42] = 256'h0000000001fc0070007000700070007000701c701c701c701c700fe000000000; // J
|
|
assign char_data[43] = 256'h000000001e380e380e700ee00fc00f800f800fc00ee00e700e381e3800000000; // K
|
|
assign char_data[44] = 256'h000000001f000e000e000e000e000e000e000e000e080e180e381ff800000000; // L
|
|
assign char_data[45] = 256'h000000001c1c1e3c1f7c1ffc1ffc1ddc1c9c1c1c1c1c1c1c1c1c1c1c00000000; // M
|
|
assign char_data[46] = 256'h000000001c1c1c1c1e1c1f1c1f9c1ddc1cfc1c7c1c3c1c1c1c1c1c1c00000000; // N
|
|
assign char_data[47] = 256'h0000000003e007700e381c1c1c1c1c1c1c1c1c1c1c1c0e38077003e000000000; // O
|
|
assign char_data[48] = 256'h000000001ff00e380e380e380e380ff00ff00e000e000e000e001f0000000000; // P
|
|
assign char_data[49] = 256'h0000000003e00f780e381c1c1c1c1c1c1c1c1c7c1cfc0ff80ff8003800fc0000; // Q
|
|
assign char_data[50] = 256'h000000001ff00e380e380e380e380ff00ff00e700e380e380e381e3800000000; // R
|
|
assign char_data[51] = 256'h000000000ff01c381c381c381c000fe007f000381c381c381c380ff000000000; // S
|
|
assign char_data[52] = 256'h000000001ffc19cc11c401c001c001c001c001c001c001c001c007f000000000; // T
|
|
assign char_data[53] = 256'h000000001c701c701c701c701c701c701c701c701c701c701c700fe000000000; // U
|
|
assign char_data[54] = 256'h000000001c701c701c701c701c701c701c701c701c700ee007c0038000000000; // V
|
|
assign char_data[55] = 256'h000000001c1c1c1c1c1c1c1c1c1c1c9c1c9c1c9c0ff80f780770077000000000; // W
|
|
assign char_data[56] = 256'h000000001c701c701c700ee007c00380038007c00ee01c701c701c7000000000; // X
|
|
assign char_data[57] = 256'h000000001c701c701c701c701c700ee007c003800380038003800fe000000000; // Y
|
|
assign char_data[58] = 256'h000000001ff81c381838107000e001c0038007000e081c181c381ff800000000; // Z
|
|
assign char_data[59] = 256'h0000000007f0070007000700070007000700070007000700070007f000000000; // [
|
|
assign char_data[60] = 256'h00000000100018001c000e000700038001c000e000700038001c000e00000000; // \
|
|
assign char_data[61] = 256'h0000000007f0007000700070007000700070007000700070007007f000000000; // ]
|
|
assign char_data[62] = 256'h0000018003c007e00e701c380000000000000000000000000000000000000000; // ^
|
|
assign char_data[63] = 256'h00000000000000000000000000000000000000000000000000000000ffffffff; // _
|
|
assign char_data[64] = 256'h000000001c001c00070007000000000000000000000000000000000000000000; // `
|
|
assign char_data[65] = 256'h0000000000000000000000000fe0007000700ff01c701c701c700f9800000000; // a
|
|
assign char_data[66] = 256'h000000001e000e000e000e000ff00e380e380e380e380e380e3819f000000000; // b
|
|
assign char_data[67] = 256'h0000000000000000000000000fe01c701c701c001c001c701c700fe000000000; // c
|
|
assign char_data[68] = 256'h0000000000f80070007000700ff01c701c701c701c701c701c700f9800000000; // d
|
|
assign char_data[69] = 256'h0000000000000000000000000fe01c701c701ff01c001c701c700fe000000000; // e
|
|
assign char_data[70] = 256'h0000000003e007700770070007001fe01fe007000700070007001fc000000000; // f
|
|
assign char_data[71] = 256'h0000000000000000000000000f981c701c701c701c700ff007f000701c700fe0; // g
|
|
assign char_data[72] = 256'h000000001e000e000e000e000ef00f380f380e380e380e380e381e3800000000; // h
|
|
assign char_data[73] = 256'h0000000001c001c001c000000fc001c001c001c001c001c001c00ff800000000; // i
|
|
assign char_data[74] = 256'h00000000007000700070000003f00070007000700070007000701c701c7007e0; // j
|
|
assign char_data[75] = 256'h000000001e000e000e000e000e380e700ee00fc00ee00e700e381e3800000000; // k
|
|
assign char_data[76] = 256'h000000000fc001c001c001c001c001c001c001c001c001c001c00ff800000000; // l
|
|
assign char_data[77] = 256'h0000000000000000000000001ff81c9c1c9c1c9c1c9c1c9c1c9c1c1c00000000; // m
|
|
assign char_data[78] = 256'h0000000000000000000000001fe01c701c701c701c701c701c701c7000000000; // n
|
|
assign char_data[79] = 256'h0000000000000000000000000fe01c701c701c701c701c701c700fe000000000; // o
|
|
assign char_data[80] = 256'h00000000000000000000000019f00e380e380e380e380e380ff00e000e001f00; // p
|
|
assign char_data[81] = 256'h0000000000000000000000001f3038e038e038e038e038e01fe000e000e001f0; // q
|
|
assign char_data[82] = 256'h0000000000000000000000001e700ff80f380e000e000e000e001f0000000000; // r
|
|
assign char_data[83] = 256'h0000000000000000000000000fe01c301c300f8003e0187018700fe000000000; // s
|
|
assign char_data[84] = 256'h0000000000000100030007001ff007000700070007000770077003e000000000; // t
|
|
assign char_data[85] = 256'h0000000000000000000000001c701c701c701c701c701c701c700f9800000000; // u
|
|
assign char_data[86] = 256'h0000000000000000000000001c701c701c701c701c700ee007c0038000000000; // v
|
|
assign char_data[87] = 256'h0000000000000000000000001c1c1c1c1c1c1c9c1c9c0f780770077000000000; // w
|
|
assign char_data[88] = 256'h0000000000000000000000001ce01ce00fc0078007800fc01ce01ce000000000; // x
|
|
assign char_data[89] = 256'h0000000000000000000000000e380e380e380e380e3807f003e000e001c01f80; // y
|
|
assign char_data[90] = 256'h0000000000000000000000001fe018e011c0038007000e201c601fe000000000; // z
|
|
assign char_data[91] = 256'h0000000001f803800380038007001c001c00070003800380038001f800000000; // {
|
|
assign char_data[92] = 256'h0000000003c003c003c003c003c00000000003c003c003c003c003c000000000; // |
|
|
assign char_data[93] = 256'h000000001f8001c001c001c000e00038003800e001c001c001c01f8000000000; // }
|
|
assign char_data[94] = 256'h000000001f1c3b9c39dc38f80000000000000000000000000000000000000000; // ~
|
|
|
|
//assign char_data[0] = 30'h00000000; //
|
|
//assign char_data[1] = 30'h1CE7380E; // !
|
|
//assign char_data[2] = 30'h14A00000; // "
|
|
//assign char_data[3] = 30'hAFABEA; // #
|
|
//assign char_data[4] = 30'h8FA38BE; // $
|
|
//assign char_data[5] = 30'h19D1173; // %
|
|
//assign char_data[6] = 30'h1905324D; // &
|
|
//assign char_data[7] = 30'h8400000; // '
|
|
//assign char_data[8] = 30'hCC63186; // (
|
|
//assign char_data[9] = 30'h186318CC; // )
|
|
//assign char_data[10] = 30'h4ABAA4; // *
|
|
//assign char_data[11] = 30'h427C84; // +
|
|
//assign char_data[12] = 30'h0x8C; // ,
|
|
//assign char_data[13] = 30'h3800; // -
|
|
//assign char_data[14] = 30'hC; // .
|
|
//assign char_data[15] = 30'hC663318; // /
|
|
//assign char_data[16] = 30'h3FBDEF7F; // 0
|
|
//assign char_data[17] = 30'h3C6318DF; // 1
|
|
//assign char_data[18] = 30'h3E3FE31F; // 2
|
|
//assign char_data[19] = 30'h3E378C7F; // 3
|
|
//assign char_data[20] = 30'h37BF8C63; // 4
|
|
//assign char_data[21] = 30'h3F8F8C7F; // 5
|
|
//assign char_data[22] = 30'h3F8FEF7F; // 6
|
|
//assign char_data[23] = 30'h3E33318C; // 7
|
|
//assign char_data[24] = 30'h3FBFEF7F; // 8
|
|
//assign char_data[25] = 30'h3FBF8C7F; // 9
|
|
//assign char_data[26] = 30'hC00180; // :
|
|
//assign char_data[27] = 30'hC00198; // ;
|
|
//assign char_data[28] = 30'h666186; // <
|
|
//assign char_data[29] = 30'h701C0; // =
|
|
//assign char_data[30] = 30'hC30CCC; // >
|
|
//assign char_data[31] = 30'h3C31B80C; // ?
|
|
//assign char_data[32] = 30'h1D1BDE0F; // @
|
|
//assign char_data[33] = 30'h1DBDFF7B; // A
|
|
//assign char_data[34] = 30'h3DBF6F7E; // B
|
|
//assign char_data[35] = 30'h1DBC636E; // C
|
|
//assign char_data[36] = 30'h3DBDEF7E; // D
|
|
//assign char_data[37] = 30'h1F8F630F; // E
|
|
//assign char_data[38] = 30'h1F8F6318; // F
|
|
//assign char_data[39] = 30'h1F8C6F6F; // G
|
|
//assign char_data[40] = 30'h37BFEF7B; // H
|
|
//assign char_data[41] = 30'h3CC6319E; // I
|
|
//assign char_data[42] = 30'h3E6318DC; // J
|
|
//assign char_data[43] = 30'h37BE6F7B; // K
|
|
//assign char_data[44] = 30'h318C631F; // L
|
|
//assign char_data[45] = 30'h37FFEF7B; // M
|
|
//assign char_data[46] = 30'h3DBDEF7B; // N
|
|
//assign char_data[47] = 30'h1DBDEF6E; // O
|
|
//assign char_data[48] = 30'h3DBDFB18; // P
|
|
//assign char_data[49] = 30'h1DBDEFCF; // Q
|
|
//assign char_data[50] = 30'h3DBDF37B; // R
|
|
//assign char_data[51] = 30'h1F870C7E; // S
|
|
//assign char_data[52] = 30'h3EC6318C; // T
|
|
//assign char_data[53] = 30'h37BDEF6E; // U
|
|
//assign char_data[54] = 30'h37BDEDC4; // V
|
|
//assign char_data[55] = 30'h37BDFFFB; // W
|
|
//assign char_data[56] = 30'h37B26F7B; // X
|
|
//assign char_data[57] = 30'h37BF8C7E; // Y
|
|
//assign char_data[58] = 30'h3E33331F; // Z
|
|
//assign char_data[59] = 30'h1CC6318E; // [
|
|
//assign char_data[60] = 30'h18C31863; // \
|
|
//assign char_data[61] = 30'h1C6318CE; // ]
|
|
//assign char_data[62] = 30'h8A00000; // ^
|
|
//assign char_data[63] = 30'h1F; // _
|
|
//assign char_data[64] = 30'h10400000; // `
|
|
//assign char_data[65] = 30'h7EF7D; // a
|
|
//assign char_data[66] = 30'h318F6F7F; // b
|
|
//assign char_data[67] = 30'h7E30F; // c
|
|
//assign char_data[68] = 30'h637EF6F; // d
|
|
//assign char_data[69] = 30'h76F8F; // e
|
|
//assign char_data[70] = 30'hEC67D8C; // f
|
|
//assign char_data[71] = 30'h1FBDBC7E; // g
|
|
//assign char_data[72] = 30'h318F6F7B; // h
|
|
//assign char_data[73] = 30'h18063186; // i
|
|
//assign char_data[74] = 30'hC6318DC; // j
|
|
//assign char_data[75] = 30'h31BD735B; // k
|
|
//assign char_data[76] = 30'h18C63186; // l
|
|
//assign char_data[77] = 30'h57F7B; // m
|
|
//assign char_data[78] = 30'hF6F7B; // n
|
|
//assign char_data[79] = 30'h7EF7E; // o
|
|
//assign char_data[80] = 30'h3DBDFB18; // p
|
|
//assign char_data[81] = 30'h1FBDBC63; // q
|
|
//assign char_data[82] = 30'h76F18; // r
|
|
//assign char_data[83] = 30'h7F0FE; // s
|
|
//assign char_data[84] = 30'h18CF3186; // t
|
|
//assign char_data[85] = 30'hDEF6F; // u
|
|
//assign char_data[86] = 30'hDED44; // v
|
|
//assign char_data[87] = 30'hDEFEA; // w
|
|
//assign char_data[88] = 30'hDBB7B; // x
|
|
//assign char_data[89] = 30'h37BDBC6E; // y
|
|
//assign char_data[90] = 30'hF999F; // z
|
|
//assign char_data[91] = 30'h623086; // {
|
|
//assign char_data[92] = 30'h421084; // |
|
|
//assign char_data[93] = 30'h610C46; // }
|
|
//assign char_data[94] = 30'hAA0000; // ~
|
|
|
|
|
|
endmodule
|