]> jspc29.x-matter.uni-frankfurt.de Git - trbnet.git/commitdiff
*** empty log message ***
authorhadeshyp <hadeshyp>
Wed, 5 Aug 2009 17:07:08 +0000 (17:07 +0000)
committerhadeshyp <hadeshyp>
Wed, 5 Aug 2009 17:07:08 +0000 (17:07 +0000)
trb_net16_hub_ipu_logic.vhd

index d0746217252de55ec274e7337676d4ff83135cfa..828d2255a4b8d8cc6ecf5ccddf706b7fbf9ecfae 100644 (file)
@@ -667,7 +667,7 @@ begin
   gen_got_trm : process(CLK)
     begin
       if rising_edge(CLK) then
-        if RESET = '1' or send_reply_trm = '1' or locked = '0' then
+        if RESET = '1' or locked = '0' then
           got_trm <= (others => '0');
         else
           got_trm <= got_trm or locking_point or (reply_reading_F3 and reg_current_reply_reading_TRM)
@@ -715,7 +715,7 @@ begin
     begin
       if rising_edge(CLK) then
         if RESET = '1' or reply_data_counter_reset = '1' then
-          reply_data_counter <= (others => '1');
+          reply_data_counter <= (others => '0');
         elsif last_comb_REPLY_POOL_DATAREADY = '1' and (packet_counter = c_F0 or packet_counter = c_F2) then
           reply_data_counter <= reply_data_counter + 1;
         end if;
@@ -980,17 +980,15 @@ begin
           end if;
 
           --if number of announced words is reached and F1 or F3 is written, then care about padding
-          if reply_data_counter = current_point_length and packet_counter(0) = '1' and comb_REPLY_muxed_DATAREADY = '1' then
+          if (reply_data_counter = current_point_length and packet_counter(0) = '1' and comb_REPLY_muxed_DATAREADY = '1')
+              or or_all(current_reply_reading_TRM and reply_arbiter_result) = '1' then
             reply_arbiter_CLK_EN <= '1';
             reply_data_counter_reset <= '1';
             --either padding or trm follows. So: start reading in any case.
             start_read_padding <= reply_arbiter_result;
-          elsif or_all(current_reply_reading_TRM and reply_arbiter_result) = '1' then
-            reply_data_counter_reset <= '1';
-            reply_arbiter_CLK_EN <= '1';
           end if;
 
-          if send_reply_trm = '1' then
+          if send_reply_trm = '1'  then
             if packet_counter /= c_H0 then
               next_state <= SEND_PADDING;
             else