Forum Discussion

BCrowell's avatar
BCrowell
Icon for New Contributor rankNew Contributor
2 years ago

Cyclone 10 LP Remote Update Simulation

I am trying to figure out the details on the remote update so I downloaded the example project (Cyclone 10 LP Remote System Upgrade Design Example) and set up a simulation to run rather than just use it on the eval board. However, the remote update core doesn't seem to respond to any of the reads I added with correct data. The relevant data bits are always X's for the reads I did, one to the trigger register and one to the config address register. See the attached screen grab for the waveforms. I am wondering if there is an issue with the simulation model of the core or is there something different that needs to be done to properly read the data from the core?

Thanks

Brad

17 Replies

  • Hi Brad,


    Apologize for the inconveniences. Let me double check again with our internal team and I will try to get back to you the soonest.


    Regards,

    Aiman


  • Hi,


    Sorry for the delay as we are investigating this case.


    After some digging on the IP functional spec, and looking back at the simulation waveform, there are several items to possibly cause the data_out to return X’s:


    The first read on 3’h7 with read_source set to 1. In this case, the IP is trying to read the past status 1 reconfiguration trigger source. This is only available if the current factory configuration comes from a previous application 1 reconfiguration. I suspect this is the reason data_out[4:0] = 5’hX.


    The second read on 3’h4 with read_source set to 0. The IP is trying to read the factory boot address on the configuration device. The output is data_out[25:2] = 24’hX since there is no actual factory image available on the configuration device.


    Regards,

    Aiman


  • BCrowell's avatar
    BCrowell
    Icon for New Contributor rankNew Contributor

    Aiman,

    Thanks for this info. Do you know how the remote update logic obtains the data for those registers? Does it have to read the config flash memory to obtain the register data? Is there a way to simulate that process?

    What registers could I read from in the simulation and get a valid response from? What I am trying to achieve is a baseline for my factory configuration when it comes time to set that up and control the register values to initiate the proper loading of the application configuration.

    Thanks

    Brad

  • Hi,


    Apologize for the delay in response.


    Just some update after further digging,


    We do not support simulation of the remote update IP because it is not feasible to emulate how the IP can perform reconfiguration in simulation environment. This is actually due to the IP works with the hardwired remote update block in the device.


    The IP can be compiled for simulation, but there is no guarantee it will work properly.


    Regards,

    Aiman


  • BCrowell's avatar
    BCrowell
    Icon for New Contributor rankNew Contributor

    Aiman,

    Thanks for this update. It is unfortunate that the core isn't fully simulatable, but does seem to work well enough to understand the interface and how it works.

    Thanks

    Brad

  • Hi,


    We are sorry if this has cause you inconveniences. I will proceed to close this case for now.


    I’m glad that your question has been addressed, I now transition this thread to community support. If you have a new question, feel free to open a new thread to get the support from Intel experts. Otherwise, the community users will continue to help you on this thread. Thank you.