Community
cancel
Showing results for 
Search instead for 
Did you mean: 
GDagi1
New Contributor I
250 Views

Avalon-MM slave shows constant high reg_busy signal (TSE IP).

Hi all,

 

I am currently using the Triple-Speed Ethernet IP and have read in order to properly use it I need to first configure the register space. In order to do that, believe I need to use the MAC Control Interface Signals here.

 

I have my code implemented similarly to that included in the testbench but am seeing the signal "reg_busy" stay a 1. The IP User Guide states the reg_busy signal is "asserted during register read / write access and deasserted when the current access completes." However, my simulation never sees the read / write signals go high.

 

My reg_busy signal is only mentioned a few times:

1. As a wire declaration: "wire reg_busy;"

2. In the QSYS instantiation ".eth_tse_0_control_port_waitrequest     (reg_busy),"

3. For some comparisons to proceed in my state machine, and to give values to reg_busy_reg (both of these examples are the same as in the TSE testbench).

 

I've attached a picture of my simulation.

 

Thanks in advance for helping.

0 Kudos
5 Replies
Deshi_Intel
Moderator
115 Views

HI,

 

Your understanding is correct that user needs to configure TSE MAC and PHY register first to initialize the IP core before you can use it.

 

Regarding reg_busy :

  • This is output status signal from TSE MAC to user logic. You shouldn't assign any value to it as it's output status signal, not input signal.
  • I am sorry for the confusion in the TSE user guide doc but what it means is - it's an indicator to tell user whether TSE MAC is busy processing something or not. When it's asserted, user shouldn't send further command to TSE MAC anymore. user command should only to sent when reg_busy is low indicating TSE MAC is ready to accept user command now.

 

Regarding why reg_busy never deasserted low :

 

Thanks.

 

Regards,

dlim

GDagi1
New Contributor I
115 Views

Hi DeshiL and thanks for your response.

 

I am still unsure why reg_busy is still a ‘0’ despite red_rd and reg_wr also ‘0’. I know the reg config hasn’t completed because my reg_config_done signal is still a ‘0’.

Deshi_Intel
Moderator
115 Views

HI,

 

I worry whole TSE IP is still stuck. That could explained why it can't function properly.

 

I am not even sure whether it's out from reset properly or not.

 

You may want to checkout following first

  • Use the example design to run one time sim to get an idea of expected signal behaviour
  • then back to your own design, check the TSE clocking, reset and also your reg_config_done. Let the sim run longer to see if there is any difference. You can also compare the sim run time with working example design as reference.

 

Thanks.

 

Regards,

dlim

 

Deshi_Intel
Moderator
115 Views

HI,

 

I am closing this case as well as per my feedback in another forum case while we moved all debug discussion into Andy's case.

 

Thanks.

 

Regards,

dlim

MRigh4
Beginner
111 Views

Hello, I have the same problem, could you post the link where the discussion continued?

Thank you,

Marco