Import FPV model : Failed to read 4 bytes from address 0

I'm using ADS Version: 2024.b-1 and have a project where I can run and debug code using the ADS suppled Coretex-A720 FPV model.  I would like to run / debug the same code on a different FPV model not supplied under the ADS install.

I followed the instructions here to create a model connection

https://developer.arm.com/documentation/107644/0100/Using-Arm-Development-Studio-to-debug-Fast-Models-systems/Import-the-FVP-into-Arm-Development-Studio

The error I run into is in the Disassembly: window I see 

"EL1N:0x0000000000000000 : Failed to read 4 bytes from address EL1N:0x0000000000000000"

Any tips or advice would be much appreciated.  Thanks.

  • Hello, I have moved your query to the Arm Development Studio dedicated forum.

    I don't know which FVP you are using, is memory implemented at this address?

    I see it is address 0x0. Perhaps this is ITCM memory that is not yet enabled?

    If you connect without any code loaded, can you access this address?

    Can you access it at higher exception levels (EL3:0x0).

    If the FVP you are using is public, can you advise which you are using?

    • Hi

      My name is Stephen and I work at Arm.

      To follow-up on my colleague Ronan's suggestions, if the Debugger is connected to your model via Iris, then you can get diagnostic logging information by adding the "--iris-log" (or -i") option to the Model Parameters field in the connection dialog.

      FVP_Base_Cortex-A720 --help
      shows
      -i, --iris-log                 Iris log level (may be specified multiple times), example: -ii for level 2

      When I try this with FVP_Base_Cortex-A720, I see a lot of initial connection logging in the Target Console.
      Once that settled down:

      memory set EL1N:0x0 32 0xDEADBEEF

      reported:

      IrisGI:REQ:2599: rddi_debug -> component.FVP_Base_Cortex_A720.cluster0.cpu0 memory_write(instId:44 /*0x2cu*/, spaceId:2, address:0, data:[0xdeadbeef], byteWidth:4, count:1)
      IrisGI:RES:2599: rddi_debug <- result={}
      IrisGI:REQ:2600: rddi_debug -> component.FVP_Base_Cortex_A720.cluster0.cpu0 memory_read(instId:44 /*0x2cu*/, spaceId:2, address:0, byteWidth:4, count:1)
      IrisGI:RES:2600: rddi_debug <- result={data:[0xdeadbeef]}

      followed by the Debugger reading more data to update the (larger) Disassembly view:

      IrisGI:REQ:2605: rddi_debug -> component.FVP_Base_Cortex_A720.cluster0.cpu0 memory_read(instId:44 /*0x2cu*/, spaceId:0, address:0, byteWidth:4, count:128 /*0x80u*/)
      IrisGI:RES:2605: rddi_debug <- result={data:[0xe800e800deadbeef, 0xe800e800e7ff0010, 0xe800e800e7ff0010, 0xe800e800e7ff0010, 0xe800e800e7ff0010, 0xe800e800e7ff0010, 0xe800e800e7ff0010, 0xe800e800e7ff0010, 0xe800e800e7ff0010,
      :
      0xe800e800e7ff0010, 0xe800e800e7ff0010, 0xe800e800e7ff0010, 0xe800e800e7ff0010, 0xe800e800e7ff0010, 0xe800e800e7ff0010, 0xe800e800e7ff0010]}


      Please could you try the same?


      Furthermore, the Arm-supplied FVP_Base_Cortex-A* family models all have secure memory.  For all the Examples provide in Arm DS, this is disabled with:

      -C bp.secure_memory=false

      Maybe you could try that too?

      Stephen

      • Hi again Brad,

        Sorry your message got filtered by the moderation software, it can be very sensitive. Don't worry, no harm done.

        You can use <FVP> --list-params > params.txt to see all the available parameters, bp.secure.memory may be something slightly different on your FVP.

        Looking at the log, I see a lot of REQuests and RESponses, which are likely the debugger detecting the individual blocks inside the FVP.

        It is worrying that there is no log after trying to perform the write... this says to me that the debugger never manages to pass that request to the model (this log is from the FVPs point of view).

        This may be a difficult one to solve in a public forum... you may need to raise an official (private) support case from the Support section below. You can reference this thread so that the team have some history.

        0