Forum Discussion

NikoR's avatar
NikoR
Icon for Occasional Contributor rankOccasional Contributor
5 years ago
Solved

Warning: "No matching role found for nios2_gen2_0_custom_instruction_master_multi_xconnect"

The attached .qsys file contains a Nios2 with a "Floating Point Hardware 2" connected.

When generating I get the following warnings:

Warning: roots_test: "No matching role found for nios2_gen2_0_custom_instruction_master_multi_xconnect:ci_slave:ci_slave_ipending (ipending)"

Warning: roots_test: "No matching role found for nios2_gen2_0_custom_instruction_master_multi_xconnect:ci_slave:ci_slave_estatus (estatus)"

What does it mean?

What is the severity of these warnings?

Any way of fixing the cause or suppress the warning?

Best regards

Nikolay

  • Hi @Nikolay_Rognlien,

    Thank you for your patients, hope you are doing well.
    After some investigation, per my understanding it seem that those interface (i.e. instruction pending and estatus) seems to be belonging to the master component, and possible just some signal mismatched between the master and slave.
    Hence I would assume that the warning are just indicating that those interface in master are not being mapped to any slave, which we might be able to safely ignore.
    Just to understand further, what are the purpose of using the FPH2 in the design?

    Warm Regards.

7 Replies

  • Hi @Nikolay_Rognlien,

    The warning serves as a reminder that there could be an issues with the RAM initialization for square root function.
    As for the way to remove the warning, you can either uncheck the root options if target device are Max 10. For details explanation you can refer to the FPH2 User guide. (https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/ug/archives/ug_fph2-16.0.pdf?wapkw=floating%20point%20hardware)

    Warm Regards.

    • NikoR's avatar
      NikoR
      Icon for Occasional Contributor rankOccasional Contributor

      Hi. Thanks for the response.

      However, I don't believe you are answering the question...

      The root function is required so disabling is not an option, and we make sure that the initialization conditions are met for Max10.

      I'm asking about these warning messages that occur during generation which I believe are not related to the initialization..:

      Warning: roots_test: "No matching role found for nios2_gen2_0_custom_instruction_master_multi_xconnect:ci_slave:ci_slave_ipending (ipending)"

      Warning: roots_test: "No matching role found for nios2_gen2_0_custom_instruction_master_multi_xconnect:ci_slave:ci_slave_estatus (estatus)"

      What do they mean?

      What is the severity of these warnings?

      Any way of fixing the cause or suppress the warning?

      Best regards

      Nikolay

  • Hi @Nikolay_Rognlien,

    The steps mention above are for the warning shown in the qsys 'Root fuction requires ram initialization'. Apologies as missed out the second part of the question.
    For the mention warning during HDL generation, I am suspecting that you are missing the CRC custom instruction. (as shown in page 51)
    For the custom instruction creation, perhaps you can refer to the design example here. (https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/ug/ug_nios2_custom_instruction.pdf#page=23&zoom=100,0,0)

    Warms Regards

    • NikoR's avatar
      NikoR
      Icon for Occasional Contributor rankOccasional Contributor

      Hi.

      Adding the crc custom instruction as described in chapter4 and then shown in figure 23 on page 51 did not help.

      I also played with adding a custom_instruction_slave_translator between Nios and the fphw2 but that only introduced more similarwarnings.

      It seems like the hint here is the _multi_xconnect which is an invisible thing in between somewhere...

      Any more ideas?

      /Nikolay

      • BoonBengT_Altera's avatar
        BoonBengT_Altera
        Icon for Moderator rankModerator

        Hi @Nikolay_Rognlien,

        Thank you for your patients, hope you are doing well.
        After some investigation, per my understanding it seem that those interface (i.e. instruction pending and estatus) seems to be belonging to the master component, and possible just some signal mismatched between the master and slave.
        Hence I would assume that the warning are just indicating that those interface in master are not being mapped to any slave, which we might be able to safely ignore.
        Just to understand further, what are the purpose of using the FPH2 in the design?

        Warm Regards.