signal internal_reset : std_logic;
signal reset_counter : std_logic_vector(16 downto 0);
- signal reg_RXD : std_logic_vector(15 downto 0);
+ signal reg_RXD : std_logic_vector(15 downto 0);
signal reg_RX_DV : std_logic;
signal reg_RX_ER : std_logic;
-
+ signal reg_TXD : std_logic_vector(15 downto 0);
+ signal reg_TX_EN : std_logic;
begin
fifo_rd_en_m <= tx_allow and not fifo_empty_m;
fifo_wr_en_m <= MED_DATAREADY_IN and buf_MED_READ_OUT;
fifo_din_m <= "00" & MED_DATA_IN;
- TLK_TXD <= fifo_dout_m(15 downto 0);
- TLK_TX_EN <= last_fifo_rd_en_m;
+ TLK_TXD <= reg_TXD;
+ TLK_TX_EN <= reg_TX_EN;
+
+ process(TLK_CLK)
+ begin
+ if rising_edge(TLK_CLK) then
+ if internal_reset = '1' then
+ reg_TXD <= (others => '0');
+ reg_TX_EN <= '0';
+ else
+ reg_TXD <= fifo_dout_m(15 downto 0);
+ reg_TX_EN <= last_fifo_rd_en_m;
+ end if;
+ end if;
+ end process;
process(TLK_CLK)
begin