- bugfix: interframe gap counter was not effective
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@875 cc03376c-175c-47c8-b038-4cd826a8556b
This commit is contained in:
@@ -413,7 +413,6 @@ interframe_gap_counter:
|
|||||||
ifg_idle <= '0';
|
ifg_idle <= '0';
|
||||||
if reset_en = '1' or piso32_dout_vld = '1' then
|
if reset_en = '1' or piso32_dout_vld = '1' then
|
||||||
ifg_cnt <= ifg_cnt_t'high;
|
ifg_cnt <= ifg_cnt_t'high;
|
||||||
ifg_idle <= '1';
|
|
||||||
elsif ifg_cnt /= 0 then
|
elsif ifg_cnt /= 0 then
|
||||||
ifg_cnt <= ifg_cnt - 1;
|
ifg_cnt <= ifg_cnt - 1;
|
||||||
else
|
else
|
||||||
@@ -494,13 +493,15 @@ xfer_state:
|
|||||||
xfer_sn <= xfer_idle;
|
xfer_sn <= xfer_idle;
|
||||||
|
|
||||||
when xfer_idle =>
|
when xfer_idle =>
|
||||||
if cmd_fifo_empty = '0' and piso32_din_rdy = '1' then
|
if cmd_fifo_empty = '0' then
|
||||||
xfer_sn <= xfer_start;
|
xfer_sn <= xfer_start;
|
||||||
end if;
|
end if;
|
||||||
|
|
||||||
when xfer_start =>
|
when xfer_start =>
|
||||||
xfer_set <= '1';
|
xfer_set <= '1';
|
||||||
xfer_sn <= xfer_preamble0;
|
if cmd_fifo_empty = '0' and ifg_idle = '1' then
|
||||||
|
xfer_sn <= xfer_preamble0;
|
||||||
|
end if;
|
||||||
|
|
||||||
when xfer_preamble0 =>
|
when xfer_preamble0 =>
|
||||||
preamble_addr <= 0;
|
preamble_addr <= 0;
|
||||||
@@ -523,8 +524,6 @@ xfer_state:
|
|||||||
piso32_din_vld <= xfer_bsy;
|
piso32_din_vld <= xfer_bsy;
|
||||||
xfer_en <= '1';
|
xfer_en <= '1';
|
||||||
if xfer_bsy = '0' then
|
if xfer_bsy = '0' then
|
||||||
uncommit_en <= '1';
|
|
||||||
xfer_free_en <= '1';
|
|
||||||
xfer_sn <= xfer_crc;
|
xfer_sn <= xfer_crc;
|
||||||
end if;
|
end if;
|
||||||
|
|
||||||
@@ -537,9 +536,9 @@ xfer_state:
|
|||||||
end if;
|
end if;
|
||||||
|
|
||||||
when xfer_finish =>
|
when xfer_finish =>
|
||||||
if ifg_idle = '0' then
|
uncommit_en <= '1';
|
||||||
xfer_sn <= xfer_idle;
|
xfer_free_en <= '1';
|
||||||
end if;
|
xfer_sn <= xfer_idle;
|
||||||
|
|
||||||
when others =>
|
when others =>
|
||||||
xfer_sn <= xfer_idle;
|
xfer_sn <= xfer_idle;
|
||||||
|
|||||||
Reference in New Issue
Block a user