Visible to Intel only — GUID: moz1711592590356
Ixiasoft
Visible to Intel only — GUID: moz1711592590356
Ixiasoft
6. Troubleshooting Issues When Migrating Software from Intel® Simics® to Hardware
The following table describes a list of issues that were identified when switching from the simulation model of the Agilex™ 5 device and virtual platform to a real hardware platform, along with the symptom of the failure and the root cause. The table also indicates the reason why the issues could not be caught on the Simulation model and how they can be fixed in the HPS software. The table provides additional information, such as if the issue is related to the HPS booting flow or not.
For Intel® Simics® users, the information in this table is helpful to identify the areas that may not be exercised in the model and those that will require a special attention during the HPS software development before transitioning to real hardware.
Issue observed during software bring-up in hardware | Is the issue related to booting? | Root Cause | Why is the issue not seen in the Intel® Simics® Model? | Fix in the Software |
---|---|---|---|---|
The DDR access fails when trying to boot in hardware | Yes | CCU and MPFE are not initialized before accessing the DDR. | Intel® Simics® does not support CCU and MPFE. It supports only the register model. | Configure CCU and MPFE registers correctly before accessing DDR. |
Booting with SMMU enabled fails or ADMA error seen when booting up | Yes | SMMU is not configured correctly. | For Versions 24.1 or earlier, Intel® Simics® does not support any instances of SMMU. For Versions 24.2 and later, the model includes SMMU support. |
Implement one of the following solutions:
|
The DDR and other peripherals' access fails when trying to boot in hardware | Yes | Firewall registers are not configured to allow secure and non-secure transactions as per the software state. | Firewall is not supported. Only the register model is available in Intel® Simics® . | Configure the software firewall for secure and non-secure transactions. |
PSS peripherals are not functional. For example, USB and Ethernet |
Yes | Clock manager's main and peripheral PLLs are not configured. | In Intel® Simics® , a majority of PSS peripherals are not driven by the clock and power of the target system. Timing critical peripherals (TSN, timer, and CPU) are driven with fixed clock as defined by the target system. | Configure the clock and power manager registers to supply the correct clock and power to the peripherals during the initial stage of boot as per hardware architectural specification (HAS). |
SDMMC device access fails. (Applicable only if the boot source is SDMMC) |
Yes | SDMMC voltage-level registers are not configured. | Intel® Simics® does not model the voltage-level details. | Configure SDMMC voltage-signaling register as per the HAS. |
Hardware Coherency: Without flushing cache, external initiator agents (DMA and TCU) do not see the same view of memory as core. For example, DMA descriptor created is in cache and DMA encounters invalid DMA descriptor. | No | Cache not flushed to maintain the hardware coherency. | Intel® Simics® does not model hardware cache, and for Versions 24.1 or earlier, Intel® Simics® did not support any instances of SMMU. For Versions 24.2 and later, the model includes SMMU support. . |
Implement one of the following solutions:
|
Bad block management, ECC handling, and recovery mechanism feature fails. For example, NAND, DDR. |
No | Not available | Intel® Simics® does not model bad block management, ECC handling, and recovery mechanism. | The software handles the bad block and the NAND host handles the ECC handling. |
USB 2.0: Unable to attach the USB 3.1 device to the USB 2.0 port | No | USB 3.1 device does not support high-speed descriptors. | Intel® Simics® USB 3.1 device is not backward-compatible to connect to the USB 2.0 port (high-speed). | Configure the USB 2.0 host. |
USB 2.0: No full-speed device support | No | USB 1.1 device does not support full-speed descriptors. | Intel® Simics® does not model USB 1.1 devices. | Configure the USB 2.0 host. |
Virtual to physical address translation SMMU-dependent fails. | No | SMMU is not configured before accessing any translation path. | For Versions 24.1 or earlier, Intel® Simics® does not support any instances of SMMU. For Versions 24.2 and later, the model includes SMMU support. |
Configure SMMU as per the HAS. |