4
4
-- MODULE: UART LOOPBACK EXAMPLE TOP MODULE
5
5
-- AUTHORS: Jakub Cabal <[email protected] >
6
6
-- LICENSE: The MIT License (MIT), please read LICENSE file
7
- -- WEBSITE: https://github.com/jakubcabal/uart_for_fpga
7
+ -- WEBSITE: https://github.com/jakubcabal/uart-for-fpga
8
8
-- ------------------------------------------------------------------------------
9
9
10
10
library IEEE;
@@ -16,52 +16,48 @@ use IEEE.NUMERIC_STD.ALL;
16
16
17
17
entity UART_LOOPBACK is
18
18
Generic (
19
- CLK_FREQ : integer := 50e6 ; -- set system clock frequency in Hz
20
- BAUD_RATE : integer := 115200 ; -- baud rate value
21
- PARITY_BIT : string := " none" -- legal values: "none", "even", "odd", "mark", "space"
19
+ CLK_FREQ : integer := 50e6 ; -- set system clock frequency in Hz
20
+ BAUD_RATE : integer := 115200 ; -- baud rate value
21
+ PARITY_BIT : string := " none" ; -- legal values: "none", "even", "odd", "mark", "space"
22
+ USE_DEBOUNCER : boolean := True -- enable/disable debouncer
22
23
);
23
24
Port (
24
- CLK : in std_logic ; -- system clock
25
- RST_N : in std_logic ; -- low active synchronous reset
25
+ CLK : in std_logic ; -- system clock
26
+ RST : in std_logic ; -- high active synchronous reset
26
27
-- UART INTERFACE
27
- UART_TXD : out std_logic ;
28
- UART_RXD : in std_logic ;
29
- -- DEBUG INTERFACE
30
- BUSY : out std_logic ;
31
- FRAME_ERR : out std_logic
28
+ UART_TXD : out std_logic ;
29
+ UART_RXD : in std_logic
32
30
);
33
31
end UART_LOOPBACK ;
34
32
35
33
architecture FULL of UART_LOOPBACK is
36
34
37
- signal data : std_logic_vector (7 downto 0 );
38
- signal valid : std_logic ;
39
- signal reset : std_logic ;
35
+ signal data : std_logic_vector (7 downto 0 );
36
+ signal valid : std_logic ;
40
37
41
38
begin
42
39
43
- reset <= not RST_N;
44
-
45
40
uart_i : entity work .UART
46
41
generic map (
47
- CLK_FREQ => CLK_FREQ,
48
- BAUD_RATE => BAUD_RATE,
49
- PARITY_BIT => PARITY_BIT
42
+ CLK_FREQ => CLK_FREQ,
43
+ BAUD_RATE => BAUD_RATE,
44
+ PARITY_BIT => PARITY_BIT,
45
+ USE_DEBOUNCER => USE_DEBOUNCER
50
46
)
51
47
port map (
52
48
CLK => CLK,
53
- RST => reset ,
49
+ RST => RST ,
54
50
-- UART INTERFACE
55
51
UART_TXD => UART_TXD,
56
52
UART_RXD => UART_RXD,
57
53
-- USER DATA OUTPUT INTERFACE
58
- DATA_OUT => data,
59
- DATA_VLD => valid,
60
- FRAME_ERROR => FRAME_ERR ,
54
+ DOUT => data,
55
+ DOUT_VLD => valid,
56
+ FRAME_ERROR => open ,
61
57
-- USER DATA INPUT INTERFACE
62
- DATA_IN => data,
63
- DATA_SEND => valid,
64
- BUSY => BUSY
58
+ DIN => data,
59
+ DIN_VLD => valid,
60
+ BUSY => open
65
61
);
66
62
67
63
end FULL ;
0 commit comments