OpenCores
URL https://opencores.org/ocsvn/c16/c16/trunk

Subversion Repositories c16

[/] [c16/] [trunk/] [vhdl/] [uart.vhd] - Blame information for rev 31

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 jsauermann
library IEEE;
2
use IEEE.STD_LOGIC_1164.ALL;
3
use IEEE.STD_LOGIC_ARITH.ALL;
4
use IEEE.STD_LOGIC_UNSIGNED.ALL;
5
 
6
--  Uncomment the following lines to use the declarations that are
7
--  provided for instantiating Xilinx primitive components.
8
--library UNISIM;
9
--use UNISIM.VComponents.all;
10
 
11
entity uart is
12
        PORT(   CLK_I     : in std_logic;
13 9 jsauermann
                        RST_I     : in std_logic;
14 2 jsauermann
                        CE_16     : in std_logic;
15
 
16
                        TX_DATA   : in std_logic_vector(7 downto 0);
17
                        TX_FLAG   : in std_logic;
18
                        TX_SEROUT : out std_logic;
19
                        TX_FLAGQ  : out std_logic;
20
 
21
                        RX_SERIN  : in  std_logic;
22
                        RX_DATA   : out std_logic_vector(7 downto 0);
23
                        RX_FLAG   : out std_logic
24
                );
25
end uart;
26
 
27
architecture Behavioral of uart is
28
 
29
        COMPONENT uart_tx
30
        PORT(   CLK_I      : IN  std_logic;
31 9 jsauermann
                        RST_I      : IN  std_logic;
32 2 jsauermann
                        CE_16      : IN  std_logic;
33
                        DATA       : IN  std_logic_vector(7 downto 0);
34
                        DATA_FLAG  : IN  std_logic;
35
                        SER_OUT    : OUT std_logic;
36
                        DATA_FLAGQ : OUT std_logic
37
                );
38
        END COMPONENT;
39
 
40
        COMPONENT uart_rx
41
        PORT(   CLK_I     : IN std_logic;
42 9 jsauermann
                        RST_I     : IN std_logic;
43 2 jsauermann
                        CE_16     : IN std_logic;
44
                        SER_IN    : IN std_logic;
45
 
46
                        DATA      : OUT std_logic_vector(7 downto 0);
47
                        DATA_FLAG : OUT std_logic
48
                );
49
        END COMPONENT;
50
 
51
begin
52
 
53
        tx: uart_tx
54
        PORT MAP(       CLK_I      => CLK_I,
55 9 jsauermann
                                RST_I      => RST_I,
56 2 jsauermann
                                CE_16      => CE_16,
57
                                DATA       => TX_DATA,
58
                                DATA_FLAG  => TX_FLAG,
59
 
60
                                SER_OUT    => TX_SEROUT,
61
                                DATA_FLAGQ => TX_FLAGQ
62
                        );
63
 
64
        rx: uart_rx
65
        PORT MAP(       CLK_I     => CLK_I,
66 9 jsauermann
                                RST_I     => RST_I,
67 2 jsauermann
                                CE_16     => CE_16,
68
                                DATA      => RX_DATA,
69
                                SER_IN    => RX_SERIN,
70
                                DATA_FLAG => RX_FLAG
71
                        );
72
 
73
end Behavioral;

powered by: WebSVN 2.1.0

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