summaryrefslogtreecommitdiff
path: root/FPGA/vhdl/message.vhd
blob: b8bccf1a4ea13946cdef263bc189b5abba80f373 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
------------------------------------------
-- Message 32 characteres ASCII
-- ESIEE, JPO 2008
-- Bienvenue
------------------------------------------
-- Creation     : A. Exertier, mars 2008
-- Modification : A. Exertier, avril 2013
------------------------------------------


library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;

entity message is
port (
	adr : in std_logic_vector(4 downto 0);
	do : out std_logic_vector(7 downto 0)
	);
end entity;

architecture RTL of message is
  type contenu is array (0 to 31) of std_logic_vector(7 downto 0);
  constant mes : contenu := (
  -- 1ere ligne (de 15 caracteres)
  -- Mettre le code ASCII (en hexadecimal) de chaque caractère
  -- exemple T => 54 (en hexadecimal)
  -- 0=> X"54", indique que le 1er caractere (n°0) est un T
  -- Modifier les valeurs ASCII ci-dessous
  
  -- 53 63 69 65 6e 63 65 20 69 73 20 66 75 6e 21
  -- Science is fun!
  
	0  => X"20",  --  
	1  => X"53",  --  S
	2  => X"63",  --  c
	3  => X"69",  --  i
	4  => X"65",  --  e
	5  => X"6e",  --  n
	6  => X"63",  --  c
	7  => X"65",  --  e
	8  => X"20",  --
	9  => X"20",  --
	10 => X"5E",  --  ^
	11 => X"20",  --  
	12 => X"20",  --  
	13 => X"5E",  --  ^
	14 => X"20",  --  
	15 => X"20",  --  
  -- 2eme ligne (de 15 caracteres)
	16 => X"20",   --  
	17 => X"69",  -- i
	18 => X"73",  -- s
	19 => X"20",  --  
	20 => X"66",  -- f
	21 => X"75",  -- u
	22 => X"6e",  -- n
	23 => X"21",  -- ! 
	24 => X"20",  --  
	25 => X"20",  --  
	26 => X"60",  --  _
	27 => X"5F",  --  _
	28 => X"5F",  --  _
	29 => X"2F",  --  /
	30 => X"20",  --   
	31 => X"20"   --  
  -- ne plus rien modifier en dessous de cette ligne
	);
begin
  do <= mes(to_integer(unsigned(adr)));
end architecture;