[source]

Entity uart_fifo

CLOCK_FREQBAUDRATEADD_INPUT_SYNCHRONIZERSTX_MIN_DEPTHTX_ESTATE_BITSRX_MIN_DEPTHRX_FSTATE_BITSFLOWCONTROLSWFC_XON_CHARSWFC_XON_TRIGGERSWFC_XOFF_CHARSWFC_XOFF_TRIGGERClockstd_logicResetstd_logicTX_putstd_logicTX_Data[7 downto 0]std_logic_vectorRX_gotstd_logicUART_RXstd_logicUART_CTSstd_logicTX_Fullstd_logicTX_EmptyStatestd_logic_vector[imax ( 0 , TX_ESTATE_BITS - 1 ) downto 0]RX_Validstd_logicRX_Datastd_logic_vector[7 downto 0]RX_FullStatestd_logic_vector[imax ( 0 , RX_FSTATE_BITS - 1 ) downto 0]RX_Overflowstd_logicUART_TXstd_logicUART_RTSstd_logic

Block Diagram of uart_fifo

Small FIFO s are included in this module, if larger or asynchronous transmit / receive FIFOs are required, then they must be connected externally.

old comments:

UART BAUD rate generator bclk = bit clock is rising bclk_x8 = bit clock times 8 is rising

Generics

Name

Type

Default

Description

CLOCK_FREQ

FREQ

Communication Parameters

BAUDRATE

BAUD

ADD_INPUT_SYNCHRONIZERS

boolean

TRUE

TX_MIN_DEPTH

positive

16

Buffer Dimensioning

TX_ESTATE_BITS

natural

0

RX_MIN_DEPTH

positive

16

RX_FSTATE_BITS

natural

0

FLOWCONTROL

T_IO_UART_FLOWCONTROL_KIND

UART_FLOWCONTROL_NONE

Flow Control

SWFC_XON_CHAR

std_logic_vector ( 7 downto 0 )

x"11"

^Q

SWFC_XON_TRIGGER

real

0.0625

SWFC_XOFF_CHAR

std_logic_vector ( 7 downto 0 )

x"13"

^S

SWFC_XOFF_TRIGGER

real

0.75

Ports

Name

Type

Direction

Description

Clock

std_logic

in

Reset

std_logic

in

TX_put

std_logic

in

FIFO interface

TX_Data

std_logic_vector

in

TX_Full

std_logic

out

TX_EmptyState

std_logic_vector

out

RX_Valid

std_logic

out

RX_Data

std_logic_vector

out

RX_got

std_logic

in

RX_FullState

std_logic_vector

out

RX_Overflow

std_logic

out

UART_TX

std_logic

out

External pins

UART_RX

std_logic

in

UART_RTS

std_logic

out

UART_CTS

std_logic

in