From 0af5d4e58c2d9c288f7379ac233eb44439f3e7ed Mon Sep 17 00:00:00 2001 From: Jens Ahrensfeld Date: Sat, 10 Apr 2010 10:15:56 +0000 Subject: [PATCH] - reserved 32 byte window for RX/TX-Data at offset 0x20..0x3C Committed on the Free edition of March Hare Software CVSNT Server. Upgrade to CVS Suite for more features and support: http://march-hare.com/cvsnt/ git-svn-id: http://moon:8086/svn/vhdl/trunk@908 cc03376c-175c-47c8-b038-4cd826a8556b --- lib/emac/src/emac_top_jb.vhd | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/lib/emac/src/emac_top_jb.vhd b/lib/emac/src/emac_top_jb.vhd index 17b3bff..17d6537 100644 --- a/lib/emac/src/emac_top_jb.vhd +++ b/lib/emac/src/emac_top_jb.vhd @@ -123,9 +123,7 @@ registers_write: tx_ctrl_in.tx_size <= DAT_I(15 downto 0); -- 0x0010 - when "0100" => - tx_din_vld <= '1'; - tx_din <= DAT_I; + -- Gap -- 0x0014 -- Gap @@ -142,7 +140,13 @@ registers_write: rx_ctrl_in.mac_addr(4) <= DAT_I(31 downto 24); rx_ctrl_in.mac_addr(5) <= DAT_I(23 downto 16); - when others => null; + -- 0x0020 .. 0x003C + -- Window for TX-Data (8 words) + -- For cached burst access, this must be greater or equal to D-Cache line size + when others => + tx_din_vld <= '1'; + tx_din <= DAT_I; + end case; end if; end if; @@ -195,8 +199,7 @@ registers_read: DAT_O <= X"0000" & tx_ctrl_out.tx_size; -- 0x0010 - when "0100" => - rx_ctrl_in.pkt_read_en <= '1'; + -- Gap -- 0x0014 -- Gap @@ -211,7 +214,12 @@ registers_read: ACK_O <= '1'; DAT_O <= rx_ctrl_in.mac_addr(4) & rx_ctrl_in.mac_addr(5) & X"0000"; - when others => null; + -- 0x0020 .. 0x003C + -- Window for RX-Data (8 words) + -- For cached burst access, this must be greater or equal to D-Cache line size + when others => + rx_ctrl_in.pkt_read_en <= '1'; + end case; end if; end if;