aboutsummaryrefslogtreecommitdiffstats
path: root/doc/using/UART_srcs/vhpi/tty_pkg.vhd
blob: 99e3a347f9cd36206099e2be9f3ff5b9b628ee0c (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
--tty_pkg.vhd
library ieee;
use ieee.std_logic_1164.all;
use ieee.numeric_std.all;

package tty_pkg is

  function to_integer( s: std_logic) return integer;  
  function to_std_logic( s : integer ) return std_logic;
  
  function tty_open (portn : integer) return integer;
  attribute foreign of tty_open :
    function is "VHPIDIRECT tty_open";

  function read_data ( dummy: integer) return integer;
  attribute foreign of read_data :
    function is "VHPIDIRECT read_data"; 

  function read_enable ( dummy: integer) return integer;
  attribute foreign of read_enable :
    function is "VHPIDIRECT read_enable"; 

  procedure write_data ( data: in integer);
    attribute foreign of write_data :
    procedure is "VHPIDIRECT write_data"; 

end;


package body tty_pkg is

  function to_integer( s : std_logic ) return integer is
  begin
    if s = '1' then
      return 1;
    else
      return 0;
    end if;
  end function;

  function to_std_logic( s : integer ) return std_logic is
  begin
    if s > 0 then
      return '1';
    else
      return '0';
    end if;
  end function;

  
  function tty_open (portn : integer) return integer is
  begin
    assert false report "VHPI" severity failure;
  end tty_open;
 
  function read_data (dummy: integer) return  integer is
  begin
    assert false report "VHPI" severity failure;
  end read_data;  
 
   function read_enable (dummy: integer) return  integer is
  begin
    assert false report "VHPI" severity failure;
  end read_enable;  
  
  procedure write_data ( data: in integer) is
  begin
    assert false report "VHPI" severity failure;
  end write_data; 
end tty_pkg;