- renamed signal names

- receiver commands:
  packet request : sets fill pointer to next packet from queue
  packet free       : removes packet from queue
- added pkt_done flag (TX idle)
- transmitter commands:
  packet alloc       : request ram for packet
  packet commit   : sends packet

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@830 cc03376c-175c-47c8-b038-4cd826a8556b
This commit is contained in:
2010-03-26 09:45:44 +00:00
parent 38a95c85dd
commit 2989bb688f
3 changed files with 165 additions and 51 deletions
+142 -36
View File
@@ -178,7 +178,7 @@ STIMULUS: process
-- set alloc request
CYC_I <= '1';
wait until rising_edge(CLK) and SRDY_O = '1';
DAT_I <= X"0002_0000";
DAT_I <= X"0200_0000";
STB_I <= '1';
WE_I <= '1';
ADDR_I <= X"0000_0000";
@@ -199,7 +199,7 @@ STIMULUS: process
STB_I <= '0';
wait until rising_edge(CLK) and ACK_O = '1';
wait until rising_edge(CLK);
if DAT_O_reg(17) = '0' then
if DAT_O_reg(25) = '0' then
exit check_bsy;
end if;
end loop;
@@ -280,6 +280,16 @@ STIMULUS: process
wait until rising_edge(CLK) and ACK_O = '1';
wait until rising_edge(CLK);
-- set packet request
CYC_I <= '1';
wait until rising_edge(CLK) and SRDY_O = '1';
DAT_I <= X"0001_0000";
STB_I <= '1';
WE_I <= '1';
ADDR_I <= X"0000_0000";
wait until rising_edge(CLK) and SRDY_O = '1';
STB_I <= '0';
WE_I <= '0';
emac_action <= emac_read;
-- Read RX data
@@ -321,7 +331,7 @@ STIMULUS: process
-- set free request
CYC_I <= '1';
wait until rising_edge(CLK) and SRDY_O = '1';
DAT_I <= X"0001_0000";
DAT_I <= X"0002_0000";
STB_I <= '1';
WE_I <= '1';
ADDR_I <= X"0000_0000";
@@ -341,78 +351,174 @@ STIMULUS: process
loop_back_en <= '1';
emac_alloc (1536);
emac_write (1536);
emac_read (0);
emac_free;
emac_alloc (72);
emac_write (72);
emac_alloc (1536);
emac_write (1536);
emac_alloc (104);
emac_write (104);
emac_read (0);
emac_free;
emac_alloc (1536);
emac_write (1536);
emac_read (0);
emac_free;
emac_alloc (1536);
emac_write (1536);
emac_alloc (104);
emac_write (104);
emac_read (0);
emac_free;
emac_alloc (1536);
emac_write (1536);
emac_alloc (72);
emac_write (72);
emac_read (0);
emac_free;
emac_alloc (1536);
emac_write (1536);
emac_alloc (82);
emac_write (82);
emac_alloc (82);
emac_write (82);
emac_read (0);
emac_free;
emac_alloc (1536);
emac_write (1536);
emac_read (0);
emac_free;
emac_alloc (64);
emac_write (64);
emac_alloc (72);
emac_write (72);
emac_alloc (104);
emac_write (104);
emac_alloc (82);
emac_write (82);
emac_alloc (72);
emac_write (72);
emac_read (0);
emac_free;
emac_alloc (512);
emac_write (512);
emac_alloc (104);
emac_write (104);
emac_read (0);
emac_free;
emac_alloc (1536);
emac_write (1536);
emac_alloc (72);
emac_write (72);
emac_alloc (104);
emac_write (104);
emac_alloc (82);
emac_write (82);
emac_read (0);
emac_free;
emac_alloc (65);
emac_write (65);
emac_alloc (72);
emac_write (72);
emac_alloc (104);
emac_write (104);
emac_read (0);
emac_free;
emac_alloc (66);
emac_write (66);
emac_read (0);
emac_free;
emac_alloc (67);
emac_write (67);
emac_read (0);
emac_free;
emac_alloc (512);
emac_write (64);
emac_alloc (128);
emac_write (128);
emac_read (0);
emac_free;
emac_read (0);
emac_free;
emac_read (0);
emac_free;
emac_read (0);
emac_free;
-- emac_alloc (1536);
-- emac_write (1536);
-- emac_read (0);
-- emac_free;
--
-- emac_alloc (1536);
-- emac_write (1536);
-- emac_read (0);
-- emac_free;
--
-- emac_alloc (1536);
-- emac_write (1536);
-- emac_read (0);
-- emac_free;
--
-- emac_alloc (1536);
-- emac_write (1536);
-- emac_read (0);
-- emac_free;
--
-- emac_alloc (1536);
-- emac_write (1536);
-- emac_read (0);
-- emac_free;
--
-- emac_alloc (1536);
-- emac_write (1536);
-- emac_read (0);
-- emac_free;
--
-- emac_alloc (1536);
-- emac_write (1536);
-- emac_read (0);
-- emac_free;
--
-- emac_alloc (64);
-- emac_write (64);
-- emac_read (0);
-- emac_free;
--
-- emac_alloc (512);
-- emac_write (512);
-- emac_read (0);
-- emac_free;
--
-- emac_alloc (1536);
-- emac_write (1536);
-- emac_read (0);
-- emac_free;
--
-- emac_alloc (65);
-- emac_write (65);
-- emac_read (0);
-- emac_free;
--
-- emac_alloc (66);
-- emac_write (66);
-- emac_read (0);
-- emac_free;
--
-- emac_alloc (67);
-- emac_write (67);
-- emac_read (0);
-- emac_free;
--
-- emac_alloc (512);
-- emac_write (64);
--
-- emac_alloc (128);
-- emac_write (128);
-- emac_read (0);
-- emac_free;
wait;